saltstack的搭建和基本使用
saltstack是基于Python语言研发的一款自动化管理工具,总之很好用。具体赞美陈词请见百度。saltstack与puppet、chef等相媲美今天笔者和大家一起分享使用的安装部署以及基本使用经验。
笔者环境
两台实验机
PC1:CentOS6.5当做saltstack的master节点:192.168.1.111
PC2:CentOS6.5当做saltstack的minion(奴仆)节点:192.168.1.115
由于saltstack基于Python研发,因此会依赖一些Python的包,笔者这里安装费了很多劲,因此跟大家一起分享下。
由于saltstack分支特性,先说
=========saltstack的master节点============
大家可能会需要安装salt-master之前,安装PyYAML。这里笔者给大家提供下PyYAML的安装路径
wget ftp://ftp.sunet.se/pub/Linux/distributions/fedora/epel/6/x86_64/PyYAML-3.10-3.el6.x86_64.rpm 这里是笔者从saltstack官网上下载下来的epel源:
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
name=Extra Packages for Enterprise Linux 6 - $basearch - Debug
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch/debug
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-6&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
gpgcheck=1
name=Extra Packages for Enterprise Linux 6 - $basearch - Source
#baseurl=http://download.fedoraproject.org/pub/epel/6/SRPMS
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-6&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
gpgcheck=1
如果确实安装如此,应该不会缺什么必要条件,直接yum -y install salt-master即可。
主节点千万记得,安装完后,查看默认服务会在哪些开机启动项下为on状态
# chkconfig --list | grep salt 这里跟大家说下,salt-master与salt-minion的通信端口为4505和4506(默认)
4505为salt的消息分布系统的端口
4506为Master与Minion端通信的端口
确认完毕,启动服务即可
chkconfig salt-master on && service salt-master start 。
Master节点的配置(简单配置),默认位置/etc/salt/master
interface: 192.168.1.111 # 监听的接口,这里的值可以为FQDN也可以为IP地址
user: root# 定义以哪个用户管理
auto_accept: True # 是否开启自动接收功能,该功能可以让minion节点自动把Publickey同步到master节点,默认为false,这里我手动改成了True。注意,在保证安全的情况下可以设置为True。
配置完成,重启服务
# salt-key -L
Accepted Keys:
test1-minion #这里出现了minion中id的信息即为传递成功
Unaccepted Keys:
=========saltstack的minion节点============
安装配置从节点需要执行 yum -y install salt-minion,但是有可能会依赖于m2crypto这个包,笔者这里提供大家一个地址
http://pkgs.org/centos-6/centos-x86_64/m2crypto-0.20.2-9.el6.x86_64.rpm.html 可以使用wget去下载,rpm或yum 安装即可。
没有问题,还让minion节点使用master节点的epel源安装salt-minion。
yum -y install salt-minion 即可
安装完成检查端口以及是否开机启动
service salt-minion start minion节点的配置:(简单配置下) 默认位置/etc/salt/minion
master: salt # master节点为salt,对应master节点
master: 192.168.1.111 # master节点的IP地址。
id: test1-minion#> 以下是在master节点的操作
Master向minion发送命令
1、发送一个ping命令,看对方网络是否畅通
# salt '*' test.ping
test1-minion:
True
2、查看minion节点的磁盘使用情况
① # salt '*' cmd.run "df -h"
test1-minion:
Filesystem SizeUsed Avail Use% Mounted on
/dev/mapper/vg0-root 20G445M 19G 3% /
tmpfs 116M 0116M 0% /dev/shm
/dev/sda1 194M 30M155M16% /boot
/dev/mapper/vg0-usr 9.9G2.5G7.0G27% /usr
/dev/mapper/vg0-var 20G578M 19G 4% /var
②salt '*' disk.usage
# salt '*' disk.usage
test1-minion:
----------
/:
----------
1K-blocks:
20642428
available:
19138256
capacity:
3%
filesystem:
....篇幅有限,不做赘述。
3、比较好用的方法 salt '*' cmd.run "COMMAND"
这里salt也是调用命令模块的方法,这里的COMMAND就是你在shell命令行下执行的大多命令!
如
:# salt '*' cmd.run "date"
test1-minion:
saltstack的功能还是异常的强大,以后笔者会慢慢更新丰富内容!
页:
[1]