快速入门阿里云aliyuncli-自动调用服务

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 本博客仅献给那些不会开发的运维,帮助他们通过命令行完成各个服务API的调用。

    在2014年刚开始使用阿里云的时候python才刚入门,当时有个需求比较急就发现了几乎万能的aliyuncli。阿里云的命令行是基于对应服务的python SDK基础上的,所以aliyuncli操作SLB的时候会需要aliyun-python-sdk-slb这个包。


1. 先安装对应服务包:

pip install aliyun-python-sdk-slb==2.1.2

pip install aliyuncli==2.1.2


2.想调用API怎么样, ecs , ess, mts, rds, slb四个服务的接口使用pip安装sdk后aliyuncli既可以使用。

其它服务使用下面方法切换对应的version即可


aliyuncli ram ConfigVersion --version v20150501


v20150501则是SDK的版本,可以从你的SDK代码结构内发现。

[root@test-node1 ~]# ls /usr/lib/python2.6/site-packages/aliyunsdkram/request/
__init__.py  __init__.pyc  v20150501



命令行帮助
[root@test-node1 ~]# aliyuncli slb --help
usage: aliyuncli <command> <operation> [options and parameters]
[slb] valid operations as follows:

AddBackendServers                        	| AddListenerWhiteListItem
AddTags                                  	| AddVServerGroupBackendServers
ConfigVersion                            	| CreateLoadBalancer
CreateLoadBalancerHTTPListener           	| CreateLoadBalancerHTTPSListener
CreateLoadBalancerTCPListener            	| CreateLoadBalancerUDPListener
CreateRules                              	| CreateVServerGroup
DeleteCACertificate                      	| DeleteLoadBalancer
DeleteLoadBalancerListener               	| DeleteRules
DeleteServerCertificate                  	| DeleteVServerGroup
DescribeCACertificates                   	| DescribeHealthStatus
DescribeListenerAccessControlAttribute   	| DescribeLoadBalancerAttribute
DescribeLoadBalancerHTTPListenerAttribute 	| DescribeLoadBalancerHTTPSListenerAttribute
DescribeLoadBalancerTCPListenerAttribute 	| DescribeLoadBalancerUDPListenerAttribute
DescribeLoadBalancers                    	| DescribeRegions
DescribeRuleAttribute                    	| DescribeRules
DescribeServerCertificates               	| DescribeTags
DescribeVServerGroupAttribute            	| DescribeVServerGroups
DescribeZones                            	| ModifyLoadBalancerInternetSpec
ModifyVServerGroupBackendServers         	| RemoveBackendServers
RemoveListenerWhiteListItem              	| RemoveTags
RemoveVServerGroupBackendServers         	| SetBackendServers
SetCACertificateName                     	| SetListenerAccessControlStatus
SetLoadBalancerHTTPListenerAttribute     	| SetLoadBalancerHTTPSListenerAttribute
SetLoadBalancerName                      	| SetLoadBalancerStatus
SetLoadBalancerTCPListenerAttribute      	| SetLoadBalancerUDPListenerAttribute
SetRule                                  	| SetServerCertificateName
SetVServerGroupAttribute                 	| ShowVersions
StartLoadBalancerListener                	| StopLoadBalancerListener
UploadCACertificate                      	| UploadServerCertificate


下面展示一个操作脚本


#!/bin/bash
#自动创建负载均衡并添加后端服务器并开启监听
#author:new.nginxs.net
#date:20170718
CTIME=$(date "+%Y-%m-%d-%H-%m")

#创建负载均衡
/usr/local/bin/aliyuncli slb CreateLoadBalancer > /tmp/create.txt
SLBID=$(grep "LoadBalancerId" /tmp/create.txt | awk -F '"' '{print $4}')
VIP=$(grep "Address" /tmp/create.txt | awk -F '"' '{print $4}')

#创建http监听,监听80端口后端也是80端口,带宽-1表示不限制,,关闭粘性session,关闭健康检查
/usr/local/bin/aliyuncli slb CreateLoadBalancerHTTPListener --LoadBalancerId "$SLBID" --ListenerPort 80 --BackendServerPort 80 --Bandwidth -1 --XForwardedFor on --StickySession off --HealthCheck off

#i-u1cv2vgd9:要添加到后端ECS ID
/usr/local/bin/aliyuncli slb AddBackendServers --LoadBalancerId "$SLBID" --BackendServers [\{\"ServerId\":\"i-udsg4vgd9\",\"Weight\":\"100\"\}]

#启动监听
/usr/local/bin/aliyuncli slb StartLoadBalancerListener --LoadBalancerId "$SLBID" --ListenerPort 80

#测试通过slb是否可以访问后端服务器
sleep 10;
STATUS1=$(curl -s --head http://"$VIP"/heath.html | grep '200 OK')
if [ -n "$STATUS1" ] ;then
	echo "=====SLB access OK====="
else	
	echo "=====SLB access error====="
	exit 1;
fi

总结:

      aliyuncli可以在阿里云的python SDK基础上进行调用。具体命令参数可以直接参考各个服务的 API的参数进行填写,所以特别好用,

适合不会开发的运维同学使用。

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
6月前
|
人工智能 关系型数据库 Serverless
Serverless 应用引擎常见问题之生成的函数镜像改为自定义的镜像如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
|
6月前
|
JSON Serverless API
Serverless 应用引擎常见问题之通过SDK修改调度器报错如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
|
6月前
|
人工智能 关系型数据库 Serverless
Serverless 应用引擎常见问题之API生成的函数镜像改为自定义的镜像如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
|
4月前
|
弹性计算 Java Serverless
Serverless 应用引擎操作报错合集之上传自定义JAR包,启动时报错,是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
5月前
|
并行计算 Serverless 应用服务中间件
Serverless 应用引擎操作报错合集之在使用CURL连接函数出现502错误,是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
5月前
|
弹性计算 Java Serverless
Serverless 应用引擎操作报错合集之函数实例健康检查失败,一般是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
6月前
|
Java Serverless 测试技术
Serverless 应用引擎常见问题之上传自定义jar包自动vpc启动报错如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
|
6月前
|
人工智能 JavaScript 小程序
Serverless 应用引擎常见问题之函数计算安装serverless devs成功了但是配置密钥这步一直不成功如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
|
存储 运维 安全
阿里云发布SaaS数据本地化服务,助力企业跨国扩展与合规
阿里云SaaS数据本地化服务(Alibaba Cloud InCountry Service,简称ACIS) 由阿里云和 InCountry合作推出,为使用海外SaaS或者应用的企业客户提供了一种将受管制数据在境内存储和处理,以实现合规的SaaS服务。
1333 0
阿里云发布SaaS数据本地化服务,助力企业跨国扩展与合规
|
6月前
|
SQL 分布式计算 DataWorks
DataWorks常见问题之运行官方提供的示例报错如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
110 0