[大阪/横滨/德岛] 寻找基础设施/服务器端工程师!

[大阪/横滨/德岛] 寻找基础设施/服务器端工程师!

【超过500家企业部署】AWS搭建、运维、监控服务

【超过500家企业部署】AWS搭建、运维、监控服务

【CentOS的后继者】AlmaLinux OS服务器搭建/迁移服务

【CentOS的后继者】AlmaLinux OS服务器搭建/迁移服务

[仅适用于 WordPress] 云服务器“Web Speed”

[仅适用于 WordPress] 云服务器“Web Speed”

[便宜]网站安全自动诊断“快速扫描仪”

[便宜]网站安全自动诊断“快速扫描仪”

[预约系统开发] EDISONE定制开发服务

[预约系统开发] EDISONE定制开发服务

[注册100个URL 0日元] 网站监控服务“Appmill”

[注册100个URL 0日元] 网站监控服务“Appmill”

【兼容200多个国家】全球eSIM“超越SIM”

【兼容200多个国家】全球eSIM“超越SIM”

[如果您在中国旅行、出差或驻扎]中国SIM服务“Choco SIM”

[如果您在中国旅行、出差或驻扎]中国SIM服务“Choco SIM”

【全球专属服务】Beyond北美及中国MSP

【全球专属服务】Beyond北美及中国MSP

[YouTube]超越官方频道“美由丸频道”

[YouTube]超越官方频道“美由丸频道”

使用阿里云CLI获取ECS镜像ID

介绍

我是技术销售部的高木,一开始我还是迷失了大约10分钟。

所以这次我要使用“阿里云CLI”来获取阿里云虚拟服务器环境“ECS(弹性计算服务)”的镜像ID!

当你想要使用Terraform构建ECS时,指定这个“镜像ID”是绝对有必要的,不过似乎使用这个“阿里云CLI”来获取会更快,所以这次就做个备忘。我会保留它。

*有一天我也会好好写一篇关于Terraform的文章。 。

什么是阿里云CLI?

首先我想简单解释一下这个“阿里云CLI”,但如果你是AWS的普通用户,我想把它理解为阿里云版的“AWS CLI”是没有问题的。

该工具用于通过 CLI 而不是浏览器来管理资源,但以防万一我们官方文档的链接

顺便说一句,目前正在准备日文版(截至2024年1月18日本文发表) ,所以我使用翻译工具阅读了它。

一般流程

流程如下,这次我们将使用安装在Windows 11 PC上的WSL(Almalinux 8)。

  1. 使用curl命令安装/解压
  2. 操作确认
  3. 创建RAM用户并获取API key
  4. 创建个人资料
  5. 获取图片ID
  6. 使用 --output 检索信息
  7. 概括

使用curl命令安装/解压

打开 WSL 并启动 Almalinux,然后使用以下命令安装并解压缩它。

curl -sL https://github.com/aliyun/aliyun-cli/releases/download/v3.0.188/aliyun-cli-linux-3.0.188-amd64.tgz | sudo tar xzC /usr/local/bin

另外,详细信息也可以在 Github 上找到,所以也请检查一下。

■ GitHub

https://github.com/aliyun/aliyun-cli

https://github.com/aliyun/aliyun-cli/releases

■ 官方手册

https://www.alibabacloud.com/help/zh/alibaba-cloud-cli/latest/installation-guide?spm=a2c63.p38356.0.0.106b6d42SZzhML

操作确认

执行以下命令查看您安装的阿里云CLI版本。

阿里云版

这次应该显示“3.0.188”,如果你能确认这一点,那就OK了!

RAM用户创建

然而,事实上,您仍然无法通过 CLI 获取必要的信息,因此首先创建一个具有管理员权限的用户。

另外,请注意此时将输出的以下三条信息。

  1. 访问密钥ID
  2. 访问密钥秘密
  3. 默认区域ID

*您也可以在创建用户时以CSV形式获取!

创建个人资料

记下以上三点后,在 WSL 中打开 Almalinux8 并执行以下命令。

aliyun configure --profile 默认

然后,如下图1所示,会以交互的形式要求你提供前面提到的信息,所以一一输入。

■ 图1

■ 输入订单

  1. AccessKey ID → 输入个人信息
  2. AccessKey秘密→输入个人信息
  3. 默认区域 ID → ap-northeast-1
  4. 默认语言 → en

最后,如果出现“Configure Done!!!”,则表示已完成。

获取图片ID

然而,事实上,我不知道实际执行什么命令,所以我会检查帮助来看看有哪些选项可用!

■ 执行命令

阿里云--帮助

■ 执行结果

由于篇幅较长,我摘录了一部分,不过你可以显示一个可以与 aliyun 命令一起使用的选项和资源列表,这样你就可以指定我们要求的“ECS”资源,然后获取帮助我会调查具体的服务。

■ 执行命令

阿里云ecs--帮助

■ 执行结果

将显示可用 API 的列表,使用似乎最适用的“DescribeImages”来获取 JSON 格式的结果。

■ 执行命令

aliyun ecs 描述图像

■ 执行结果

因为很长,所以我摘录了一些,但是 JSON 格式的结果会像这样输出。可以看到,这次你想知道的信息可以从“ImageId”部分获取到!

就我个人而言,我认为将 grep 和“仅提取您想要的部分”结合起来很好,但是这次我将使用“--output”(官方文档我会做的!

顺便说一句,您还可以查看“aliyun ecsDescribeImages”命令的帮助,如下所示,因此如果您确实想通过 CLI 对 ECS 执行某些操作,您还可以查看“aliyun ecsDescribeImages”的帮助命令请作为参考

■ 执行命令

aliyun ecs 描述图像帮助

■ 执行结果

使用 --output 检索信息

阿里云CLI提供了“--output”选项,让上述命令的输出结果更加直观、易于理解,通过指定该选项以及后面的三个“Fields”,您可以只提取感兴趣的部分。你。

■ 领域

字段中存在的行的名称。

例如使用“aliyun ecsDescribeImages”的结果

这包括“ImageId”、“OSNameEn”和“Status”。

使用JAMESPATH要过滤的字段所在的路径

例如,“Images”和“Image”是“aliyun ecsDescribeImages”的结果。

编号

它将在结果左侧输出从 0 开始的行数。默认是没有输出。

基于以上,执行的命令如下。

如果在末尾输入“num=true”,则行数将输出在左侧。

■ 执行命令

aliyun ecsDescribeImages --PageSize 100 --output cols="ImageId,OSNameEn,Status" rows="Images.Image[]" aliyun ecsDescribeImages --PageSize 100 --output cols="ImageId,OSNameEn,Status" rows="图片.Image[]" num=true

■ 执行结果

“行”部分需要使用JAMESPATH

这真是一种解脱!

概括

你觉得怎么样?

就我个人而言,我花了一段时间来阅读 JAMESPATH 部分的文档,所以我遇到了一些麻烦,但现在我可以放心地使用 Terraform 构建资源了!

最后,我们在深圳设立了办事处,通过各个云厂商的服务,包括阿里云、腾讯云等中国云,来支持我们客户的系统从设计建设到运维。 。

除了阅读本文之外,我们希望您也对百佑科技(深圳)有限公司

我会继续写主要是阿里云相关的文章,欢迎关注!

如果您觉得这篇文章有帮助,请点赞!
5
加载中...
5 票,平均:1.00 / 15
291
X Facebook 哈特纳书签 口袋
[2025.6.30 Amazon Linux 2 支持结束] Amazon Linux 服务器迁移解决方案

[2025.6.30 Amazon Linux 2 支持结束] Amazon Linux 服务器迁移解决方案

写这篇文章的人

关于作者

高城正宏

大学毕业后,我加入了某系统集成商,
开始了基础设施工程师的职业生涯。
2021年6月加入Beyond,
目前隶属于系统解决方案部门。
我们为主要提供基于网络的服务的公司所使用的服务器和云提供24小时、365天的运营、维护和监控服务。

持有的资格如下:
① AWS SAA
② Lpic 101