yuxing 发表于 2018-8-1 12:03:05

自动化运维集中式管理工具saltstack的基于平台的部署

  集中式管理工具saltstack是兼容Linux、Windows、Unix平台,能实现服务器的批量管理,命令或脚本下发,软件部署,环境搭建,配置管理,是运维人员的提高管理效率的工具。至于更详细的功能与优势这里不再介绍,网络上有很多前辈有介绍,这里只介绍部署方法。
  部署环境
  saltstack版本:2015.8.7
  服务端master:CentOS6.7   master
  被控段minion:CentOS5.11   minion01
  CentOS6.7    minion02
  CentOS7.2    minion03
  SLES11 SP3   minion04
  Ubuntu 14.04.4    minion05
  Windows Server 2008 R2 SP1 64bit    minion06
  部署过程
  master的部署:
  CentOS/RHEL6 yum源的添加,除了os基本yum源(参阅前面文章)外,还添加saltstack官方yum源后。
  cat > /etc/yum.repos.d/saltstack.repo << EOF
  
  name=SaltStack repo for RHEL/CentOS \$releasever
  baseurl=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest
  enabled=1
  gpgcheck=1
  gpgkey=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest/SALTSTACK-GPG-KEY.pub
  EOF
  更新yum缓存执行如下命令
  yum clean all && yum makecache

  安装master端 yum install salt-master -y

  修改配置文件/etc/salt/master,指定监听的网络接口。

  这里网络接口指的是,如果一个网卡就是网卡上配置的IP地址。如果多个网卡,则规划监听来自某个网卡的数据。

  启动salt-master服务并配置开机自启动
  /etc/init.d/salt-master start
  chkconfig salt-master on

  minion的部署:
  CentOS/RHEL5.11添加如下saltstack的yum源
  cat > /etc/yum.repos.d/saltstack.repo << EOF
  
  name=SaltStack repo for RHEL/CentOS \$releasever
  baseurl=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest
  enabled=1
  gpgcheck=1
  gpgkey=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest/SALTSTACK-EL5-GPG-KEY.pub
  EOF
  目前saltstack软件支持的Python以及其组件需要2.6及其以上的版本,但在CentOS/RHEL5平台默认Python版本为2.4,所以需要升级Python版本,那么除了os基本的yum源和saltstack的yum源外,还需要添加epel的yum源。
  cat > /etc/yum.repos.d/epel.repo << EOF
  
  name=Extra Packages for Enterprise Linux 5 - \$basearch
  baseurl=http://mirrors.yun-idc.com/epel/\$releasever/\$basearch
  enabled=1
  gpgcheck=1
  gpgkey=http://mirrors.yun-idc.com/epel/RPM-GPG-KEY-EPEL-5
  EOF
  重建yum缓存 yum clean all && yum makecache

  安装minion软件包 yum install salt-minion -y

  修改配置文件/etc/salt/minion,指定master服务器,这里可以是域名,但要能成功解析,也可以是IP地址。


  和minion的唯一标识ID,这里建议是主机名或主机应用名来区分主机。


  保存并退出,启动salt-minion服务并配置开机自启动。
  /etc/init.d/salt-minion start
  chkconfig salt-minion on

  在master端禁用防火墙与selinux服务
  /etc/init.d/iptables stop
  setenforce 0

  执行命令 salt-key -a minion01 并键入y来接受来自minion01的密钥。

  使用 salt 'minion01' test.ping 测试minion01的连通性良好,正常纳管。

  CentOS/RHEL6.7 除了os基本的yum源外,saltstack的yum源添加
  cat > /etc/yum.repos.d/saltstack.repo << EOF
  
  name=SaltStack repo for RHEL/CentOS \$releasever
  baseurl=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest
  enabled=1
  gpgcheck=1
  gpgkey=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest/SALTSTACK-GPG-KEY.pub
  EOF
  更新yum的缓存 yum clean all && yum makecache

  安装minion软件包 yum install salt-minion -y

  修改配置文件/etc/salt/minion,指定master服务器与ID。


  启动服务,配置开机自启动。
  /etc/init.d/salt-minion start
  chkconfig salt-minion on

  在master上接受来自minion02的密钥 salt-key -a minion02 -y

  使用test.ping测试连通性 salt 'minion02' test.ping

  CentOS/RHEL7.2平台添加os基本yum源,注意如果是RHEL基本yum找不到依赖的软件包,可能需要添加同版本的CentOS的基本yum源。
  cat > /etc/yum.repos.d/CentOS-7.2-x86_64 << EOF
  
  name=CentOS-\$releasever - Base
  baseurl=http://mirrors.yun-idc.com/centos/\$releasever/os/\$basearch/
  enabled=1
  gpgcheck=0
  gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
  EOF
  再添加saltsack的yum源
  cat > /etc/yum.repos.d/saltstack.repo << EOF
  
  name=SaltStack repo for RHEL/CentOS \$releasever
  baseurl=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest
  enabled=1
  gpgcheck=1
  gpgkey=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest/SALTSTACK-GPG-KEY.pub
  EOF
  更新yum缓存 yum clean all && yum makecache

  安装salt-minion软件包 yum install salt-minion -y

  修改配置文件/etc/salt/minion指定master服务器与ID


  启动服务并配置开机自启动
  systemctl start salt-minion.service
  systemctl enable salt-minion.service

  master端接受来自minion03的密钥,测试连通性。
  salt-key -a minion03 -y
  salt 'minion03' test.ping

  SUSE 11 SP3的配置,除了添加os基本的zypper源外,还要添加saltstack的zypper源
  zypper addrepo http://download.opensuse.org/repositories/devel:languages:python/SLE_11_SP3/devel:languages:python.repo

  刷新zypper缓存 zypper refresh

  安装salt-minion软件包 zypper install salt-minion ,如果遇到因为网络原因下载不了软件包的请多次重试。



  编辑配置文件 /etc/salt/minion 指定master与ID


  启动salt-minion服务并配置开机自启动
  /etc/init.d/salt-minion start
  chkconfig salt-minion on

  master端接受来自minion04的密钥 salt-key -a minion04 -y

  测试连通性 salt 'minion04' test.ping

  Ubuntu14.04的配置,导入SaltStack repository的key。
  wget -O - https://repo.saltstack.com/apt/ubuntu/14.04/amd64/latest/SALTSTACK-GPG-KEY.pub | sudo apt-key add -
添加sources.list源,编辑文件/etc/apt/sources.list添加如下
  deb http://repo.saltstack.com/apt/ubuntu/14.04/amd64/latest trusty main

  更新 sudo apt-get update

  安装salt-minion软件包 sudo apt-get install salt-minion -y

  修改配置/etc/salt/minion,指定master与ID。


  启动服务并配置开机自启动
  sudo /etc/init.d/salt-minion start
  sudo ln -s /etc/init.d/salt-minion /etc/rc3.d/S98salt-minion
  sudo ln -s /etc/init.d/salt-minion /etc/rc5.d/S98salt-minion

  master端接受来自minion05的key,测试连通性。

  Windows平台到这里下载最新版salt-minion软件来安装 https://repo.saltstack.com/windows/
  这里Windows Server 2008 R2 SP1 64bit 我们使用版本 Salt-Minion-2015.8.7-AMD64-Setup.exe

  需要.netframework3.5及其以上版本的支持,在功能里安装。

  打开软件next下一步进行安装

  同意协议


  指定master服务器与minion>
  自动安装

  安装完成

  点击开始菜单旁边的服务器管理器

  在服务里找到salt-minion服务

  右键菜单启动服务

  关闭Windows系统防火墙

  在master端接受来自minion06的密钥后测试连通性。

  由此可实现不同平台主机的管理。
页: [1]
查看完整版本: 自动化运维集中式管理工具saltstack的基于平台的部署