vi /var/named/zq.com.zone
zk-test A 10.4.7.11
zk-prod A 10.4.7.12
apollo-testconfig A 10.4.7.10
apollo-prodconfig A 10.4.7.10
dubbo-testdemo A 10.4.7.10
dubbo-proddemo A 10.4.7.10
sed -i ‘s#ApolloConfigDB#ApolloConfigTestDB#g’ apolloconfigTest.sql sed -i ‘s#ApolloConfigDB#ApolloConfigProdDB#g’ apolloconfigProd.sql
导入数据库
mysql -uroot -p123456 < apolloconfigTest.sql mysql -uroot -p123456 < apolloconfigProd.sql
1.3.2 修改数据库中eureka地址
这里用到了两个新的域名,域名解析已经在添加zk域名那里一起加了
mysql -uroot -p123456
1.修改eureka注册中心配置
> update ApolloConfigProdDB.ServerConfig set ServerConfig.Value="http://apollo-prodconfig.zq.com/eureka" where ServerConfig.Key="eureka.service.url"; > update ApolloConfigTestDB.ServerConfig set ServerConfig.Value="http://apollo-testconfig.zq.com/eureka" where ServerConfig.Key="eureka.service.url";
2.在portl库中增加支持fat环境和pro环境
> update ApolloPortalDB.ServerConfig set Value=‘fat,pro’ where Id=1;
3.授权数据库访问用户
> grant INSERT,DELETE,UPDATE,SELECT on ApolloConfigProdDB.* to "apollo"@"10.4.7.%"; > grant INSERT,DELETE,UPDATE,SELECT on ApolloConfigTestDB.* to "apollo"@"10.4.7.%";
1.4 变动原有资源配置启动
1.4.1 修改portal的cm资源配置清单
7.200运维机操作,增加两个新环境的支持
cd /data/k8s-yaml/apollo-portal/
sed -i '$a\ fat.meta=http://apollo-testconfig.zq.com' cm.yaml
sed -i '$a\ pro.meta=http://apollo-prodconfig.zq.com' cm.yaml
cd /data/k8s-yaml/test/apollo-configservice/
sed -ri 's#(namespace:) infra#\1 test#g' cm.yaml
sed -i 's#ApolloConfigDB#ApolloConfigTestDB#g' cm.yaml
sed -i 's#apollo-config.zq.com#apollo-testconfig.zq.com#g' cm.yaml
2.2.2 修改dp,ns,inress资源清单
# 1.dp只需要修改namesapce空间
sed -ri 's#(namespace:) infra#\1 test#g' dp.yaml
2.svc同样只需要修改namespace
sed -ri ‘s#(namespace:) infra#\1 test#g’ svc.yaml
3.ingress需要修改namespace和域名
sed -ri ‘s#(namespace:) infra#\1 test#g’ ingress.yaml sed -i ‘s#apollo-config.zq.com#apollo-testconfig.zq.com#g’ ingress.yaml
cd /data/k8s-yaml/test/apollo-adminservice/
sed -ri 's#(namespace:) infra#\1 test#g' cm.yaml
sed -i 's#ApolloConfigDB#ApolloConfigTestDB#g' cm.yaml
sed -i 's#apollo-config.zq.com#apollo-testconfig.zq.com#g' cm.yaml
2.3.2 修改dp资源清单
# 1.dp只需要修改namesapce空间
sed -ri 's#(namespace:) infra#\1 test#g' dp.yaml
cd /data/k8s-yaml/prod/apollo-configservice/
sed -ri 's#(namespace:) infra#\1 prod#g' cm.yaml
sed -i 's#ApolloConfigDB#ApolloConfigProdDB#g' cm.yaml
sed -i 's#apollo-config.zq.com#apollo-prodconfig.zq.com#g' cm.yaml
2.4.2 修改dp,ns,inress资源清单
# 1.dp只需要修改namesapce空间
sed -ri 's#(namespace:) infra#\1 prod#g' dp.yaml
2.svc同样只需要修改namespace
sed -ri ‘s#(namespace:) infra#\1 prod#g’ svc.yaml
3.ingress需要修改namespace和域名
sed -ri ‘s#(namespace:) infra#\1 prod#g’ ingress.yaml sed -i ‘s#apollo-config.zq.com#apollo-prodconfig.zq.com#g’ ingress.yaml
cd /data/k8s-yaml/prod/apollo-adminservice/
sed -ri 's#(namespace:) infra#\1 prod#g' cm.yaml
sed -i 's#ApolloConfigDB#ApolloConfigProdDB#g' cm.yaml
sed -i 's#apollo-config.zq.com#apollo-prodconfig.zq.com#g' cm.yaml
2.5.2 修改dp资源清单
# 1.dp只需要修改namesapce空间
sed -ri 's#(namespace:) infra#\1 prod#g' dp.yaml
cd /data/k8s-yaml/
cp ./dubbo-server/* ./test/dubbo-demo-server/
cp ./dubbo-consumer/* ./test/dubbo-demo-consumer/
3.1.1 修改server资源配置清单
只修改dp的ns配置和apollo配置
cd /data/k8s-yaml/test/dubbo-demo-server
sed -ri 's#(namespace:) app#\1 test#g' dp.yaml
sed -i 's#Denv=dev#Denv=fat#g' dp.yaml
sed -i 's#apollo-config.zq.com#apollo-testconfig.zq.com#g' dp.yaml
cd /data/k8s-yaml/test/dubbo-demo-consumer
# 1.修改dp中的ns配置和apollo配置
sed -ri 's#(namespace:) app#\1 test#g' dp.yaml
sed -i 's#Denv=dev#Denv=fat#g' dp.yaml
sed -i 's#apollo-config.zq.com#apollo-testconfig.zq.com#g' dp.yaml
2.修改svc中的ns配置
sed -ri ‘s#(namespace:) app#\1 test#g’ svc.yaml
3.修改ingress中的ns配置和域名
sed -ri ‘s#(namespace:) app#\1 test#g’ ingress.yaml sed -i ‘s#dubbo-demo.zq.com#dubbo-testdemo.zq.com#g’ ingress.yaml
cd /data/k8s-yaml/
cp ./dubbo-server/* ./prod/dubbo-demo-server/
cp ./dubbo-consumer/* ./prod/dubbo-demo-consumer/
3.2.1 修改server资源配置清单
只修改dp的ns配置和apollo配置
cd /data/k8s-yaml/prod/dubbo-demo-server
sed -ri 's#(namespace:) app#\1 prod#g' dp.yaml
sed -i 's#Denv=dev#Denv=pro#g' dp.yaml
sed -i 's#apollo-config.zq.com#apollo-prodconfig.zq.com#g' dp.yaml
cd /data/k8s-yaml/prod/dubbo-demo-consumer
# 1.修改dp中的ns配置和apollo配置
sed -ri 's#(namespace:) app#\1 prod#g' dp.yaml
sed -i 's#Denv=dev#Denv=pro#g' dp.yaml
sed -i 's#apollo-config.zq.com#apollo-prodconfig.zq.com#g' dp.yaml
2.修改svc中的ns配置
sed -ri ‘s#(namespace:) app#\1 prod#g’ svc.yaml
3.修改ingress中的ns配置和域名
sed -ri ‘s#(namespace:) app#\1 prod#g’ ingress.yaml sed -i ‘s#dubbo-demo.zq.com#dubbo-proddemo.zq.com#g’ ingress.yaml