k8s使用config-syncer(kubed)同步secret
集群内同步
使用argocd 部署 config-syncer(kubed)
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: dev-config-syncer
namespace: cicd
spec:
destination:
name: cloud-k8s-test
namespace: kube-system
project: dev-config-syncer
source:
chart: kubed
helm:
valueFiles:
- values.yaml
repoURL: https://charts.appscode.com/stable/
targetRevision: v0.13.2在kube-system 创建源 secret/configmap 配置
略
源 Secret 设置 kubed.appscode.com/sync Namespace Selector 注解
kubed.appscode.com/sync Namespace Selector 注解同步目标namespace 设置对应label
查看同步的registry secret
清理集群内同步的secret,谨慎操作,会同步删除集群内所有关联secret
跨集群同步
使用argocd 部署 config-syncer(kubed)
注:默认的config-syncer 跨集群同步,不支持rancher 代理的k8s cluster api地址, 相同的域名端口会被误判为同一个集群,导致同步失败,下面部署用的config-syncer 镜像是我修改过代码支持了rancher 代理后重新制作的docker 镜像
完整argocd 部署 prod-config-syncer.yaml 如下:(部署到和rancher 相同k8s 集群,同步时使用rancher 内部代理后的k8s地址)
在kube-system 创建源 secret/configmap 配置
略
配置跨集群secret同步的集群(默认同步kube-system namespace)
注:相关配置只同步到指定目标k8s 集群的 kube-system namespace ,如果需要同步其它namespace 参考集群内同步配置
配置集群内同步的secret
清理跨集群secret同步的集群,谨慎操作,会同步删除关联目标集群secret
参考:
https://github.com/kubeops/config-syncer
https://appscode.com/products/kubed/v0.12.0/setup/install/
https://appscode.com/products/kubed/v0.12.0/
https://appscode.com/products/kubed/v0.12.0/guides/config-syncer/intra-cluster/
https://github.com/paradeum-team/config-syncer/tree/jyliu-dev/charts/kubed
Last updated