背景
对于一台新购买创建的ECS实例,我们往往需要安装Java/python/php/docker/Jenkins等各种基础开发环境,安装虽然不难,但相对琐碎,神不知,鬼不觉地耗费我们不少宝贵时间。
对于笔者(“程序猿”一枚)来说,有赫赫有名的一句话为证:“一个应用的开发,最麻烦的往往是初始环境配置”。
通过免密码、免登录,下发云助手命令安装各种环境固然大大提升了效率,但往往会忘记或找不到对应的命令;这可能是日常写照:昨天创建的安装Java环境的命令怎么找不到了,前天创建的安装Python环境的命令去哪里了!还需要重新创建脚本;尤其对于Linux系统,RedHat系列与Debian系列的安装包管理方式不同,维护起来更是奔溃。。
而通过云助手公共命令,可以轻松解决这一问题,大大简化您的操作步骤。无论您记性有多差,只需要见名知意,无需考虑您ECS实例的Linux版本,找到对应的公共命令并执行,即可一键为您的ECS实例安装所需环境。
有道是,你念与不念,公共命令就在那里,不离不弃。
公共命令介绍
既然通过云助手公共命令,可以大大简化开发环境的初始配置,就要对公共命令有大概的了解,接下来郑重揭开她的神秘面纱,为您简单介绍公共命令。
-
公共命令是由云产品(比如ECS)创建的云助手命令,对全体阿里云用户可见。
-
正如上文提到的,公共命令特点之一即为见名知意,对于阿里云提供的公共命令,命令名称格式为: ACS-[产品编码,如ECS]-[功能用途]-(for-(windows|linux)).[后辍名]
-
公共命令 和私有命令类似, 支持三种类型,分别是 Windows实例的 Bat/PowerShell 命令、Linux实例的 Shell 命令。
-
公共命令提供服务器配置、健康/安全检测、应用安装、文件处理、安装系统补丁、更改系统配置、服务/应用管理,以及云助手插件(包含脚本或可执行程序)等等功能,命令的内容、发布、升级均由云产品方负责维护。
-
云产品发布公共命令后,您就可以查看命令内容,并在自己的 ECS 实例上执行该命令,查看执行进度与结果,例如一键 升级Linux实例中的云助手客户端、 一键 安装Java/ python/php/docker/Jenkins等各种 环境、 在实例上一键进行Linux/ Windows 基线/ 网络在线/性能等各种 诊断、一键 导入 aliyun yum 镜像源、一键 轮转ECS登录凭据等等 , 大大提升您的运维效率。
听了笔者的以上介绍,是不是对公共命令的使用方式比较好奇呢?实践是检验真理的唯一标准,接下来就通过使用公共命令快速安装Java环境(包括Tomcat),为大家介绍如何使用公共命令。
使用公共命令
浏览/查找公共命令
-
在左侧导航栏,单击字数最多的-- 发送命令/文件(云助手) 。(哈哈,是不是很好找)
-
在顶部菜单栏左上角处,选择 地域 。
-
点击 公共命令 页签,浏览公共命令。
-
支持按照公共命令名称/公共命令ID/公共命令类型查找所需要的公共命令哦,本示例需要查找名为 ACS-APP-InstallJavaEnvironment-for-linux.sh 的公共命令,该公共命令将为您的ECS 实例 安装Java环境,包括 Tomcat 。
执行公共命令
您可以通过登陆ECS控制台,或通过ECS SDK/阿里云CLI来执行公共命令哦。
通过ECS控制台执行
首先介绍通过登陆ECS控制台执行公共命令。
-
在 公共命令 页签,待执行公共命令最右侧的操作列,点击 执行 。
-
执行计划:目前支持 立即执行 、 系统下一次启动后执行 、 系统每次启动后执行 、 定时执行 。
-
执行用户: 在ECS实例中执行命令的用户名称。
-
Linux系统的ECS实例,默认以 root 用户执行命令。
-
Windows系统的ECS实例,默认以 System 用户执行命令。
-
-
查看公共命令的执行结果。
-
在左侧导航栏,选择 运维与监控 > 发送命令/文件(云助手) 。
-
在顶部菜单栏左上角处,选择 地域 。
-
单击 命令执行结果 页签,查看公共命令的执行结果。公共命令执行成功后,将 为您指定的ECS实例 安装Java环境,包括 Tomcat 。
-
通过以上几步,就可以为您的ECS 实例 安装Java环境啦(包括 Tomcat),是不是很简单~如果您是云助手的铁杆用户,实际耗费的时间会更短;(笔者安装 环境 耗时18秒,整体流程下来30秒绰绰有余~标题可不是吹牛哦)您可能会认为一套“花拳绣腿”,真的给我安装了嘛?不用担心, 接下来就进行 验证 ~您可以分别通过云助手下发命令查看ECS实例的Java版本、Tomcat安装路径,来验证您的ECS 实例是否已经 安装Java、 Tomcat 环境。具体调用方式请参考 立即执行命令 。
# 查看Java版本
java -version
# 查看Tomcat安装路径
find / -name tomcat
通过ECS SDK/阿里云CLI执行
接下来介绍通过ECS SDK/阿里云CLI执行公共命令。
由于每个地域下的公共命令 CommandId 都不相同,为方便由程序直接调用公共命令,简化您的操作,推荐使用公共命令名称,通过ECS OpenAPI--InvokeCommand直接执行;这样不同地域的程序脚本除了地域信息,其余都是相同的,是不是很简便呢?
以阿里云CLI为例,在华东2(上海)地域,执行名称为ACS-APP-InstallJavaEnvironment-for-linux.sh的公共命令,执行成功后将为您的ECS实例安装Java环境(包含Java, Tomcat),示例如下:
aliyun ecs InvokeCommand \
--RegionId=cn-shanghai \
--CommandId=ACS-APP-InstallJavaEnvironment-for-linux.sh \
--InstanceId.1=i-xxxx \
--InstanceId.2=i-yyyy
阿里云CLI的使用/配置方式请参考:https://help.aliyun.com/document_detail/123181.html
说明:CommandId 值即为公共命令的命令名称,云助手将:
-
自动查找选择该名称的公共命令;
-
如有多个同名公共命令,将自动选择该公共命令的最新版本。
结语
公共命令的作用不止于安装基础开发环境这类入门功能,还有更进阶的功能呢;目前云服务器ECS、云安全中心SAS、密钥管理服务KMS、云存储网关CSG、网络智能服务NIS、文件存储NAS等云产品都接入了公共命令,通过公共命令向用户提供相应的服务;例如云服务器-实例系统提供的实例诊断功能就依托于公共命令,为用户提供网络在线诊断、基线诊断、性能诊断等全方位诊断服务。
目前在杭州地域就有将近50条公共命令,并且功能还在不断扩充中呢。看翻翻公共命令列表,有没有你的“菜”。
通过以上介绍,想必您对公共命令有了大致的了解,请你继续关注哦,我们会持续提供更丰富、功能更强大的公共命令,您的支持是我们小二们最大的动力;期待公共命令可以为您提供更多的切实帮助!
相关文档
您可以查阅公共命令的官方帮助文档,了解到关于公共命令的更多信息。
您也可以浏览阿里云CloudOps,了解更多云上自动化运维的方式。