guide/namespace/multi-env.md
在实际开发项目的过程中,我们必然会碰到如下场景:
当我们的微服务系统较为复杂时,一个环境中可能需要部署许多(几十个甚至更多)的微服务部署单元,这个时候,重复在多套环境中执行部署任务就会变得容易出错。
Kuboard 针对这种场景,提供了导出配置、导入配置的功能,以便运维人员可以轻易的复制多套部署环境。
必须满足如下条件:
部署微服务过程中,您还可能用到 kuboard 的配置编辑功能、Secrets 编辑功能 等。
假设您已完成微服务部署,并已进入 namespace 界面,如下图所示:
点击 下一步
选择要导出的配置(configMap)信息
点击 下一步
选择要导出的 Secrets
查看已导出文件
导出文件的命名格式为 kuboard_namespace_date_time.yaml,例如:
kuboard_example_2019_07_21_09_09_47.yaml
导出文件的内容如下所示:
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
namespace: example
name: cloud-eureka
annotations:
k8s.eip.work/workload: cloud-eureka
k8s.eip.work/displayName: 服务注册
k8s.eip.work/service: ClusterIP
k8s.eip.work/ingress: 'true'
labels:
k8s.eip.work/layer: cloud
k8s.eip.work/name: cloud-eureka
spec:
selector:
matchLabels:
k8s.eip.work/layer: cloud
k8s.eip.work/name: cloud-eureka
template:
metadata:
...
该文件可以通过 kubectl apply -f 命令直接执行,但是建议使用 kuboard 进行导入,以便在导入时在线编辑在特定于新环境的配置信息。
您已经通过 kuboard 导出了配置文件,或者从别处获取到 kuboard 导出的配置文件
请参考 导入 example 微服务