Install Operator

目录

术语表

术语定义
operator package包含镜像文件和配置文件的 tgz 压缩包
upload tool用于解析 operator package 并导入/上传到平台的可执行文件
operation machine用于执行安装操作的机器
working directory存放 operator package 和 upload tool 的目录

前提条件

  1. 准备一台可以访问平台的 Windows、Linux 或 macOS 操作机器。推荐使用 Linux,以下说明以 Linux 为例。
  2. 确保操作机器可以访问 platform
  3. 下载 operator package 并保存到操作机器的工作目录。
  4. 安装 operator 需要管理员权限。

获取 Upload Tool

Platform Management -> Marketplace -> Upload Packages 页面下载 upload tool(violet)。 下载后,为该可执行文件设置合适的权限。

上传 Operator

无论是导入新的 operator,还是为已有 operator 添加新版本, 都可以使用 violet 工具完成,命令相同。

在工作目录执行以下命令:

./violet push \
    <operator-package> \
    --platform-address <platform-address> \
    --platform-username <platform-username> \
    --platform-password <platform-password> \
    --clusters <clusters>
  1. 运行 violet 工具将 operator package 上传到平台。
  2. <operator-package>:operator package 的名称(示例:operator.4.0.1.ALL.tgz)。
  3. <platform-address>:平台的 URL 地址(示例:https://platform.example.com)。
  4. <platform-username>:平台用户名,需要具备 Platform Administrator 权限。
  5. <platform-password>:平台密码。
  6. <clusters>:需要上传 operator 的集群列表,逗号分隔(示例:global,business)。

执行成功后,会输出如下信息:

INFO[0024] artifactversion <operator-name>.<operator-version> not found, create it  cluster=business type=bundle
INFO[0024] artifactversion <operator-name>.<operator-version> has been created successfully  cluster=business type=bundle

然后进入平台的 Platform Management -> Marketplace -> Upload Packages 页面, 搜索 operator 关键字,点击 operator 名称进入 operator 详情页面。

详情页面会显示 operator 的新版本, 状态为 Uploaded 表示上传成功。

后续步骤

Operator 上传完成后,可前往 Platform Management -> Marketplace -> Operator Hub 页面,切换到目标集群,部署对应的 Operator。

故障排除

推送软件包到外部镜像仓库

如果需要将 operator package 推送到外部镜像仓库,可以使用以下参数:

参数定义示例
--dst-repo目标镜像仓库地址--dst-repo registry.example.com
--username目标镜像仓库用户名--username admin
--password目标镜像仓库密码--password *******

例如:

./violet push \
    <operator-package> \
    --platform-address <platform-address> \
    --platform-username <platform-username> \
    --platform-password <platform-password> \
    --clusters <clusters> \
    --dst-repo <dst-repo> \
    --username <username> \
    --password <password>

如果目标镜像仓库使用明文(http)协议,需要额外指定 --plain 参数,如下:

./violet push \
    ... \
    --dst-repo <dst-repo> \
    --username <username> \
    --password <password> \
    --plain