更新时间:2024-05-13 GMT+08:00
分享

配置管理

本章介绍如何通过IaC代码描述配置信息,支持私有配置和公共配置两种类型。

IaC3.0公共配置集模型与私有配置项绝大部分字段参数一样,具体请参见表1

表1 配置管理字段说明

参数

是否必选

类型

说明

格式校验

name

string

配置集名称

  • 私有配置集:服务环境下name唯一。
  • 公共配置集:产品环境下name唯一。

建议:^[A-Za-z0-9_]{1,64}

type

string

资源类型

  • 私有配置集:WiseCloud::MicroService::PrivateConfig
  • 公共配置集:WiseCloud::MicroService::PublicConfig

-

prefix

string

为虚机订阅坐标,虚机部署按prefix前缀来订阅配置,容器场景下不填。

  • 私有配置样例:/app/cloudeye/WiseEyeConfig/v1/rnd
  • 公共配置样例:/public/cloudeye/test
  • 私有配置:/app/${scope}/${module}/${version}/${tag}
  • 公共配置:/public/${scope}/${tag}

version

私有配置必填

公共配置无此字段

string

配置版本

满足正则:^[A-Za-z0-9_.,:()-]{1,100}

schema

object

配置项属性,描述配置项类型和作用。

properties属性为key-object格式,key是配置名称,object是配置项各项描述。

N/A

description:最大长度256。

format当前支持的类型如表2所示。

records

object

描述配置,key:value格式,key为配置名称,value为配置值。

records数组内:

  • key:满足正则^[A-Za-z0-9_.,:-]{1,100}$
  • value:最大长度5000

format为schema下的一个字段,对配置进行说明,不同的配置项在使用方式上有所不同。

表2 format说明

类型

中文

说明

notype

未分类

不提供时配置项默认为未分类的类型。

sensitive

敏感配置项

标记此配置项为敏感配置项,此类配置项存储的是配置在STS的路径,非配置密文。

env

环境

-

business

调优

-

thirdparty

对接三方配置

-

system

业务系统配置项

-

middleware

中间件配置

-

internal

对接内部服务配置

-

function

服务功能调优配置

-

oap

OAP

-

私有配置样例:

name: my_config
    type: WiseCloud::MicroService::PrivateConfig
    properties:
      prefix: /app/cloudeye/WiseeyeConfig/v1/rnd
      version: v1
      schema:
        type: object
        properties:
          keyl:
            description:
            type: string
            format: notype
          key2:
            description:
            type: string
            format: sensitive
      records:
        key1: value1
        key2: value2

公共配置样例:

name: test_config_lhq
    type: WiseCloud::MicroService::PublicConfig
    properties:
      prefix: /public/cloudeye/wiseEyeConfigService
      schema:
        type: object
        properties:
          key_lhq1:
            description: KEY1相关描述
            type: string
            format: notype
          key_lhq2:
            description: KEY2相关描述
            type: string
            format: notype
      records:
        key_lhq1: value_lhq1
        key_lhq2: value_lhq2

相关文档