Todos os produtos
Search
Central de documentação

Elastic Compute Service:Create and use an ECS instance with the CLI

Última atualização: Aug 25, 2026

A Alibaba Cloud Command Line Interface (CLI) é uma ferramenta para gerenciar recursos da Alibaba Cloud diretamente do terminal por meio de chamadas de operações OpenAPI. Este tópico apresenta exemplos de uso da Alibaba Cloud CLI para criar e gerenciar uma instância ECS.

Nota

Para obter mais informações sobre a Alibaba Cloud CLI, consulte What is Alibaba Cloud CLI?.

Antes de começar

  1. Como uma conta Alibaba Cloud possui permissões totais sobre todos os recursos, o vazamento de um AccessKey dessa conta representa alto risco de segurança. Recomendamos o uso do AccessKey de um usuário RAM com apenas as permissões mínimas necessárias. Para mais detalhes, consulte Create an AccessKey.

  2. Conceda ao usuário RAM as permissões necessárias para gerenciar recursos ECS e VPC. O código de exemplo neste tópico cria recursos como instâncias, VPCs e vSwitches. Recomendamos conceder as seguintes permissões:

    Serviço cloud

    Permissão

    VPC

    Anexe a política de sistema: AliyunVPCFullAccess

    ECS

    Anexe a política de sistema: AliyunECSFullAccess

  3. Instale e configure a CLI. A Alibaba Cloud CLI está disponível para Windows, Linux e macOS. Escolha o método de instalação adequado ao seu sistema operacional:

    1. Instale a CLI.

    2. Configure a CLI.

      Defina as credenciais e a região de solicitação de service necessárias para chamar os recursos da Alibaba Cloud. Para mais informações, consulte Configure credentials.

    Caso precise depurar algo temporariamente sem instalar a Alibaba Cloud CLI, utilize o Cloud Shell. Para mais detalhes, consulte What is Cloud Shell?. Para iniciar o Cloud Shell, faça login no console da Alibaba Cloud e clique em no ícone do Cloud Shell (ícone de terminal) à direita de Tickets na barra de navegação superior.

Crie uma instância ECS

Criar uma instância ECS exige parâmetros como ID do vSwitch, ID do grupo de segurança e ID da imagem. Utilize IDs de recursos existentes ou crie novos chamando as operações nas etapas a seguir.

  1. Crie uma VPC.

    Uma VPC é uma rede privada logicamente isolada para seus recursos cloud.

    API

    Parâmetro

    Valor

    CreateVpc

    RegionId

    Região: cn-hangzhou

    CidrBlock

    Bloco CIDR da VPC: 192.168.0.0/16

  2. Crie um vSwitch.

    O vSwitch é um dispositivo de rede básico em uma VPC que conecta diferentes recursos cloud.

    API

    Parâmetro

    Valor

    RegionId

    Região: cn-hangzhou

    CreateVSwitch

    ZoneId

    Zona: cn-hangzhou-i

    VpcId

    ID da VPC: vpc-bp1aag0sb9s4i92i3****

    CidrBlock

    Bloco CIDR do vSwitch: 192.168.0.0/24

  3. Crie um grupo de segurança.

    Um grupo de segurança atua como firewall virtual que controla o tráfego de entrada e saída das instâncias ECS.

    API

    Parâmetro

    Valor

    CreateSecurityGroup

    RegionId

    Região: cn-hangzhou

    VpcId

    ID da VPC: vpc-bp1aag0sb9s4i92i3****

  4. Adicione uma regra de entrada ao grupo de segurança.

    API

    Parâmetro

    Valor

    AuthorizeSecurityGroup

    RegionId

    Região: cn-hangzhou

    SecurityGroupId

    ID do grupo de segurança: sg-bp1esyhwfbqeyudt****

    IpProtocol

    Protocolo: tcp

    SourceCidrIp

    Bloco CIDR de origem: 0.0.0.0/0

    PortRange

    Intervalo de portas:

    • Para instâncias Linux: 22/22

    • Para instâncias Windows: 3389/3389

  5. Crie uma instância ECS.

    API

    Parâmetro

    Valor

    RunInstances

    RegionId

    Região: cn-hangzhou

    ImageId

    Imagem: Utilize a imagem Alibaba Cloud Linux aliyun_3_x64_20G_alibase_20240819.vhd

    InstanceType

    Tipo de instância: ecs.e-c1m1.large

    SecurityGroupId

    ID do grupo de segurança: sg-bp1esyhwfbqeyudt****

    VSwitchId

    ID do vSwitch: vsw-bp1nzprm8h7mmnl8t****

    InstanceName

    Nome da instância: ecs_cli_demo

    InstanceChargeType

    Defina como PostPaid para criar uma instância com pagamento conforme o uso.

    Nota

    Certifique-se de que sua conta tenha saldo suficiente.

    Password

    Senha de login:

    InternetMaxBandwidthOut

    Se este valor for maior que 0, a instância receberá automaticamente um endereço IP público.

    SystemDisk.Category

    Categoria do disco de sistema: cloud_essd

    SystemDisk.Size

    Tamanho do disco de sistema: 40 GiB

Veja abaixo o script de exemplo completo:

Importante

Executar este script repetidamente criará recursos duplicados e poderá gerar custos desnecessários. Revise e adapte o script às suas necessidades específicas antes da execução.

#!/bin/bash
# In a production environment, make sure that your AccessKey ID and AccessKey secret
# are securely set by using environment variables or a configuration file.
# 1. Set variables.
INSTANCE_NAME="ecs_cli_demo"
# 2. Install the jq tool.
echo "Installing the jq dependency tool..."
yum install -y jq
sleep 3
# 3. Create a VPC, vSwitch, and security group.
echo "Creating a VPC..."
VpcId=$(aliyun vpc CreateVpc --RegionId cn-hangzhou --CidrBlock 192.168.0.0/16 | jq -r .VpcId)
aliyun vpc DescribeVpcAttribute --RegionId cn-hangzhou --VpcId ${VpcId} --waiter expr='Status' to=Available > /dev/null 2>&1
echo "Creating a vSwitch..."
VSwitchId=$(aliyun vpc CreateVSwitch --CidrBlock 192.168.0.0/24 --VpcId ${VpcId} --ZoneId=cn-hangzhou-i | jq -r .VSwitchId)
echo "Creating a security group..."
SecurityGroupId=$(aliyun ecs CreateSecurityGroup --RegionId cn-hangzhou --VpcId ${VpcId} | jq -r .SecurityGroupId)
aliyun ecs AuthorizeSecurityGroup --RegionId cn-hangzhou --SecurityGroupId ${SecurityGroupId} --IpProtocol tcp --SourceCidrIp 0.0.0.0/0 --PortRange 22/22 > /dev/null 2>&1
read -s -p "Enter your password:" PASSWORD
echo
echo "PASSWORD OK."
# 4. Run the command to create an ECS instance.
echo "Creating the ECS instance..."
INSTANCE_ID_RAW=$(aliyun ecs RunInstances \
--RegionId cn-hangzhou \
--ImageId aliyun_3_x64_20G_alibase_20240819.vhd \
--InstanceType ecs.e-c1m1.large \
--SecurityGroupId ${SecurityGroupId} \
--VSwitchId ${VSwitchId} \
--InstanceName $INSTANCE_NAME \
--InstanceChargeType PostPaid \
--InternetMaxBandwidthOut 1 \
--Password $PASSWORD  \
--SystemDisk.Category cloud_essd \
--SystemDisk.Size 40)
# 5. Extract the instance ID for later use.
INSTANCE_ID=$(echo "$INSTANCE_ID_RAW" | jq -r '.InstanceIdSets.InstanceIdSet[]')
# 6. Wait for 20 seconds for the ECS instance to be created.
echo "Waiting for the ECS instance to be created..."
sleep 20
# 7. Query the ECS instance status.
echo "Querying the ECS instance status..."
INSTANCE_ID_QUOTED=$(printf '"%s"' "$INSTANCE_ID")
aliyun ecs DescribeInstances \
--RegionId cn-hangzhou \
--InstanceIds "[${INSTANCE_ID_QUOTED}]" \
--output cols=InstanceId,InstanceName,InstanceType,ImageId,Status rows=Instances.Instance[]

Crie e execute o script shell. A saída esperada é a seguinte:

[root@i-xxxxx Z ~]# bash ecs-cli.sh
Installing the jq dependency tool...
Last metadata expiration check: 0:24:56 ago on Tue 22 Oct 2024 09:24:50 AM CST.
Package jq-1.6-15.al8.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
Creating a VPC...
Creating a vSwitch...
Creating a security group...
Enter your password:
PASSWORD OK.
Creating the ECS instance...
Waiting for the ECS instance to be created...
Querying the ECS instance status...
InstanceId          | InstanceName | InstanceType     | ImageId                               | Status
----------          | ------------ | ------------     | -------                               | -------
i-bpxxxxxxxxxxxz4   | ecs_cli_demo | ecs.e-c1m1.large | aliyun_3_x64_20G_alibase_20240819.vhd | Running

Conecte-se à instância

Após conectar-se à instância via SSH, implante seus serviços e aplicativos.

  1. Obtenha o endereço IP público da instância.

    Chame DescribeInstances com o <InstanceID> para obter o endereço IP público da instância.

    • Exemplo de solicitação

      aliyun ecs DescribeInstances \
      --RegionId cn-hangzhou \
      --InstanceIds '["<instance-id>"]'
    • Exemplo de resposta

      O parâmetro PublicIpAddress indica o endereço IP público da instância.

      "PublicIpAddress": {
          "IpAddress": [
                          "115.29.xxx.xxx"
          ]
      }
  2. Conecte-se à instância ECS.

    ssh <username>@<public_ip_address>
    [root@i-xxx bfZ ~ ]# ssh root@1xx.xx.xx.xx
    The authenticity of host '1xx.xx.xx.xx (1xx.xx.xx.xx)' can't be established.
    ECDSA key fingerprint is SHA256:PVyhCaxxx4mecykrU.
    Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
    Warning: Permanently added '1xx.xx.xx.xx' (ECDSA) to the list of known hosts.
    root@1xx.xx.xx.xx's password:
    Welcome to Alibaba Cloud Elastic Compute Service !
    Last login: Thu Oct 10 13:31:58 2024 from xxx.67
    [root@iZ xxx ugZ ~]#

Limpeza de recursos

Quando não precisar mais dos recursos, libere-os para evitar cobranças adicionais.

Nota

Escolha a operação OpenAPI adequada para liberar os recursos. Este exemplo libera todos os recursos criados nas etapas anteriores.

  1. Exclua a instância ECS.

    API

    Parâmetro

    Valor

    DeleteInstance

    RegionId

    Região: cn-hangzhou

    InstanceId

    ID da instância: i-bp17f3kzgtzzj91r****

  2. Exclua o grupo de segurança.

    API

    Parâmetro

    Valor

    DeleteSecurityGroup

    RegionId

    Região: cn-hangzhou

    SecurityGroupId

    ID do grupo de segurança: sg-bp1esyhwfbqeyudt****

  3. Exclua o vSwitch.

    API

    Parâmetro

    Valor

    DeleteVSwitch

    RegionId

    Região: cn-hangzhou

    VSwitchId

    ID do vSwitch: vsw-bp1nzprm8h7mmnl8t****

  4. Exclua a VPC.

    API

    Parâmetro

    Valor

    DeleteVpc

    RegionId

    Região: cn-hangzhou

    VpcId

    ID da VPC: vpc-bp1aag0sb9s4i92i3****

Veja abaixo um script de exemplo:

#!/bin/bash
# Replace the placeholder values with the actual IDs of the resources you want to release.
INSTANCE_ID='i-bpxxxxxxxxxxxz4'
SECURITY_GROUP_ID='sg-bp1esyhwfbqeyudt****'
VSWITCH_ID='vsw-bp1nzprm8h7mmnl8t****'
VPC_ID='vpc-bp1aag0sb9s4i92i3****'
REGION='cn-hangzhou'
echo "Releasing resources..."
# Delete the instance.
aliyun ecs DeleteInstance \
  --region ${REGION} \
  --InstanceId ${INSTANCE_ID}
# Wait for the instance to be deleted before deleting the security group.
# Add a wait logic here in a production script.
# Delete the security group.
aliyun ecs DeleteSecurityGroup \
  --region ${REGION} \
  --SecurityGroupId ${SECURITY_GROUP_ID}
# Delete the vSwitch.
aliyun vpc DeleteVSwitch \
  --region ${REGION} \
  --VSwitchId ${VSWITCH_ID}
# Delete the VPC.
aliyun vpc DeleteVpc \
  --region ${REGION} \
  --VpcId ${VPC_ID}
echo "Cleanup complete."
            

Referências

Execute o comando abaixo para visualizar a lista de comandos CLI compatíveis com o ECS.

aliyun ecs --help

Utilize a sintaxe a seguir para chamar operações da API ECS. Para detalhes sobre os parâmetros, consulte a documentação de cada operação.

aliyun ecs <APIName> --<parameter1 value1> --<parameter2 value2> ...

Gerar comando CLI

Para ajudar desenvolvedores a aprender e utilizar a OpenAPI de serviços cloud de forma rápida e eficiente, a Alibaba Cloud disponibiliza o site OpenAPI. Trata-se de uma solução abrangente que integra busca inteligente de OpenAPI, documentação, depuração online, obtenção de SDK, amostras de código, diagnóstico de erros de chamada e estatísticas de chamadas. Utilize o site OpenAPI para gerar automaticamente código CLI para APIs. Para mais informações, consulte What is OpenAPI.

  1. Faça login no Portal OpenAPI para ECS.

  2. Selecione a operação de API desejada e preencha os parâmetros.

  3. Clique em na aba CLI Example à direita para gerar o comando com os parâmetros especificados.

    Por exemplo, após selecionar a operação de API StartInstance e inserir os parâmetros, a aba CLI Example gera o comando correspondente: aliyun ecs StartInstance --region cn-hangzhou --InstanceId 'i-bp1i79spj7zmoqg****'.