密钥(Secret)是一种用于存储应用认证信息、应用密钥等敏感信息的资源,内容由用户决定。密钥创建完成后,可在应用中作为文件或者环境变量使用。
前提条件
- 已创建需要使用密钥的集群。
- 创建混合集群,请参考“帮助中心 > 云容器引擎 > 用户指南 > 集群管理 > 创建混合集群”。
- 已创建密钥所在命名空间,请参考“帮助中心 > 云容器引擎 > 用户指南 > 集群管理 > 命名空间”。
创建密钥
1、登录ServiceStage控制台,选择“应用管理 > 应用配置 > 密钥”。
2、单击“创建密钥”。
3、ServiceStage支持“可视化”和“YAML”两种方式来创建密钥。
- 方式一:可视化。参照下表设置基本信息,其中带“*”标志的参数为必填参数。
表 基本信息说明
参数 | 参数说明 |
---|---|
基本信息 | |
*密钥名称 | 新建的密钥的名称,同一个命名空间内命名必须唯一。 |
*所在集群 | 使用新建密钥的集群。 单击“创建集群”,可以新建集群。 |
*命名空间 | 新建密钥所在的命名空间,默认为default。 |
描述 | 密钥的描述信息。 单击“创建命名空间”,可以新建命名空间。 |
*密钥类型 | 根据业务需要选择新建的密钥类型。* Opaque:一般密钥类型。当密钥配置文件中未作显式设定时,默认的密钥类型是Opaque。* kubernetes.io/dockerconfigjson:存放拉取私有仓库镜像所需的认证信息。* IngressTLS:存放7层负载均衡服务所需的证书。* 其他:若需要创建其他类型的密钥,请手动输入密钥类型。 |
*镜像仓库地址 | 当“密钥类型”选择kubernetes.io/dockerconfigjson时有效。输入镜像仓库的地址。 |
密钥数据 | 应用密钥的文件data字段值。* 当密钥为Opaque类型时,输入键、值。其中“值”必须使用Base64编码。单击“添加更多密钥数据”,可以增加密钥数据 。* 当密钥为kubernetes.io/dockerconfigjson类型时,输入“镜像仓库地址”、“用户名”和“密码”。* 当密钥为IngressTLS类型时,上传“证书文件”和“私钥文件”。* 当密钥为其他类型时,输入“密钥类型”及对应的“键”、“值”。 |
密钥标签 | 标签以Key/value键值对的形式附加到各种对象上(如应用、节点、服务等)。 标签定义了这些对象的可识别属性,用来对它们进行管理和选择。 单击“添加标签” 。 输入键、值。 |
- 方式二:YAML。
若需要通过上传文件的方式创建资源,请确保资源描述文件已创建。ServiceStage支持yaml格式,详情请参考Secret资源文件配置说明。
a.在“所在集群”下拉框中,选择相应的集群。
b.(可选)单击“上传文件”,选择已创建的Secret类型资源文件后,单击“打开”。
请上传小于2MB的文件。
c.在“编排内容”中写作或者修改上传的Secret资源文件。
4、配置完成后,单击“创建”。
密钥列表中会出现新创建的密钥。
Secret资源文件配置说明
本内容主要介绍Secret类型的资源描述文件的配置示例。
例如现在有一个应用需要获取帐号密码,可以通过Secret来实现:
username: my-username
password: my-password
定义的Secret文件secret.yaml内容如下。其中Value需要用Base64,Base64编码方法请参考Base64编码。
apiVersion: v1
kind: Secret
metadata:
name: mysecret # secret的名称
namespace: default #命名空间,默认为default
data:
username: ****** #需要用Base64编码
password: ****** #需要用Base64编码
type: Opaque # type建议不要做修改
Base64编码
对字符串进行Base64加密,可以在本地Linux环境下,直接使用echo -n '编码内容' | base64命令即可。示例如下:
root@ubuntu:~# echo -n '3306' | base64
MzMwNg==
其中,3306为要编码的内容。
管理密钥
操作 | 说明 |
---|---|
更新密钥 | 单击目标密钥“操作”列的“更新”。 根据表-基本信息说明——更改信息。 单击“更新密钥”。 |
删除密钥 | 单击目标密钥“操作”列的“删除”,根据系统提示删除配置。 |
批量删除密钥 | 勾选需要删除的密钥。 单击页面左上角的“删除”,根据系统提示删除密钥。 |
查看密钥 | 单击目标密钥“操作”列的“查看YAML”,查看密钥yaml格式文件内容。 |
说明密钥列表中包含系统密钥资源,系统密钥资源不可更新,也不能删除,只能查看。