saltstack学习笔记

一. 安装

通过epel安装salt

  • salt-master安装
    salt-master为salt的控制端,安装在主控服务器上

    yum install salt-master

    安装后添加到开机自起服务:

    chkconfig salt-master on
    service salt-master start

  • salt-minion安装
    salt-minion为被控服务器,安装在需要master来统一控制的服务器上

    yum install salt-minion
    安装后添加到开机自起服务
    chkconfig salt-minion on
    service salt-minion start

  • 其他官方参考页面
    官方安装页面
    官方redhat/centos安装
    官方配置介绍

二. 配置

salt的配置文件在/etc/salt目录下,具体如下:
master服务器的配置文件:/etc/salt/master
minion服务器的配置文件:/etc/salt/minion

1. master配置

salt默认监听端口为4505和4506,且在所有接口上监听,如果想要指定IP,可修改master配置文件的interface参数,master服务器安装完基本无需其他配置即可使用。
详细参考文档

2. minion配置

minion默认去DNS解析“salt”,可在/etc/salt/minion中手动指定“master”服务器地址
master: xxx.xxx.xxx.xxx
minion参考文档
id: 给minion命名,如果主机名不规则,这手动指定id为固定名字,方便管理
NOTICE:salt通过minion id生成minion的公/私钥,如果改变过id,则master需要更新key,key更新可参考“key管理”内容。

3. key管理

当master和minion都配置完成,且都启用服务,此时,我们可以用salt-key命令来查看有多少minion服务器已经连接到master上,并用salt-key -A来把所有minion加入可信任服务器列表,并统一管理。
查看支持的加密方式
salt-key -L

接受所有key

salt-key -A

删除所有key

salt-key -D

接受个别key

salt-key -a keyname

删除某个key

salt-key -d keyname

salt-key详解

三. 常用命令介绍

1. ping测试命令

salt name test.ping
salt '*' test.ping

2. 在minion上执行命令

cmd模块用来在minions上执行命令

salt '*' cmd.run 'ls -l /etc'

3. 包管理

pkg函数自动映射本地包管理到同样的salt函数。即可通过pkg.install达到yum install的效果(apt包自动关联apt)

salt '*' pkg.install vim

4. 网络接口管理

network.interface命令用来显示minion上的所有接口信息

salt '*' network.interfaces

targeting minions
salt内置命令列表
salt-call使用

5. salt文件传输学习

使用salt-cp命令
使用规则:

salt-cp '*' [ options ] SOURCE DEST
salt-cp -E '.*' [ options ] SOURCE DEST
salt-cp -G 'os:Arch.*' [ options ] SOURCE DEST

详细介绍:http://docs.saltstack.com/en/latest/ref/cli/salt-cp.html

四. 总结

简单接触了下salt,总结下它的利弊。
优点:

  1. 可以很方便的对各服务器进行管理,无需一台一台登录去操作
  2. 方便文件传输

缺点:

  1. 命令的远程执行很危险

saltstack学习笔记》上有1条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注