slat-master迁移

迁移前环境:
salt-master 部署在3台物理机,计划性下线
salt-minion 分布在物理节点和pod 中,并通过salt-master的ip连接到master

迁移要求:

新的salt-master指向域名【salt-master.xxx.dev.xxx.com.】
需要pod和物理节点都可以解析这个域名,并通过域名连接salt-master

迁移方式:

  1. salt-minion所在物理节点使用 /etc/hosts 解析该域名
  2. salt-minion 所在容器使用 coreDns 解析该域名

模拟迁移环境

主机名 ip 角色
salt-master-1 172.16.100.60 master
salt-master-2 172.16.100.61 master
salt-master-3 172.16.100.62 master
salt-minion-1 DHCP minion
salt-minion-2 DHCP minion

启动master

docker network create bridge-0 -d bridge  --subnet=172.16.100.0/24 --gateway=172.16.100.1
docker run -d --name=salt-master-1 --net=bridge-0 --ip 172.16.100.60 salt-master:cpoy 
docker run -d --name=salt-master-2 --net=bridge-0 --ip 172.16.100.61 salt-master:cpoy 
docker run -d --name=salt-master-3 --net=bridge-0 --ip 172.16.100.62 salt-master:cpoy 

启动minion

apiVersion: v1
kind: NameSpace
metadata:
  name: salt
---
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: salt-minio
  name: salt-minio
  namespace: salt
spec:
  replicas: 2
  selector:
    matchLabels:
      app: salt-minio
  template:
    metadata:
      labels:
        app: salt-minio
    spec:
      containers:
      - command:
        - /usr/bin/salt-minion
        image: salt-minion:copy
        imagePullPolicy: Never
        name: salt-minion

修改coreDns

    hosts {
       10.4.7.60  salt-master1.cmb.dev.pytc.com.
       10.4.7.61  salt-master2.cmb.dev.pytc.com.
       10.4.7.62  salt-master3.cmb.dev.pytc.com.
       }

验证使用域名通讯

[root@allinone ~]# docker exec -it salt-master-1  salt '*' test.ping
9b3d6af908c2:
    True
9b3d6af908c2:
    True

得出结论:
slat-master 和 salt-minion 之间通讯的证书不包含通讯双方的主机名、ip地址等信息。如果迁移可以拷贝原有证书和配置文件到新的主机节点,配置minion的连接文件,重启minion的进程即可

posted @ 2023-02-27 17:03  mingtian是吧  阅读(35)  评论(0编辑  收藏  举报