更新时间:2022-06-17 GMT+08:00

创建密钥

密钥Secret)是一种用于存储工作负载所需要认证信息、密钥的敏感信息等的资源类型,内容由用户决定。资源创建完成后,可在容器工作负载中作为文件或者环境变量使用。

创建密钥

  1. 登录集群控制台,单击左侧导航栏的配置中心 > 密钥(Secret)。您还可以直接创建密钥或基于YAML来创建,若希望通过YAML创建,请跳转至3
  2. 单击“创建密钥”。

    参照表1设置基本信息。带“*”号为必填项。
    表1 基本信息说明

    参数

    参数说明

    *密钥名称

    新建的密钥的名称,同一个命名空间内命名必须唯一。

    *集群名称

    选择需要创建密钥的集群。

    *命名空间

    新建密钥所在的命名空间,默认为default。

    描述

    密钥的描述信息。

    *密钥类型

    新建的密钥类型。

    • Opaque:一般密钥类型。
    • kubernetes.io/dockerconfigjson:存放拉取私有仓库镜像所需的认证信息。
    • IngressTLS:存放7层负载均衡服务所需的证书。
    • 其他:若需要创建其他类型的密钥,请手动输入密钥类型。

    *密钥数据

    工作负载密钥的数据可以在容器中使用。

    • 当密钥为Opaque类型时。
      1. 单击“添加更多密钥数据” 。
      2. 输入键、值。其中“值”必须使用Base64编码,Base64编码方法请参见如何进行Base64编码
    • 当密钥为dockerconfigjson类型时。输入私有镜像仓库的帐号和密码。
    • 当密钥为IngressTLS类型时。上传证书文件和私钥文件。

    标签

    标签以Key/value键值对的形式附加到各种对象上(如工作负载、节点、服务等)。

    标签定义了这些对象的可识别属性,用来对它们进行管理和选择。

    1. 单击“添加标签” 。
    2. 输入键、值。

  3. 基于YAML文件创建密钥。在创建配置项页面右侧单击“YAML创建”

    若需要通过上传文件的方式创建资源,请确保资源描述文件已创建。MCP支持json或yaml格式,详细请参见Secret资源文件配置说明

    您可以导入或直接编写文件内容,格式为YAML或JSON。
    • 方式一:导入编排文件。

      单击“上传YAML”,导入格式为YAML或JSON的文件。编排内容中可直接展示YAML或JSON文件的内容。

    • 方式二:直接编排内容。

      在编排内容区域框中,输入YAML或JSON文件内容。

  4. 配置完成后,单击“创建”。

    密钥列表中会出现新创建的密钥。

Secret资源文件配置说明

本章节主要介绍Secret类型的资源描述文件的配置示例。

例如现在有一个工作负载需要获取帐号密码,可以通过Secret来实现:

  • yaml文件格式

    定义的Secret文件secret.yaml内容如下。其中Value需要用Base64,Base64编码方法请参见如何进行Base64编码

    apiVersion: v1
    kind: Secret
    metadata:
      name: mysecret           # secret的名称
      namespace: default       #命名空间,默认为default
    data:
      username: bXktdXNlcm5hbWUK  #用户名,需要用Base64编码
      password: ******  #需要用Base64编码
    type: Opaque     # type建议不要做修改
  • json文件格式

    定义的Secret文件secret.json内容如下。

    {
      "apiVersion": "v1",
      "kind": "Secret",
      "metadata": {
        "name": "mysecret",
        "namespace": "default"
      },
      "data": {
        "username": "bXktdXNlcm5hbWUK",
        "password": "******"
      },
      "type": "Opaque"
    }

相关操作

密钥创建完成后,您还可以执行表2中的操作。

密钥列表中包含系统密钥资源,系统密钥资源不可更新,也不能删除,只能查看。

表2 其他操作

操作

说明

查看YAML

单击密钥名称后的“YAML”,可查看到当前密钥的YAML文件。

更新密钥

  1. 选择需要更新的密钥名称,单击“更新”。
  2. 根据表1更改信息。
  3. 单击“更新”。

删除密钥

选择要删除的密钥,单击“删除”。

根据系统提示删除密钥。

批量删除密钥

  1. 勾选需要删除的密钥名称。
  2. 单击页面左上角的“删除”,删除勾选的密钥。
  3. 根据系统提示删除密钥。

如何进行Base64编码

对字符串进行Base64加密,可以直接使用“echo -n 要编码的内容 | base64”命令即可,示例如下:

root@ubuntu:~# echo -n "待编码内容" | base64
******