第四章:配置管理¶
命名空间管理¶
创建命名空间¶
# 创建私有命名空间
curl -X POST \
'http://localhost:8070/apps/order-service/namespaces' \
-H 'Content-Type: application/json' \
-d '{
"name": "redis",
"format": "properties",
"isPublic": false
}'
# 创建公共命名空间
curl -X POST \
'http://localhost:8070/apps/order-service/namespaces' \
-H 'Content-Type: application/json' \
-d '{
"name": "common",
"format": "properties",
"isPublic": true
}'
关联命名空间¶
# 关联公共命名空间
curl -X POST \
'http://localhost:8070/apps/order-service/namespaces/common/associations' \
-H 'Content-Type: application/json' \
-d '{
"appId": "order-service",
"clusterName": "default",
"namespaceName": "common"
}'
配置项管理¶
添加配置项¶
# 添加配置项
curl -X POST \
'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/items' \
-H 'Content-Type: application/json' \
-d '{
"key": "spring.datasource.url",
"value": "jdbc:mysql://localhost:3306/order_db",
"comment": "数据库连接"
}'
修改配置项¶
# 修改配置项
curl -X PUT \
'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/items/spring.datasource.url' \
-H 'Content-Type: application/json' \
-d '{
"key": "spring.datasource.url",
"value": "jdbc:mysql://192.168.1.100:3306/order_db",
"comment": "数据库连接(更新)"
}'
删除配置项¶
# 删除配置项
curl -X DELETE \
'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/items/spring.datasource.url'
配置发布¶
发布配置¶
# 发布配置
curl -X POST \
'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/releases' \
-H 'Content-Type: application/json' \
-d '{
"releaseTitle": "v1.0.0",
"releaseComment": "更新数据库连接",
"releasedBy": "admin"
}'
回滚配置¶
# 获取历史版本
curl 'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/releases'
# 回滚到指定版本
curl -X POST \
'http://localhost:8070/releases/{releaseId}/rollback'
灰度发布¶
创建灰度¶
# 创建灰度
curl -X POST \
'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/grayscale' \
-H 'Content-Type: application/json' \
-d '{
"operator": "admin"
}'
配置灰度规则¶
# 配置灰度规则(按 IP)
curl -X POST \
'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/grayscale/rules' \
-H 'Content-Type: application/json' \
-d '{
"ip": "192.168.1.100,192.168.1.101"
}'
发布灰度¶
# 发布灰度
curl -X POST \
'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/grayscale/releases' \
-H 'Content-Type: application/json' \
-d '{
"releaseTitle": "灰度发布 v1.1.0",
"releaseComment": "灰度测试",
"releasedBy": "admin"
}'
全量发布¶
# 全量发布
curl -X POST \
'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/grayscale/master/releases' \
-H 'Content-Type: application/json' \
-d '{
"releaseTitle": "全量发布 v1.1.0",
"releaseComment": "全量发布",
"releasedBy": "admin"
}'
配置导入导出¶
导出配置¶
# 导出命名空间配置
curl 'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/export' \
-o config.properties
导入配置¶
# 导入配置
curl -X POST \
'http://localhost:8070/apps/order-service/clusters/default/namespaces/application/import' \
-F 'file=@config.properties'
小结¶
配置管理要点:
- 命名空间管理:创建、关联
- 配置项管理:添加、修改、删除
- 配置发布:发布、回滚
- 灰度发布:创建灰度、配置规则、发布灰度、全量发布
- 配置导入导出:导出、导入
下一章我们将学习集群部署。