命名空间的配置项是一种存储应用所需配置信息的资源类型,它可以作为容器运行环境中的环境变量,便于应用部署后灵活变更容器配置,也可以通过挂载配置文件的方式向容器中注入配置信息。本文介绍如何在SAE控制台创建和使用命名空间的配置项。

背景信息

命名空间的配置项仅用于容器运行环境的存储及配置,如果您需要创建应用代码的配置文件,请参见管理配置

创建配置项

  1. 登录SAE控制台
  2. 在左侧导航栏,单击命名空间,在顶部菜单栏选择地域,然后单击具体命名空间名称。
  3. 在左侧导航栏,单击配置项,在配置项页面,单击创建
  4. 创建配置项面板,选择以下任一方法来创建配置项,并单击确定
    • 手工创建:在默认显示的手工创建页签,输入相关信息。 panel_create_config_tab_manual
      配置项 说明
      配置项名称 自定义。
      配置项描述 自定义。
      配置映射
      • 键的长度不超过250个字符,值的长度不超过10,000个字符。
      • 一个配置项最多可以填写20个键值对。
    • 文件录入:单击文件录入页签,输入相关信息。panel_create_config_tab_upload
      配置项 说明
      配置项名称 自定义。
      配置格式 选择JSONYAML
      配置内容
      • JSON文件格式示例:
        {
          "env.home": "/root",
          "env.shell": "/bin/sh",
          "nginx.conf": "daemon            off;\nworker_processes  2;\nuser              www-data;\n\nevents {\n    use           epoll;\n    worker_connections  128;\n}\n\nerror_log         logs/error.log info;\n\nhttp {\n    server_tokens off;\n    include       mime.types;\n    charset       utf-8;\n\n    access_log    logs/access.log  combined;\n\n    server {\n        server_name   localhost;\n        listen        127.0.0.1:80;\n\n        error_page    500 502 503 504  /50x.html;\n\n        location      / {\n            root      html;\n        }\n\n    }\n\n}"
        }
      • YAML文件格式示例:
        env.home: /root
        env.shell: /bin/sh
        nginx.conf: |
           daemon            off;
            worker_processes  2;
            user              www-data;
        
            events {
                use           epoll;
                worker_connections  128;
            }
        
            error_log         logs/error.log info;
        
            http {
                server_tokens off;
                include       mime.types;
                charset       utf-8;
        
                access_log    logs/access.log  combined;
        
                server {
                    server_name   localhost;
                    listen        127.0.0.1:80;
        
                    error_page    500 502 503 504  /50x.html;
        
                    location      / {
                        root      html;
                    }
        
                }
        
            }
      说明
      • 输入Kubernetes ConfigMap Manifest文件内容,支持JSON、YAML格式。
      • 中文字符仅支持UTF-8编码格式。
      • 文件内容的数据值大小不超过512K。
    创建的配置项将显示在配置项页面,您可以对其进行编辑复制删除的操作。
    说明
    • 修改后的配置项新版本仅生效于应用新实例(如手动新扩容或自动弹性的新实例),对存量实例不生效。为保证应用所有实例配置项版本的最终一致性,您在修改配置项后必须手动重启或部署应用。
    • 删除配置项将会影响这些应用的正常运行。请先在关联应用中解除使用该配置项再删除。

将配置项用作环境变量

配置项可以用作容器运行环境中的环境变量,便于部署后灵活变更容器配置。

  1. 登录SAE控制台
  2. 在左侧导航栏,单击应用列表,在顶部菜单栏选择地域,然后单击创建应用
  3. 应用基本信息配置向导页面,配置相关信息,然后单击下一步:应用部署配置
  4. 应用部署配置页签,输入所有必填信息,并在页面下方展开环境变量设置区域。
  5. 环境变量设置区域的类型下拉列表,选择引用配置项,输入变量名称,并在最右侧的下拉列表选择已创建的配置项名称和该配置项中的键。
    sc_environment_variable_v2.png
    说明 除了在命名空间页面提前创建好配置项,您也可以在环境变量设置区域单击创建配置项(K8s configmap),在创建配置项面板进行创建。
  6. 可选:如需引用其他配置项,单击添加,并重复上一步。
  7. 单击下一步:确认规格
  8. 确认规格配置向导页面,查看您所创建应用的详细信息以及费用配置情况,然后单击确认创建
    页面会跳转至创建完成配置向导页面,您可以单击应用详情页进入基本信息页面。

操作步骤

在创建应用过程中注入配置信息

您可以使用在命名空间配置项页面创建的配置项来向容器中注入配置信息。

  1. 登录SAE控制台
  2. 在左侧导航栏,单击应用列表,在顶部菜单栏选择地域,然后单击创建应用
  3. 应用基本信息配置向导页面,设置应用相关信息,并单击下一步:应用部署配置
  4. 应用部署配置配置向导页面,选择技术栈语言应用部署方式,设置部署信息。
  5. 展开配置管理区域,选择已创建的配置项名称和该配置项中的,并输入挂载配置项的挂载路径
    sc_configuration_management
    说明
    • 除了在命名空间页面提前创建好配置项,您也可以在环境变量设置区域单击创建配置项(K8s configmap),在创建配置项面板创建。
    • 支持挂载全部键。从下拉列表选择全部,将该配置项的所有键挂载到该路径。
  6. 可选:如需引用其他配置项,单击添加,并重复上一步。
  7. 单击下一步:确认规格
  8. 确认规格配置向导页面,查看您所创建应用的详细信息以及配置费用情况,并单击确认创建
    页面会跳转至创建完成配置向导页面,您可以单击应用详情页进入基本信息页面。
  9. 通过以下方式验证配置是否生效。
    • 方式一:

      在应用基本信息页面的左侧导航栏,单击变更记录,在变更记录页面,查看应用变更详情。如果显示执行成功,表示应用部署成功,配置已生效。

    • 方式二:

      在应用基本信息页面,单击实例部署信息页签,查看实例的运行状态。如果运行状态显示为Running,表示应用部署成功,配置已生效。

在部署应用过程中注入配置信息

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

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

  1. 登录SAE控制台
  2. 在左侧导航栏,单击应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。
  3. 基本信息页面右上角,单击部署应用
  4. 展开配置管理区域,选择已创建的配置项名称和该配置项中的,并输入挂载配置项的挂载路径
    sc_configuration_management
    说明
    • 除了在命名空间页面提前创建好配置项,您也可以在环境变量设置区域单击创建配置项(K8s configmap),在创建配置项面板创建。
    • 支持挂载全部键。从下拉列表选择全部,将该配置项的所有键挂载到该路径。
  5. 配置完成后,单击确认
  6. 通过以下方式验证配置是否生效。
    • 方式一:

      在应用基本信息页面的左侧导航栏,单击变更记录,在变更记录页面,查看应用变更详情。如果显示执行成功,表示应用部署成功,配置已生效。

    • 方式二:

      在应用基本信息页面,单击实例部署信息页签,查看实例的运行状态。如果运行状态显示为Running,表示应用部署成功,配置已生效。