Alibaba CLI(ALB)

 


alb                  Application Load Balancer
nlb                  Network Load Balancer
slb                  Server Load Balancer


ECSインスタンス (ユーザーデータでwebサーバーセットアップ)

cat <<-'EOF' | base64
#!/bin/bash
yum install -y httpd
systemctl start httpd
systemctl enable httpd
echo $(uname -n) > /var/www/html/index.html
EOF


echo "IyEvYmluL2Jhc2gKeXVtIGluc3RhbGwgLXkgaHR0cGQKc3lzdGVtY3RsIHN0YXJ0IGh0dHBkCnN5c3RlbWN0bCBlbmFibGUgaHR0cGQKZWNobyAkKHVuYW1lIC1uKSA+IC92YXIvd3d3L2h0bWwvaW5kZXguaHRtbAo=" | base64 -d

USER_DATA="IyEvYmluL2Jhc2gKeXVtIGluc3RhbGwgLXkgaHR0cGQKc3lzdGVtY3RsIHN0YXJ0IGh0dHBkCnN5c3RlbWN0bCBlbmFibGUgaHR0cGQKZWNobyAkKHVuYW1lIC1uKSA+IC92YXIvd3d3L2h0bWwvaW5kZXguaHRtbAo="

 

aliyun ecs CreateInstance \
--InstanceType ecs.t5-lc2m1.nano \
--CreditSpecification Standard \
--DeletionProtection false \
--Description instance01 \
--ImageId aliyun_2_1903_x64_20G_alibase_20231221.vhd \
--InstanceChargeType PostPaid \
--InstanceName instance01 \
--KeyPairName alibabakey01 \
--SecurityGroupId sg-11111111111111111111 \
--SystemDisk.Category cloud_ssd \
--SystemDisk.Size 20 \
--VSwitchId vsw-111111111111111111111 \
--ZoneId ap-northeast-1a \
--UserData ${USER_DATA}

aliyun ecs CreateInstance \
--InstanceType ecs.t5-lc2m1.nano \
--CreditSpecification Standard \
--DeletionProtection false \
--Description instance02 \
--ImageId aliyun_2_1903_x64_20G_alibase_20231221.vhd \
--InstanceChargeType PostPaid \
--InstanceName instance02 \
--KeyPairName alibabakey01 \
--SecurityGroupId sg-11111111111111111111 \
--SystemDisk.Category cloud_ssd \
--SystemDisk.Size 20 \
--VSwitchId vsw-111111111111111111111 \
--ZoneId ap-northeast-1a \
--UserData ${USER_DATA}


ECSインスタンスの起動
aliyun ecs StartInstance \
--InstanceId i-11111111111111111111

aliyun ecs StartInstance \
--InstanceId i-11111111111111111111

 

ECSインスタンスの削除
aliyun ecs DeleteInstance \
--InstanceId i-11111111111111111111 \
--Force true 

aliyun ecs DeleteInstance \
--InstanceId i-11111111111111111111 \
--Force true 

 

 

CLB

aliyun slb DescribeLoadBalancers 

 

aliyun slb CreateLoadBalancer \
--AddressType internet \
--Bandwidth 1 \
--DeleteProtection off \
--InstanceChargeType PayBySpec \
--InternetChargeType paybybandwidth \
--LoadBalancerName clb01 \
--LoadBalancerSpec slb.s1.small \
--MasterZoneId ap-northeast-1a \
--PayType PayOnDemand \
--SlaveZoneId ap-northeast-1b 

 

aliyun slb DescribeLoadBalancerAttribute \
--LoadBalancerId lb-111111111111111111111 


CLBの削除
aliyun slb DeleteLoadBalancer \
--LoadBalancerId lb-111111111111111111111 

 

 

仮想サーバーグループ

aliyun slb DescribeVServerGroups \
--LoadBalancerId lb-111111111111111111111 

 

aliyun slb CreateVServerGroup \
--LoadBalancerId lb-111111111111111111111 \
--VServerGroupName be01 

 


仮想サーバーグループの削除
aliyun slb DeleteVServerGroup \
--VServerGroupId rsp-1111111111111 

 

仮想サーバーグループへのサーバー追加

aliyun slb DescribeVServerGroupAttribute \
--VServerGroupId rsp-1111111111111 


aliyun slb AddVServerGroupBackendServers \
--VServerGroupId rsp-1111111111111 \
--BackendServers ' [
  {
    "Port": 80,
    "ServerId": "i-11111111111111111111",
    "Type": "ecs",
    "Weight": 100
  },
  {
    "Port": 80,
    "ServerId": "i-11111111111111111111",
    "Type": "ecs",
    "Weight": 100
  }
]'


aliyun slb RemoveVServerGroupBackendServers \
--VServerGroupId rsp-1111111111111 \
--BackendServers ' [
  {
    "Port": 80,
    "ServerId": "i-11111111111111111111",
    "Type": "ecs",
    "Weight": 100
  },
  {
    "Port": 80,
    "ServerId": "i-11111111111111111111",
    "Type": "ecs",
    "Weight": 100
  }
]'

 

 


リスナー

aliyun slb DescribeLoadBalancerListeners 

 

aliyun slb CreateLoadBalancerHTTPListener \
--HealthCheck on \
--ListenerPort 80 \
--LoadBalancerId lb-111111111111111111111 \
--StickySession off \
--Bandwidth 1 \
--Description lis01 \
--Gzip on \
--HealthCheckConnectPort 80 \
--HealthCheckHttpCode "http_2xx,http_3xx" \
--HealthCheckInterval 2 \
--HealthCheckMethod head \
--HealthCheckTimeout 5 \
--HealthCheckURI "/" \
--HealthyThreshold 3 \
--IdleTimeout 15 \
--ListenerForward off \
--RequestTimeout 60 \
--UnhealthyThreshold 3 \
--VServerGroupId rsp-1111111111111 

 


リスナーの削除
aliyun slb DeleteLoadBalancerListener \
--LoadBalancerId lb-111111111111111111111 \
--ListenerPort 80 


リスナーの起動
aliyun slb StartLoadBalancerListener \
--LoadBalancerId lb-111111111111111111111 \
--ListenerPort 80 

リスナーの停止
aliyun slb StopLoadBalancerListener \
--LoadBalancerId lb-111111111111111111111 \
--ListenerPort 80 

 


ヘルスチェック

aliyun slb DescribeHealthStatus \
--LoadBalancerId lb-111111111111111111111