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

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
网络型负载均衡 NLB,每月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)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
7月前
|
人工智能 关系型数据库 Serverless
Serverless 应用引擎常见问题之生成的函数镜像改为自定义的镜像如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
|
7月前
|
弹性计算 前端开发 持续交付
云效产品使用常见问题之导入ECS主机到资源池找不到导入的入口如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
5月前
|
弹性计算 Java Serverless
Serverless 应用引擎操作报错合集之上传自定义JAR包,启动时报错,是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
4月前
|
运维 API 开发工具
阿里云云效操作报错合集之在编辑器里api接口调用时,经常报错,是什么原因
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
5月前
|
敏捷开发 JSON 网络协议
阿里云云效产品使用合集之如何自定义拉取资源的命令脚本
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
6月前
|
并行计算 前端开发 Serverless
Serverless 应用引擎操作报错合集之启动命令没有可执行权限,该怎么办
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
6月前
|
弹性计算 Java Serverless
Serverless 应用引擎操作报错合集之函数实例健康检查失败,一般是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
7月前
|
运维 JavaScript Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,Php环境,配置取消禁止函数exec如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
348 4
|
7月前
|
运维 Devops 网络安全
云效产品使用报错问题之云上镜像库默认接口443修改失败如何解决
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
7月前
|
Java Serverless 测试技术
Serverless 应用引擎常见问题之上传自定义jar包自动vpc启动报错如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总: