保密字典(K8s Secret)是一种用于存储工作负载所需认证信息、密钥等敏感信息的资源类型。如果您需要在SAE环境中使用敏感的配置,推荐使用保密字典。本文介绍如何在SAE控制台创建命名空间级别的保密字典,并在部署应用与任务时拉取保密字典。

前提条件

已创建命名空间

背景信息

SAE保密字典解决了密码、Token、密钥等敏感数据的配置问题,避免此类敏感数据暴露到镜像或应用与任务的部署参数中。配置保密字典后,您可以在创建或部署时,通过镜像将配置信息直接注入容器。如果后续修改了保密字典内容,只需重新部署应用与任务便可生效。

如果您的配置信息无需加密,可以使用SAE的配置项功能。具体操作,请参见管理和使用配置项(K8s ConfigMap)

注意事项

  • SAE的镜像部署,默认为免密拉取镜像。如果部署时使用保密字典,则原有免密拉取镜像不再生效。如果需要免密拉取镜像,请先重新部署,并取消选择保密字典。
  • 修改后的保密字典新版本仅生效于应用新实例(如手动新扩容或自动弹性的新实例),对存量实例不生效。为保证应用所有实例保密字典版本的最终一致性,您在修改保密字典后必须手动重启或部署应用。
  • 如果已有应用与任务正在使用该保密字典,删除该保密字典将会影响这些应用与任务的正常运行。请先在关联应用与任务中解除使用该保密字典再删除。

创建保密字典

  1. 登录SAE控制台
  2. 在左侧导航栏,单击命名空间,在顶部菜单栏选择地域,然后单击具体命名空间名称。
  3. 在左侧导航栏,单击保密字典,在保密字典页面,单击创建
  4. 创建面板,配置相关信息,然后单击确定
    配置项说明
    名称自定义。
    类型创建的保密字典类型,支持Opaque私有镜像仓库登录密钥TLS证书
    Opaque创建Opaque类型的保密字典,需要设置以下信息。
    • 对数据值进行Base64编码:默认选中,SAE会对明文数据进行Base64编码。
    • 键值对:敏感信息的Key和Value。
    私有镜像仓库登录密钥创建私有镜像仓库登录密钥类型的保密字典,需要设置以下信息。
    • 镜像仓库地址:敏感信息所在镜像仓库地址。关于如何获取镜像仓库地址,请参见镜像仓库
      说明 请填写VPC内网域名的镜像仓库地址,例如registry-vpc.cn-beijing.aliyuncs.com
    • 用户名:镜像仓库的用户名。
    • 密码:镜像仓库的密码。

    创建成功后,可以通过镜像拉取保密字典。更多信息,请参见通过保密字典拉取镜像

    TLS证书创建TLS证书类型的保密字典,需要设置以下信息。
    • Cert:TLS证书的公钥。
    • Key:TLS证书的私钥。
    创建的配置项将显示在保密字典页面,您可以在保密字典列表的操作列进行编辑复制删除等操作。

通过保密字典拉取镜像

如果想要通过保密字典拉取镜像,您需要先创建私有镜像仓库登录密钥类型的保密字典。本文仅介绍配置保密字典的关键信息。关于配置项的更多信息,请参见将Demo应用部署到SAE任务模板管理

在创建应用过程中配置保密字典

  1. 登录SAE控制台
  2. 在左侧导航栏,单击应用列表,在顶部菜单栏选择地域,然后单击创建应用
  3. 应用基本信息配置向导页面,配置相关信息,然后单击下一步:应用部署配置
  4. 应用部署配置配置向导页面,配置相关信息。
    本文仅介绍关键步骤。
    1. 应用部署方式选择镜像
    2. 配置镜像区域,单击其它阿里云账号私有镜像页签,按需选择镜像服务版本镜像类型选择静态用户名和密码
    3. 可选:镜像服务版本选择镜像服务企业版时,输入企业版实例ID
    4. 存储镜像仓库用户名和密码的保密字典下拉列表,选择已创建的保密字典,并输入完整镜像仓库地址
    5. 单击下一步:确认规格
  5. 确认规格配置向导页面,查看您所创建应用的详细信息以及费用配置情况,然后单击确认创建
    页面会跳转至创建完成配置向导页面,您可以单击应用详情页进入基本信息页面。

在部署应用过程中配置保密字典

警告 重新部署应用后,该应用将会被重启。为避免对业务产生不可预估的影响,请在业务低峰期执行部署操作。

更新应用配置的路径因实例数的不同而不同。本文以实例数大于等于1为例,介绍如何配置目标功能。当实例数等于0时的操作路径,请参见更新应用

  1. 登录SAE控制台
  2. 在左侧导航栏,单击应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。
  3. 基本信息页面右上角,单击部署应用
  4. 部署应用页面,配置相关信息。
    本文仅介绍关键步骤。
    1. 配置镜像区域,单击修改镜像,然后在修改镜像面板,单击其它阿里云账号私有镜像页签,按需选择镜像服务版本镜像类型选择静态用户名和密码
    2. 可选:镜像服务版本选择镜像服务企业版时,输入企业版实例ID
    3. 存储镜像仓库用户名和密码的保密字典下拉列表,选择已创建的保密字典,并输入完整镜像仓库地址
  5. 配置完成后,单击确认

在创建任务模板过程中配置保密字典

  1. 登录SAE控制台
  2. 在左侧导航栏,单击任务模板列表,在顶部菜单栏选择地域。
  3. 任务模板列表页面,单击创建任务模板
  4. 任务基本信息配置向导页面,设置相关信息,然后单击下一步:部署配置
  5. 部署配置配置向导页面,设置相关信息。
    本文仅介绍关键步骤。
    1. 任务部署方式选择镜像
    2. 配置镜像区域,单击其它阿里云账号私有镜像页签,按需选择镜像服务版本镜像类型选择静态用户名和密码
    3. 可选:镜像服务版本选择镜像服务企业版时,输入企业版实例ID
    4. 存储镜像仓库用户名和密码的保密字典下拉列表,选择已创建的保密字典,并输入完整镜像仓库地址
    5. 单击下一步:任务设置
  6. 任务设置配置向导页面,配置相关信息,单击下一步:确认规格
  7. 确认规格配置向导页面,仔细确认配置信息,然后单击确认创建
    创建完成后,在任务模板列表页面,查看已创建的任务信息。

在编辑任务模板过程中配置保密字典

  1. 登录SAE控制台
  2. 在左侧导航栏,单击任务模板列表,在顶部菜单栏选择地域,单击具体任务名称。
  3. 任务模板详情页面,单击编辑任务模板
  4. 任务设置配置向导页面,修改相关信息,然后单击下一步:部署配置
  5. 部署配置配置向导页面,修改相关信息。
  6. 部署配置配置向导页面,修改相关信息。
    本文仅介绍关键步骤。
    1. 配置镜像区域,单击修改镜像,然后在修改镜像面板,单击其它阿里云账号私有镜像页签,按需选择镜像服务版本镜像类型选择静态用户名和密码
    2. 可选:镜像服务版本选择镜像服务企业版时,输入企业版实例ID
    3. 存储镜像仓库用户名和密码的保密字典下拉列表,选择已创建的保密字典,并输入完整镜像仓库地址
  7. 配置完成后,单击确认
  8. 配置完成后,单击确认
    任务模板详情页面上方,单击查看详情进入变更详情页面,查看任务的执行状态。