Envia um arquivo para uma ou mais instâncias do Elastic Compute Service (ECS).
Observações de uso
As instâncias de destino devem estar no estado Running (
Running).O Cloud Assistant Agent deve estar instalado nas instâncias.
-
Apenas versões do Cloud Assistant Agent posteriores às listadas abaixo suportam o envio de arquivos. Caso receba o código de erro
ClientNeedUpgrade, atualize o Cloud Assistant Agent para a versão mais recente.Para instâncias Linux, a versão do Cloud Assistant Agent deve ser superior a 1.0.2.569.
Para instâncias Windows, a versão do Cloud Assistant Agent deve ser superior a 1.0.0.149.
O tamanho do arquivo não pode exceder 32 KB após a codificação em Base64.
Falhas no envio podem ocorrer devido a exceções na instância, problemas de rede ou erros no Cloud Assistant Agent. Para solucionar esses problemas, chame a operação DescribeSendFileResults ou consulte Verificar resultados de execução e solucionar problemas comuns.
Depuração
Parâmetros da solicitação
| Parâmetro | Tipo | Obrigatório | Exemplo | Descrição |
| Action | String | Sim | SendFile |
Operação a ser executada. Defina o valor como SendFile. |
| RegionId | String | Sim | cn-hangzhou |
ID da região da instância de destino. É possível obter a lista atualizada de regiões chamando a operação DescribeRegions. |
| ResourceGroupId | String | Não | rg-bp67acfmxazb4p**** |
ID do grupo de recursos. Ao especificar este parâmetro, observe os seguintes pontos:
|
| Name | String | Sim | file.txt |
Nome do arquivo. Aceita todos os conjuntos de caracteres e permite até 255 caracteres. |
| Description | String | Não | This is a test file. |
Descrição do arquivo. Suporta todos os conjuntos de caracteres e aceita até 512 caracteres. |
| Timeout | Long | Não | 60 |
Tempo limite para a tarefa de envio de arquivo. Unidade: segundos.
Valor padrão: 60. |
| TargetDir | String | Sim | /home |
Diretório de destino na instância. Se o caminho informado não existir, o sistema criará o diretório automaticamente. O valor aceita todos os conjuntos de caracteres e não pode ultrapassar 255 caracteres. |
| ContentType | String | Não | PlainText |
Tipo de conteúdo do arquivo. Valores válidos:
Valor padrão: PlainText. |
| Content | String | Sim | #!/bin/bash echo "Current User is :" echo $(ps | grep "$$" | awk '{print $2}') -------- oss://bucketName/objectName |
Conteúdo do arquivo remoto. O tamanho não deve exceder 32 KB após a codificação em Base64.
|
| FileOwner | String | Não | test |
Proprietário do arquivo. Este parâmetro aplica-se apenas a instâncias Linux. Valor padrão: root. O valor pode ter até 64 caracteres. Nota Para utilizar um usuário diferente de root, certifique-se de que ele exista nas instâncias. |
| FileGroup | String | Não | test |
Grupo de usuários do arquivo. Aplica-se exclusivamente a instâncias Linux. Valor padrão: root. O nome do grupo pode conter até 64 caracteres. Nota Para usar um grupo diferente de root, verifique se o grupo existe nas instâncias. |
| FileMode | String | Não | 0644 |
Permissões do arquivo. Válido apenas para instâncias Linux. Configure este parâmetro seguindo a mesma sintaxe do comando chmod. Valor padrão: 0644. Isso concede permissão de leitura e escrita ao proprietário, enquanto o grupo e outros usuários têm apenas permissão de leitura. |
| Overwrite | Boolean | Não | true |
Define se um arquivo existente no diretório de destino deve ser substituído caso tenha o mesmo nome do arquivo enviado.
Valor padrão: false. |
| InstanceId.N | String | Sim | i-bp185dy2o3o6n**** |
ID da instância N que receberá o arquivo. Cada solicitação aceita até 50 IDs de instância. Valores válidos para N: 1 a 50. |
| Tag.N.Key | String | Não | TestKey |
Chave da tag N a ser associada à tarefa de envio de arquivo. Valores válidos para N: 1 a 20. A chave da tag não pode ser uma string vazia. Ao consultar recursos com uma única tag, a resposta exibe até 1.000 recursos associados a ela. Se múltiplas tags forem usadas na consulta, até 1.000 recursos contendo todas as tags especificadas serão retornados. Para listar mais de 1.000 recursos com determinadas tags, utilize a operação ListTagResources. A chave da tag permite até 64 caracteres e não pode começar com |
| Tag.N.Value | String | Não | TestValue |
Valor da tag N a ser associado à tarefa de envio de arquivo. Valores válidos para N: 1 a 20. O valor da tag pode ser uma string vazia. O valor da tag aceita até 128 caracteres e não pode incluir |
Parâmetros de resposta
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
InvokeId |
String |
f-7d2a745b412b46**** |
ID da tarefa de envio de arquivo. |
|
RequestId |
String |
473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E |
ID da solicitação. |
Exemplos
Exemplos de solicitações
https://ecs.aliyuncs.com/?Action=SendFile
&Content='echo hello'
&InstanceId.1=i-bp185dy2o3o6n****
&Name=file.txt
&RegionId=cn-hangzhou
&TargetDir=/home
&<Common request parameters>
Exemplos de respostas de sucesso
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<SendFileResponse>
<RequestId>E69EF3CC-94CD-42E7-8926-F133B86387C0</RequestId>
<InvokeId>f-7d2a745b412b46****</InvokeId>
</SendFileResponse>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "E69EF3CC-94CD-42E7-8926-F133B86387C0",
"InvokeId" : "f-7d2a745b412b46****"
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|
400 |
RegionId.ApiNotSupported |
The api is not supported in this region. |
Esta operação não é suportada na região especificada. Verifique se o ID da região é válido. |
|
400 |
MissingParam.InstanceId |
The parameter instanceId is missing or empty. |
O parâmetro InstanceId.N é obrigatório. |
|
400 |
MissingParameter.TagKey |
You must specify Tag.N.Key. |
Especifique Tag.N.Key. |
|
400 |
Duplicate.TagKey |
The Tag.N.Key contain duplicate key. |
A chave de tag especificada já existe. As chaves devem ser únicas. |
|
400 |
InvalidTagKey.Malformed |
The specified Tag.n.Key is not valid. |
Valor inválido para Tag.N.Key. |
|
400 |
InvalidTagValue.Malformed |
The specified Tag.n.Value is not valid. |
Valor inválido para Tag.N.Value. |
|
403 |
FileSize.ExceedLimit |
The length of file content exceeds limit. |
O tamanho do conteúdo do arquivo excede o limite permitido. |
|
403 |
FileName.ExceedLimit |
The length of file name exceeds limit. |
O nome do arquivo excede o comprimento máximo permitido. |
|
403 |
FileDesc.ExceedLimit |
The length of file description exceeds limit. |
A descrição do arquivo excede o limite de caracteres. |
|
403 |
FileTargetDir.Invalid |
The target directory of file is invalid. |
Valor inválido para TargetDir. |
|
403 |
InstanceIds.ExceedLimit |
The number of instance IDs exceeds the upper limit. |
A quantidade de IDs de instância excede o limite máximo. |
|
403 |
FileMode.Invalid |
The mode of file is invalid. |
Valor inválido para FileMode. |
|
403 |
FileContent.DecodeError |
The Content can not be base64 decoded. |
Não foi possível decodificar o conteúdo do arquivo em Base64. |
|
403 |
FileContentType.Invalid |
The ContentType of file is invalid. |
Valor inválido para ContentType. |
|
403 |
Operation.Forbidden |
The operation is not permitted. |
Operação não permitida. |
|
404 |
InvalidInstance.NotFound |
The specified instances not found. |
As instâncias especificadas não foram encontradas. |
|
404 |
InvalidResourceGroup.NotFound |
The ResourceGroup provided does not exist in our records. |
O ID do grupo de recursos não foi encontrado. |
|
500 |
InternalError.Dispatch |
An error occurred when you dispatched the request. |
Ocorreu um erro durante o envio da solicitação. Tente novamente mais tarde. |
Para obter uma lista completa de códigos de erro, consulte Códigos de erro do serviço.