Upload Packages
平台提供了一个命令行工具 violet,用于将从 Marketplace 中 Customer Portal 下载的软件包上传到平台。
violet 支持上传以下类型的软件包:
- Operator
- 集群插件
- Helm Chart
当 Cluster Plugins 或 OperatorHub 中的软件包状态显示为 Absent 时,需要使用该工具上传对应的软件包。
violet 的上传流程主要包括以下步骤:
- 解包并提取软件包信息
- 将镜像推送到镜像仓库
- 在平台上创建 Artifact 和 ArtifactVersion 资源
目录
下载工具
登录 Customer Portal,进入 Downloads 页面,点击 CLI Tools。下载与您的操作系统和架构匹配的二进制文件。
下载完成后,将工具安装到服务器或 PC 上。
Linux 或 macOS
非 root 用户:
root 用户:
Windows
-
下载文件并重命名为
violet.exe,或者使用 PowerShell 重命名: -
在 PowerShell 中运行该工具。
注意:如果工具路径未添加到环境变量,运行命令时必须指定完整路径。
前置条件
权限要求
- 必须提供有效的平台用户账号(用户名和密码)。
- 账号的 role 属性必须设置为
System,且角色名称必须为platform-admin-system。
注意: 如果账号的 role 属性设置为
Custom,则无法使用该工具。
使用方法
violet show
上传软件包前,可使用 violet show 命令预览软件包详情。
violet push
以下示例展示了常见的使用场景。
在深入示例之前,先介绍命令中常用的可选参数:
上传 Operator 到多个集群
INFO
- 如果未指定
--clusters,Operator 默认上传到 global 集群。\
上传 Operator 到备用 global 集群
上传集群插件
INFO
- 上传集群插件时无需指定
--clusters参数,平台会根据亲和性配置自动分发。 如果指定了--clusters,该参数将被忽略。\
上传 Helm Chart 到 chart 仓库
INFO
- Helm Chart 只能上传到平台提供的默认
public-charts仓库。\
仅推送目录中所有软件包的镜像
当从 Marketplace 下载多个软件包时,可将它们放在同一目录下,一次性上传:
仅创建目录中所有软件包的 CR 资源
当从 Marketplace 下载多个软件包时,可将它们放在同一目录下,一次性上传:
WARNING
当升级目标为 global 集群 时,可省略 --clusters 参数,默认上传到 global 集群。
但当升级目标为业务集群时,必须 指定 --clusters <workload_cluster_name> 参数。