1. 安装SaltStack
SaltStack采用C/S架构,需分别安装Master(控制中心)和Minion(被控节点)。以CentOS为例,可通过yum仓库快速安装:
sudo yum install https://repo.saltstack.com/yum/redhat/salt-repo-latest.el7.noarch.rpmsudo yum clean expire-cache && sudo yum install salt-master salt-minionsudo apt-get install salt-master salt-minion。2. 配置Master与Minion
/etc/salt/master,设置监听接口为0.0.0.0(允许所有IP连接):interface: 0.0.0.0;默认发布端口为4505(命令下发)、4506(结果返回),无需修改即可使用。/etc/salt/minion,指定Master的IP地址:master: <Master_IP>;可选设置Minion唯一ID(默认使用主机名):id: <custom_minion_id>。3. 启动服务并验证连接
sudo systemctl start salt-master && sudo systemctl start salt-minion(若需开机自启,添加-enable参数)。sudo salt '*' test.ping,若返回所有Minion的True,则表示连接正常。4. 认证Minion(密钥管理)
Minion首次启动会自动生成密钥对(/etc/salt/pki/minion/minion.pem私钥、minion.pub公钥),需将公钥发送至Master:
sudo salt-key -L(显示Unaccepted Keys列表);sudo salt-key -A -y;sudo salt-key -L(Accepted Keys应包含目标Minion ID)。5. 远程执行命令(快速测试)
SaltStack支持通过salt命令向Minion下发指令,常用模块包括:
test.ping:测试Minion连通性(如sudo salt '*' test.ping);cmd.run:执行系统命令(如sudo salt '*' cmd.run 'uptime',查看所有Minion的系统负载);pkg.install:安装软件包(如sudo salt '*' pkg.install htop,批量安装htop)。6. 编写与应用状态文件(配置管理核心)
SaltStack通过**状态文件(.sls格式,YAML语法)**定义系统期望状态,实现自动化配置。
/srv/salt/目录下新建webserver.sls(文件名自定义),内容如下:install_nginx:
pkg.installed:
- name: nginx
service_nginx:
service.running:
- name: nginx
- enable: True # 开机自启
sudo salt '*' state.apply webserver,SaltStack会自动安装Nginx并确保其运行。7. 关键注意事项
sudo firewall-cmd --add-port=4505/tcp --permanent && sudo firewall-cmd --reload);state.show_sls <sls文件名>验证语法;root)有足够权限执行命令。免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。