Os nós Shell do DataWorks, incluindo nós Shell comuns e nós EMR Shell, integram nativamente o ossutil. Esse recurso permite executar tarefas como upload e download de arquivos, operações em lote e gerenciamento de buckets. Este tópico descreve como usar a ferramenta de linha de comando ossutil em nós Shell e EMR Shell para acessar o OSS.
Visão geral
Os nós Shell do DataWorks, incluindo nós Shell comuns e EMR Shell, integram nativamente a ferramenta de linha de comando do Alibaba Cloud Object Storage Service (OSS), ossutil. Configure o ossutil para acessar o OSS fornecendo credenciais em um arquivo de configuração ou como parâmetros de linha de comando. Para obter mais informações sobre como configurar o ossutil, consulte Configurar o ossutil.
A ferramenta de linha de comando ossutil vem pré-instalada no ambiente do DataWorks. O caminho padrão é /home/admin/usertools/tools/ossutil64. Execute o comando ls -l /home/admin/usertools/tools/ para visualizar a lista de ferramentas neste diretório e confirmar a existência do ossutil64. A figura a seguir mostra um exemplo da saída.

As seções a seguir usam um nó Shell como exemplo para descrever os dois métodos de configuração.
Uso de parâmetros de linha de comando
-
Edite o conteúdo do nó Shell. O código de exemplo abaixo usa o
ossutilpara conectar-se a um endpoint do OSS especificado e listar todos os buckets acessíveis pela conta atual./home/admin/usertools/tools/ossutil64 -e <OSSEndPoint> -i <AccessKeyID> -k <AccessKeySecret> ls -s if [[ $? == 0 ]];then echo "access oss success" else echo "failed" exit 1 fi echo "finished"NotaSubstitua os espaços reservados
OSSEndPoint,AccessKeyIDeAccessKeySecretpelos valores reais. Para mais detalhes sobre os parâmetros, consulte Configurar o ossutil.ImportanteTransmitir uma chave de acesso via parâmetros de linha de comando expõe a chave e gera risco de segurança.
-
Verifique o resultado.
Clique em
, selecione um grupo de recursos serverless e execute a tarefa do nó Shell comum.
Uso de um arquivo de configuração
-
Crie um arquivo de configuração do ossutil e faça upload dele para o OSS.
-
Crie um arquivo de configuração.
Crie um arquivo chamado
myconfig.txtna máquina local. O código de exemplo a seguir mostra o conteúdo do arquivo:[Credentials] language = CH endpoint = <Endpoint> # For example, oss-cn-shanghai.aliyuncs.com accessKeyID = <AccessKeyID> accessKeySecret = <AccessKeySecret>NotaSubstitua os espaços reservados
Endpoint,AccessKeyIDeAccessKeySecretpelo endpoint real do Alibaba Cloud OSS e pela chave de acesso de um usuário RAM com as permissões necessárias. Observação: não coloque os valores dos parâmetros entre aspas. Para mais informações sobre os parâmetros, consulte Configurar o ossutil. -
Faça upload do arquivo de configuração.
Envie o arquivo
myconfig.txtpara o OSS. Para mais informações, consulte Upload simples. -
Obtenha a URL de download.
Na coluna Operation do objeto enviado, clique em Details. No painel exibido, desative a opção Use HTTPS e clique em Copy Object URL.
-
-
Baixe o arquivo de configuração para um grupo de recursos serverless.
Na página Image Management do console do DataWorks, crie uma imagem personalizada para baixar o arquivo de configuração em um grupo de recursos serverless.
-
Crie uma imagem.
Faça login no console do DataWorks e mude para a região desejada. No painel de navegação à esquerda, clique em Image Management. Na página Image Management, clique na aba Custom Image e, em seguida, clique em Create Image. No painel exibido, configure os parâmetros conforme descrito abaixo:
Parâmetro
Valor de exemplo
Image Name
Insira um nome personalizado para a imagem.
Image description
Insira uma descrição personalizada para a imagem.
Reference type
Imagem oficial do DataWorks (padrão).
Image namespace
Padrão do DataWorks (padrão).
Image repository
Padrão do DataWorks (padrão).
Image name/ID
Selecione
dataworks_shell_task_pod:xxx. Esta é a imagem oficial do DataWorks para nós Shell.Visibility Scope
Escolha um escopo conforme sua necessidade:
-
Visível apenas para o criador
-
Visível para todos
Module
Desenvolvimento de Dados (padrão).
Supported task type
Shell (padrão).
Installation package
Na lista suspensa Installation package, selecione
Script. Em seguida, insira o seguinte comando na caixa de comando:# Download wget 'http://<yourConfigURL>' -O /home/admin/usertools/tools/<configName>Nota-
Substitua
http://<yourConfigURL>pela URL do objeto copiada no painel de detalhes do OSS. -
Defina
<configName>como o nome do arquivo a ser baixado do OSS, por exemplo,myconfig.txt.
Clique em OK para criar a imagem.
-
-
Teste e publique a imagem.
Clique em Deploy na coluna Operation da imagem criada. Na página Publish Image, selecione Test Resource Group e clique em Test à direita de Test Result. Após a exibição da mensagem Succeeded., clique em Deploy na parte inferior.
Na coluna Actions da imagem personalizada publicada, clique em
e selecione Change Workspace. Vincule a imagem ao workspace desejado.
-
-
Use a ferramenta de linha de comando ossutil com o arquivo de configuração.
-
Crie um nó Shell comum.
-
Acesse a página de Desenvolvimento de Dados.
Faça login no console do DataWorks, mude para a região desejada e escolha Data Development and O&M > Data Studio no painel de navegação à esquerda. Na lista suspensa, selecione o workspace alvo e clique em Go to DataStudio.
-
Crie um nó Shell comum.
Na página de Desenvolvimento de Dados, clique com o botão direito no processo de negócios desejado, escolha Create Node e selecione Shell no diretório General.
-
-
Edite o conteúdo do nó Shell. O código de exemplo abaixo usa o
ossutilpara conectar-se ao endpoint do OSS especificado emmyconfig.txte listar todos os buckets acessíveis pela conta definida emmyconfig.txt./home/admin/usertools/tools/ossutil64 -c /home/admin/usertools/tools/myconfig.txt ls -s Clique em
, selecione o grupo de recursos serverless usado para teste, especifique a custom image criada e publicada e execute a tarefa do nó Shell comum.Na aba Scheduling do nó, selecione o grupo de recursos desejado na seção Resource Group, especifique a custom image criada e publicada, salve a configuração de agendamento, envie o nó Shell para o ambiente de desenvolvimento e publique-o em produção.
-
Documentos relacionados
Na nova versão do Desenvolvimento de Dados, vincule uma função RAM a um nó Shell e use o STS para obter dinamicamente credenciais de segurança temporárias. Isso permite acessar o OSS com segurança via ossutil. Para mais informações, consulte Associar funções: Acesso seguro a outros recursos de nuvem.