日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

通過CLI創建并使用ECS實例

阿里云CLI(Command Line Interface)是一種命令行工具,允許用戶在終端或命令行界面調用阿里云API,來創建、配置、管理阿里云云資源。本文主要介紹如何使用阿里云CLI調用ECS API來創建和管理ECS實例的方法及其常用示例。

說明

關于阿里云CLI的詳細信息,請參見什么是阿里云CLI。

準備工作

  1. 由于阿里云賬號(主賬號)擁有資源的所有權限,其AccessKey一旦泄露風險巨大,所以建議您使用滿足最小化權限需求的RAM用戶的AccessKey。獲取方法請參見創建AccessKey。

  2. 給RAM用戶授予操作云服務器ECS和專有網絡VPC相關資源的權限。本文提供的示例代碼需要創建實例、VPC、交換機等資源,建議授予以下權限:

    云產品

    授予權限

    專有網絡VPC

    本示例選擇系統策略:AliyunVPCFullAccess

    云服務器ECS

    本示例選擇系統策略:AliyunECSFullAccess

  3. 安裝和配置CLI。調試使用阿里云CLI前,您需要先安裝阿里云CLI。阿里云CLI提供了Windows、Linux和macOS三種操作系統下的安裝服務,請根據您使用設備的操作系統選擇:

    1. 安裝CLI。

    2. 配置CLI。

      配置調用阿里云資源所需的身份憑證信息、服務請求地域等。具體配置,請參見配置身份憑證

    如果您只是用于臨時調試,不需要安裝阿里云CLI,您可使用阿里云提供的云命令行Cloud Shell。更多信息,請參見什么是云命令行?。image

創建ECS實例

創建ECS實例時,有很多必填參數,包括交換機ID、安全組、鏡像等。您可以傳入已經準備好的資源ID,或者調用以下OpenAPI創建對應資源。

  1. 創建VPC。

    VPC是一種專有的云上私有網絡,允許用戶在公共云上配置和管理一個邏輯隔離的網絡區域。

    API

    參數

    示例取值

    CreateVpc

    RegionId

    地域:cn-hangzhou

    CidrBlock

    VPC網段:192.168.0.0/16

  2. 創建交換機。

    交換機是一種在虛擬化環境中使用的網絡交換設備,它模擬了物理交換機的功能,使虛擬機(VMs)之間以及虛擬機與物理網絡之間可以進行通信。

    API

    參數

    示例取值

    RegionId

    地域:cn-hangzhou

    CreateVSwitch

    ZoneId

    可用區:cn-hangzhou-i

    VpcId

    VPC ID:vpc-bp1aag0sb9s4i92i3****

    CidrBlock

    交換機網段:192.168.0.0/24

  3. 創建安全組。

    安全組是一種虛擬防火墻,能夠控制ECS實例的出入方向流量。

    API

    參數

    示例取值

    CreateSecurityGroup

    RegionId

    地域:cn-hangzhou

    VpcId

    VPC ID:vpc-bp1aag0sb9s4i92i3****

  4. 給安全組添加入防護規則。

    API

    參數

    示例取值

    AuthorizeSecurityGroup

    RegionId

    地域:cn-hangzhou

    SecurityGroupId

    安全組ID:sg-bp1esyhwfbqeyudt****

    IpProtocol

    協議:tcp

    SourceCidrIp

    源CIDR:0.0.0.0/0

    PortRange

    端口范圍:

    • Linux實例:22/22

    • Windows實例:3389/3389

  5. 創建ECS實例。

    使用ECS,您可以快速部署和運行應用程序,靈活調整資源以應對業務變化,同時享受高性能、高安全性和低成本的計算能力,適用于網站托管、應用開發、數據處理等多種場景。

    API

    參數

    示例取值

    RunInstances

    RegionId

    地域:cn-hangzhou

    ImageId

    鏡像:使用Alibaba Cloud Linux鏡像aliyun_3_x64_20G_alibase_20240819.vhd

    InstanceType

    實例規格: ecs.e-c1m1.large

    SecurityGroupId

    安全組ID:sg-bp1esyhwfbqeyudt****

    VSwitchId

    交換機ID:vsw-bp1nzprm8h7mmnl8t****

    InstanceName

    實例名稱:ecs_cli_demo

    InstanceChargeType

    付費方式:實例按照按量付費的方式PostPaid

    說明

    您需要確保賬號余額能夠完成支付。

    PASSWORD

    登錄密碼:******

    InternetMaxBandwidthOut

    公網出帶寬最大值。若大于 0,則自動為實例分配公網 IP。

    SystemDisk.Category

    系統盤的云盤種類:cloud_essd

    SystemDisk.Size

    系統盤的大?。?0 GiB

完整的示例代碼如下:

重要

示例代碼主要展示了CLI的使用方式。反復執行該腳本會導致VPC、交換機和安全組等資源的重復創建,從而可能引發資源浪費。因此,請務必仔細審閱并結合業務邏輯優化代碼。

#!/bin/bash

# 配置阿里云CLI使用的AccessKey和SecretKey
# 注意:實際使用時,請確保已通過環境變量或配置文件安全地設置了AccessKey和SecretKey

# 1. 設置變量
INSTANCE_NAME="ecs_cli_demo"

#2. 安裝jq工具
echo "正在安裝依賴工具jq..."
yum install jq
sleep 3

# 3. 創建VPC、VSwitch、SecurityGtoup
echo "正在創建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 "正在創建VSwitch..."
VSwitchId=$(aliyun vpc CreateVSwitch --CidrBlock 192.168.0.0/24 --VpcId ${VpcId} --ZoneId=cn-hangzhou-i | jq -r .VSwitchId)

echo "正在創建SecurityGtoup..."
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 "Input Your Password:" PASSWORD
echo
echo "PASSWORD OK."

# 4. 執行創建ECS實例的命令
echo "正在創建ECS實例..."
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. 提取InstanceId,用于后續打印狀態
INSTANCE_ID=$(echo "$INSTANCE_ID_RAW" | jq -r '.InstanceIdSets.InstanceIdSet[]')

# 6. 休息20秒,等待ECS創建中...
echo "等待ECS創建中..."
sleep 20

# 7. 查詢ECS狀態
echo "查詢ECS狀態..."
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[]

創建Shell腳本,并運行,預期結果如下:

image

連接實例

通過SSH方式登錄ECS實例,就可以進行部署業務、搭建應用等操作。

  1. 獲取實例的公網IP信息。

    調用DescribeInstances,通過<實例ID>獲取實例的公網IP信息。

    • 請求示例

      aliyun ecs DescribeInstances \
      --RegionId cn-hangzhou \
      --InstanceIds '["<實例ID>"]'
    • 返回示例

      參數PublicIpAddresses為實例的公網IP信息。

      公網IP

  2. 連接ECS實例。

    ssh <用戶名>@<公網IP>

    image

釋放資源

當您不再需要所創建的資源時,可以調用以下OpenAPI接口以釋放該資源。

說明

根據您的實際需求,選擇相應的OpenAPI釋放資源 。本示例釋放上述步驟創建的所有資源。

  1. 釋放ECS實例

    API

    參數

    示例取值

    DeleteInstances

    RegionId

    地域:cn-hangzhou

    InstanceId

    實例 ID:i-bp17f3kzgtzzj91r****

  2. 刪除安全組

    API

    參數

    示例取值

    DeleteSecurityGroup

    RegionId

    地域:cn-hangzhou

    SecurityGroupId

    安全組ID:sg-bp1esyhwfbqeyudt****

  3. 刪除交換機

    API

    參數

    示例取值

    DeleteVSwitch

    RegionId

    地域:cn-hangzhou

    VSwitchId

    交換機ID:vsw-bp1nzprm8h7mmnl8t****

  4. 刪除VPC

    API

    參數

    示例取值

    DeleteVpc

    RegionId

    地域:cn-hangzhou

    VpcId

    VPC ID:vpc-bp1aag0sb9s4i92i3****

示例代碼如下:

#!/bin/bash

# 定義要釋放的資源信息
INSTANCE_ID='ecs_cli_demo'  # ECS實例ID
SECURITY_GROUP_ID='sg-bp1esyhwfbqeyudt****' # 安全組ID
VSWITCH_ID='vsw-bp1nzprm8h7mmnl8t****'  # VSwitchID
VPC_ID='vpc-bp1aag0sb9s4i92i3****'      # VPC ID
REGION='cn-hangzhou'                    # 區域

echo "正在釋放資源..."

# 刪除實例
aliyun ecs DeleteInstance \
  --region ${REGION} \
  --InstanceId ${INSTANCE_ID}

# 刪除安全組
aliyun ecs DeleteSecurityGroup \
  --region ${REGION} \
  --RegionId ${REGION} \
  --SecurityGroupId ${SECURITY_GROUP_ID}

# 刪除 VSwitch
aliyun vpc DeleteVSwitch \
  --region ${REGION} \
  --RegionId ${REGION} \
  --VSwitchId ${VSWITCH_ID}

# 刪除 VPC
aliyun vpc DeleteVpc \
  --region ${REGION} \
  --RegionId ${REGION} \
  --VpcId ${VPC_ID}

echo "釋放完成"

相關文檔

您可以在命令行執行以下命令,查詢支持的CLI命令列表。

aliyun ecs --help

您可以在命令行按照以下命令結構,調用ECS API。詳細輸入參數,可以參考各API文檔。

aliyun ecs <API Name> --<參數1 取值1> --<參數2 取值2> ...

生成CLI命令

為了能夠讓開發者快速高效地學習和使用云產品OpenAPI,阿里云為用戶提供OpenAPI網站。它是一款集OpenAPI智能搜索、文檔、在線調試、SDK獲取、CodeSample、調用出錯診斷、調用統計為一體的產品。您可以通過OpenAPI自動生成API對應的CLI代碼。更多信息,請參見什么是OpenAPI

  1. 登錄云服務器ECS API調試列表

  2. 選擇您需要使用的API,并填寫參數。

  3. 單擊右側的CLI示例頁簽即可生成攜帶參數的命令。

    2024-08-12_10-30-57.png