15.12. 使用流元数据访问 RHCOS AMI
在 OpenShift Container Platform 中,流元数据以 JSON 格式提供与 RHCOS 相关的标准化元数据,并将元数据注入集群中。流元数据是一种稳定的格式,支持多种架构,旨在自我记录以维护自动化。
您可以使用 openshift-install
的 coreos print-stream-json
子命令访问流元数据格式的引导镜像的信息。此命令提供了一种以可脚本、机器可读格式打印流元数据的方法。
对于用户置备的安装,openshift-install
二进制文件包含对经过测试用于 OpenShift Container Platform 的 RHCOS 引导镜像版本的引用,如 AWS AMI。
流程
要解析流元数据,请使用以下方法之一:
-
在 Go 程序中使用位于 https://github.com/coreos/stream-metadata-go 的正式
stream-metadata-go
库。您还可以查看库中的示例代码。 - 在 Python 或 Ruby 等其他编程语言中使用您首选编程语言的 JSON 库。
在处理 JSON 数据的命令行工具中,如
jq
:为 AWS 区域输出当前的
x86_64
或aarch64
AMI,如us-west-1
:对于 x86_64
$ openshift-install coreos print-stream-json | jq -r '.architectures.x86_64.images.aws.regions["us-west-1"].image'
输出示例
ami-0d3e625f84626bbda
对于 aarch64
$ openshift-install coreos print-stream-json | jq -r '.architectures.aarch64.images.aws.regions["us-west-1"].image'
输出示例
ami-0af1d3b7fa5be2131
这个命令的输出是您指定的架构和
us-west-1
区域的 AWS AMI ID。AMI 必须与集群属于同一区域。