镜像仓库
UCS深度整合了华为云容器镜像服务(SWR)能力,支持镜像全生命周期管理,为您提供简单易用、安全可靠的镜像管理功能,帮助您快速部署容器化服务。
通过使用容器镜像服务,您无需自建和维护镜像仓库,即可享有云上的镜像安全托管及高效分发服务,获得容器上云的顺畅体验。
产品功能
- 镜像全生命周期管理
- 私有镜像仓库
- 镜像加速
- 镜像仓库触发器
容器镜像服务支持容器镜像版本更新自动触发部署。您只需要为镜像设置一个触发器,通过触发器,可以在每次镜像版本更新时,自动更新使用该镜像部署的应用。
- 镜像安全扫描(通过集成容器安全HSS)
约束与限制
通过私网接入的附着集群可能无法使用镜像仓库功能,如需使用,请确保集群具有访问公网的能力。
上传镜像
- 登录UCS控制台,在左侧导航栏中单击“镜像仓库”。
- 查看当前镜像仓库的基本信息,单击此镜像仓库,进入容器镜像服务。
图1 镜像仓库
- 容器镜像服务上传镜像的详细操作请参见客户端上传镜像。
使用镜像
通过UCS管理的集群及联邦,均支持使用镜像仓库创建工作负载。镜像上传成功后,在集群中创建工作负载时可选择“镜像创建”,以UCS接管的CCE集群为例,具体操作如下:
- 登录集群控制台。
- 在新页面的左侧导航栏中选择“工作负载”,然后单击右上角“镜像创建”按钮。
- 在“基本信息”栏输入工作负载参数,以创建无状态工作负载为例。
- 负载类型:无状态工作负载。
- 负载名称:负载名称可自定义。
- 实例数量:请根据业务需要自行选择。
- 描述:请输入描述信息。
- 时区同步:选择是否开启时区同步。开启后容器与节点使用相同时区(时区同步功能依赖容器中挂载的本地磁盘,请勿修改删除)。
- 在“容器配置”栏单击“选择镜像”。
在“我的镜像”页签下,选择已上传的镜像,单击“确定”。
- 如所选镜像为公开镜像,无需选取“镜像访问凭证”。
- 如所选镜像为用户在镜像仓库中上传的私有镜像,需选取“镜像访问凭证”,否则无法拉取成功。
单击“创建密钥”,可创建镜像仓库的镜像访问凭证,具体操作参见创建镜像密钥。
图2 容器配置
- 单击“创建工作负载”,完成创建。如您想了解更多创建工作负载的步骤,请参见无状态负载。
创建镜像密钥
华为云集群在创建时默认生成一个名为default-secret的密钥,其中包含SWR的访问凭证,因此无需重新创建镜像密钥。
附着集群在使用SWR中的私有镜像时,需创建镜像密钥用于拉取SWR镜像,操作步骤如下:
- 登录集群控制台。
- 在新页面的左侧导航栏中单击“配置项与密钥”,并选择“密钥”页签。
- 单击右上角“创建密钥”,并填写参数。
图3 创建密钥
表1 基本信息说明 参数
参数说明
名称
新建的密钥的名称,同一个命名空间内命名必须唯一。
命名空间
新建密钥所在的命名空间,默认为default。
描述
密钥的描述信息。
密钥类型
新建的密钥类型,选择kubernetes.io/dockerconfigjson类型,用于存放拉取私有仓库镜像所需的认证信息。
镜像仓库地址
镜像仓库地址为“swr.区域.myhuaweicloud.com”,如“华北-北京四”对应的镜像仓库地址为:swr.cn-north-4.myhuaweicloud.com。SWR的应用区域请参见地区和终端节点。
密钥数据
工作负载密钥的数据可以在容器中使用,输入私有镜像仓库的用户名和密码。
使用SWR时,用户名密码的获取方式如下:
- 单击右上角用户名,前往“我的凭证 > 管理访问密钥”,单击“新增访问密钥”,即可在下载的“credentials.csv”文件中获取AK和SK信息。
AK/SK文件仅能下载一次,请妥善保存。更多说明请参见访问密钥。
- 登录一台linux系统的计算机,执行如下命令获取登录密钥,其中$AK和$SK为上一步获取的AK/SK。
printf "$AK" | openssl dgst -binary -sha256 -hmac "$SK" | od -An -vtx1 | sed 's/[ \n]//g' | sed 'N;s/\n//'
- 用户名为“[区域项目名称]@[AK]”,例如“cn-north-4@***”。
密码为2中获取的登录密钥。
密钥标签
密钥的标签。键值对形式,输入键值对后单击“添加”。
- 单击右上角用户名,前往“我的凭证 > 管理访问密钥”,单击“新增访问密钥”,即可在下载的“credentials.csv”文件中获取AK和SK信息。