5.12. 添加自定义清单
自定义清单是一个 JSON 或 YAML 文件,其包含辅助安装程序用户界面目前不支持的高级配置。您可以创建一个自定义清单,或使用第三方提供的清单。要使用 API 创建一个自定义清单,请使用 /v2/clusters/$CLUSTER_ID/manifests 端点。
您可以使用辅助安装程序 API 将 base64 编码的自定义清单上传到 openshift
文件夹或 manifests
文件夹。对允许的自定义清单数量没有限制。
您只能一次上传一个 base64 编码的 JSON 清单。但是,每个上传的 base64 编码的 YAML 文件可以包含多个自定义清单。上传多文档 YAML 清单比单独添加 YAML 文件要快。
对于包含一个自定义清单的文件,可接受的文件扩展名包括 .yaml
、.yml
或 .json
。
一个自定义清单示例
对于包含多个自定义清单的文件,可接受的文件类型包括 .yaml
或 .yml
。
多个自定义清单示例
- 当在 Oracle Cloud Infrastructure (OCI)外部平台上安装 OpenShift Container Platform 时,您必须添加 Oracle 提供的自定义清单。对于其它外部合作伙伴集成,如 vSphere 或 Nutanix,此步骤是可选的。
- 有关自定义清单的更多信息,请参阅 其它资源。
先决条件
-
您已生成了一个有效的
API_TOKEN
。令牌每 15 分钟过期一次。 -
您已注册了一个新的集群定义,并将
cluster_id
导出到$CLUSTER_ID
BASH 变量。
流程
- 创建一个自定义清单文件。
- 使用合适的文件格式的扩展名保存自定义清单文件。
刷新 API 令牌:
source refresh-token
$ source refresh-token
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,将自定义清单添加到集群中:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
manifest.json
替换为清单文件的名称。manifest.json
的第二个实例是文件的路径。确保路径正确。输出示例
{ "file_name": "manifest.json", "folder": "manifests" }
{ "file_name": "manifest.json", "folder": "manifests" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意base64 -w 0
命令使用 base64 将清单编码为一个字符串,并省略回车。带回车的的编码将产生一个异常。验证辅助安装程序是否添加了清单:
curl -X GET "https://api.openshift.com/api/assisted-install/v2/clusters/$CLUSTER_ID/manifests/files?folder=manifests&file_name=manifest.json" -H "Authorization: Bearer $API_TOKEN"
$ curl -X GET "https://api.openshift.com/api/assisted-install/v2/clusters/$CLUSTER_ID/manifests/files?folder=manifests&file_name=manifest.json" -H "Authorization: Bearer $API_TOKEN"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
manifest.json
替换为清单文件的名称。