saltstack基于python开发的C/S架构配置管理工具
底层使用ZeroMQ消息队列pub/sub方式通信
使用SSL证书签发的方式进行认证管理,传输采用AES加密
在saltstack架构中服务器端叫Master,客户端叫Minion。
在Master和Minion端都是以守护进程的模式运行,监听配置文件里面定义的ret_port(接受minion请求)和publish_port(发布消息)的端口。
当Minion运行时会自动连接到配置文件里面定义的Master地址ret_port端口进行连接认证altstack四大功能,分别是:
- 远程执行 (批量执行命令)在master上执行命令时,会在所有的minion上执行。
- 配置管理/状态管理 (描述想到达到的状态,saltstack就会去执行)
- 云管理(cloud) 用于管理云主机
- 事件驱动 被动执行的,当达到某个值会自动触发
saltstack可以通过远程执行实现批量管理,并且通过描述状态来达到某些功能的目的。
saltstack四大运行方式:
- local本地运行 (masterless模式)
- master/minion传统方式 这是saltstack的主要模式
- syndic 分布式
- salt ssh (agentless模式)
据了解,saltstack已经被vmvare公司收购,因此是可以去vmvare相关网站下载和配置
安装链接为: Downloads - Salt install guide (saltproject.io)
https://docs.saltproject.io/salt/install-guide/en/latest/topics/downloads.html
这个页面是有好多系统的安装介绍,有macos,centos,redhat,suse,debian,ubuntu,windows,pythonos等操作系统和环境,我选择的是CentOS
一、安装准备
- 1 检查安装环境Centos7
salt:
- /bin/bash
- /bin/sh
- /usr/bin/env
- config(salt) = 3005.1-2.el7
- dmidecode
- libc.so.6
- libdl.so.2
- libpthread.so.0
- libz.so.1
- openssl
- pciutils
- rpmlib
- rtld
- systemd-units
- which
salt-minon/salt-master/salt-api:
- /bin/bash
- /bin/sh
- config(salt-master) = 3005.1-2.el7
- rpmlib
- salt = 3005.1-2.el7
--- Classic
salt:
- /bin/sh
- /usr/bin/env
- /usr/bin/python3
- config(salt) = 3005.1-1.el7
- pciutils
- python(abi) = 3.6
- python36-PyYAML
- python36-contextvars
- python36-distro
- python36-jinja2
- python36-jmespath
- python36-m2crypto >= 0.31.0
- python36-markupsafe
- python36-msgpack >= 0.6
- python36-psutil
- python36-pycurl
- python36-requests
- python36-rpm
- python36-six
- python36-zmq >= 18.0.1
- rpmlib
- systemd-units
- which
- yum-utils
- 2. 安排端口
salt-master需要开放两个端口4505,4506,其中4505端口用于消息通信,4506端口用于接受minon的请求
二、 安装软件
1. 导入GPG以及salt.repo库文件
sudo rpm --import https://repo.saltproject.io/salt/py3/redhat/7/x86_64/SALT-PROJECT-GPG-PUBKEY-2023.pub curl -fsSL https://repo.saltproject.io/salt/py3/redhat/7/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo
2. 清理库过时库缓存
sudo yum clean expire-cache
3. 安装 salt-minion, salt-master等软件
sudo yum install salt-master #管理端 sudo yum install salt-minion #客户端 sudo yum install salt-ssh #ssh模式 sudo yum install salt-syndic #分布模式 sudo yum install salt-cloud #云模式 sudo yum install salt-api #api模式
4. 允许相关服务
sudo systemctl enable salt-master && sudo systemctl start salt-master sudo systemctl enable salt-minion && sudo systemctl start salt-minion sudo systemctl enable salt-syndic && sudo systemctl start salt-syndic sudo systemctl enable salt-api && sudo systemctl start salt-api
标签:yum,salt,sudo,master,python36,saltstack,安装 From: https://www.cnblogs.com/mjxi/p/17449275.html