Python調用aliyun API設置阿里雲負載均衡虛擬服務器組權重

Python調用aliyun API設置阿里雲負載均衡虛擬服務器組權重

環境準備

系統環境

CentOS Linux release 7.2.1511 (Core)

[root@localhost ~]# cat /proc/version 
Linux version 3.10.0-327.el7.x86_64 ([email protected]) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015
[root@localhost ~]# 
[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost ~]# 
[root@localhost ~]# python -V
Python 2.7.5

軟件環境

[root@localhost ~]#  yum groupinstall "Development Tools"
[root@localhost ~]#  yum install python-setuptools ntsysv python-devel setuptool

[root@localhost ~]#  pip install setuptools
[root@localhost ~]#  pip install aliyun-python-sdk-core
[root@localhost ~]#  pip install aliyun-python-sdk-slb

腳本編寫

#!/usr/bin/env python
#coding=utf-8

import sys
import json
from aliyunsdkcore import client
from aliyunsdkslb.request.v20140515 import SetVServerGroupAttributeRequest
from aliyunsdkslb.request.v20140515 import DescribeVServerGroupAttributeRequest

clt = client.AcsClient('<accessKeyId>','<accessSecret>','cn-hangzhou')

# 查詢
## 設置參數
request = DescribeVServerGroupAttributeRequest.DescribeVServerGroupAttributeRequest()
request.set_accept_format('json')

request.add_query_param('RegionId', 'cn-beijing')
request.add_query_param('VServerGroupId', 'rsp-2zef……5p80')

## 發起請求
response = clt.do_action_with_exception(request)

## 輸出結果
print "查詢結果:", response, '\n'

# 處理
weight = json.loads(response)["BackendServers"]["BackendServer"]

for i in range(len(weight)):
    weight[i]["Weight"] = sys.argv[i+1]
    print "參數設置Client"+str(i+1)+':', weight[i]["Weight"], '\n'

weight = json.dumps(weight)

# 設置
## 設置參數
request = SetVServerGroupAttributeRequest.SetVServerGroupAttributeRequest()
request.set_accept_format('json')

request.add_query_param('RegionId', 'cn-beijing')
request.add_query_param('BackendServers', weight)
request.add_query_param('VServerGroupId', 'rsp-2z……p80')

## 發起請求
response = clt.do_action_with_exception(request)

## 輸出結果
print "設置結果:", response, '\n'

使用方法

  • 執行腳本傳入參數即可。
    [root@localhost ~]#  python ali-slb.py  <weight1>  <weight2> <weight3> ……

結果展示

  • 操作前

Python調用aliyun API設置阿里雲負載均衡虛擬服務器組權重

  • 執行腳本
    Python調用aliyun API設置阿里雲負載均衡虛擬服務器組權重

  • 結果展示
    Python調用aliyun API設置阿里雲負載均衡虛擬服務器組權重

歡迎大佬,批評指正!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章