saltstack安装部署与入门使用

一、saltstack简介

SaltStack 一种基于 C/S 架构的服务器基础架构集中化管理平台,管理端称为 Master,客户端称为 Minion。SaltStack 具备配置管理、远程执行、监控等功能,一般可以理解为是简化版的 Puppet 和加强版的 Func。SaltStack 本身是基于 Python 语言开发实现,结合了轻量级的消息队列软件 ZeroMQ 与 Python 第三方模块(Pyzmq、PyCrypto、Pyjinjia2、python-msgpack 和 PyYAML 等)构建.

本文不以最新版安装部署,以CentOS6.8_x64 python2.6.6 环境中 在epel源中稳定的版本进行yum安装 。如需要安装最新版本下载地址(readhat/CentOS系)https://repo.saltstack.com/index.html#rhel

采用两台安装搭建基本的环境。一台做master/minion  一台minion

两台防火墙要么关闭 要么加上允许本地网段白名单类似 :-A INPUT -s 172.16.3.0/24 -j ACCEPT

关闭selinux.

二、安装

1,安装epel扩展源

#yum install epel-release -y

2、安装saltstack master

# yum install salt-master sat-minion -y

修改主配置文件/etc/salt/master 内容如下:

# cat master |egrep -v ‘(^$|^#)‘
interface: 0.0.0.0                #侦听地址
file_roots:                       #文件根目录
  base:
    - /srv/salt
    
# cat minion |egrep -v ‘(^$|^#)‘
default_include: minion.d/*.conf      
master: 127.0.0.1               #和master在同一台
id: minion_local                #标识

#service salt-master start

#service salt-minion start

2、安装minion(非master上)

#yum install epel-release -y

#yum install salt-minion -y

修改配置文件cat /etc/salt/minion

# cat minion |egrep -v ‘(^$|^#)‘
default_include: minion.d/*.conf      
master: 172.16.3.147              #和master在同一台
id: minion_local                  #标识

#service salt-minion start

三、master上添加minion

如里在master配置文件中打开

auto_accept: True

则所有的minon 将会自动被认证加入。自行考量。本次是手工添加

#salt-key -L

如图:Unaccepted Keys:中出现两个等待授权认证的minon

#salt-key -A

输入y

接受所有minion认证

再次salt-key -L 查看已授权的minion会就看到

#salt "*" test.ping   #查看所有的活动在线的minion

如图:

到此基本的saltstack  master /minion 环境部署完成

四、saltstack常用操作

除了上面的添加minon和测试minion在线情况外,还有一些其他的模拟提供一些常用操作;

1、salt语法

salt [客户端id,即目标,支持正规表达式] [模块名,如state,cmd。其实都是salt的模块] [动作]

如: salt "*" test.ping       这里的"*"就是匹配的目标,表示 所有minion   test是模块 ping是动作

目标有以下常用的五种形式:

指定目标主要有五种方式

a)、Global,即salt默认的匹配方式,能识别终端常用的通配符,如*代表所有

如,salt ‘*‘ test.ping

b)、List,列表,需-L指定。

如,salt -L ‘minion_local,minion_152‘ test.ping 其中minion_local,minion_152

是完整的minion_id

c)、-E 正则表达式匹配

如,salt -E ‘pre[1-7]‘ test.ping 会匹配pre1,pre2..pre7,并且匹配到左右minion_id

里面含有1-7的,如pre-11,pre7也会匹配到,如果只匹配1-7可使用参照下面

如,salt -E ^pre[1-7]$ test.ping或者 salt pre[1-7] test.ping

d)、-C 混合模式,里面可以既有正则表达式也有列表等

salt -C "minion_* or test_minion" test.ping 匹配所有minion开头,或者test_minion id的

e)、分组,需要-N指定,其中组名就是上面/etc/salt/master.d/groups.conf文件里面配置的

配置信息。如,salt -N apache test.ping

2、常用模块

然后是模块,主要介绍state,cmd,cp模块

注:想了解某个模块的功能或者具体参数可以

salt \* sys.doc [模块名,如cmd]

a)、cmd模块

salt ‘*‘ cmd.run "echo $HOSTNAME"      这里可以远程执行shell命令,执行结果会返回

b)、文件上传与下载

salt "minion_152"  cp.get_file  salt://files/test.txt /tmp/test.txt

将/srv/salt/files/test.txt  推送到minion_152 /tmp/下也叫test.txt

到minion_152 tmp目录下查看

同理可以通过 cp.push从minion上下载文件

需要修改master中的   file_recv: True

salt "minion_152" cp.push  /etc/fstab       #默认下到本地

/var/cache/salt/master/minions/minion-id/files目录

其他的模块主参考官方文档。这里不再多说。

时间: 2024-10-26 11:04:37

saltstack安装部署与入门使用的相关文章

saltstack安装部署以及简单实用

一,saltstack简介:     SaltStack是一种新的基础设施管理方法开发软件,简单易部署,可伸缩的足以管理成千上万的服务器,和足够快的速度控制,与他们交流,以毫秒为单位. SaltStack提供了一个动态基础设施通信总线用于编排,远程执行.配置管理等等.SaltStack基于python开发,项目于2011年启动,年增长速度较快,五年期 固定基础设施编制和配置管理的开源项目.SaltStack社区致力于保持盐项目集中.友好.健康.开放. (网上摘抄的,说白了saltStack就是一

自动化运维工具---SaltStack安装部署及简单案例

SaltStack原理 SaltStack由Master(服务端)和Minion(客户端)组成,Master和Minion之间通过ZeroMQ(消息队列)进行通讯,Master和Minion分别监听4505与4506端口,4505为master与minion认证通信端口,4506为master用来发送或者接受minion的命令执行返回信息. 当客户端启动后,会主动链接master端注册,然后一直保持该TCP连接,而master通过这条TCP连接对客户端进行控制,如果连接断开,master将对客户

saltstack 安装部署

官方源:https://repo.saltstack.com/yum/redhat/    saltstack yum源 系统环境 # cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) Saltstack安装版本 # salt -V Salt Version: Salt: 2017.7.2 Dependency Versions: cffi: 0.8.6 cherrypy: Not Installed dateutil: 1

集中化管理平台Saltstack安装部署

Saltstack一般认为是puppet的简化版和func的加强版 安装: 部署环境: 角色 hostname ip 操作系统 python版本 master master 192.168.224.141 CentOS release 6.4 (Final) Python 2.6.6 minion001 minion001 192.168.224.142 CentOS release 6.4 (Final) Python 2.6.6 minion002 minion002 192.168.224

超详细saltstack安装部署及应用

1.环境准备 准备两台虚拟机 主机名 ip role linux-node1 10.0.0.7 master linux-node2 10.0.0.8 minion 在节点1上安装 master 和 minion [[email protected] ~]yum install salt-master salt-minion -y 在节点2上安装 minion [[email protected] ~]yum install  salt-minion -y 分别设置开机自启动 [[email p

calamari + ceph + saltstack 安装部署

准备工作 1.基础环境 ceph-admin ceph-mon  为同一台服务器 ceph-osd1 为一台服务器 ceph-osd2 为另一台服务器 2.关闭防火墙 # systemctl stop firewalld.service # systemctl disable firewalld.service 3.关闭Selinux # sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config # setenforce

SaltStack安装部署

环境: 10.1.21.225(master) 10.1.20.85(minion) 安装: 一. master: 1. 配置yum源安装 1 # rpm --import https://repo.saltstack.com/yum/redhat/6/x86_64/latest/SALTSTACK-GPG-KEY.pub #载入yum认证文件 2 # cd /etc/yum.repos.d/ 3 # vim saltstack.repo 4 [saltstack-repo] 5 name=Sa

Saltstack安装部署(CentOS 6.7)

系统版本: CentOS6.7 X86_64 部署规划: 序号 主机名 IP 角色 1 linux-node1.example.com 10.0.0.7 salt-master.salt-minion 2 linux-node2.example.com 10.0.0.8 salt-minion linux-node1.example.com: 安装salt-master salt-minion yum install salt-master salt-minion -y 启动salt-maste

Saltstack 安装部署和模块使用

Saltstack概念 Saltstack 比 Puppet 出来晚几年,是基于Python 开发的,也是基于 C/S 架构,服务端 master 和客户端 minions :Saltstack 和 Puppet 很像,可以说 Saltstatck 整合了 Puppet 和 Chef 的功能,更加强大,更适合大规模批量管理服务器,并且它比 Puppet 更容易配置. salt特点: 并行,管理的工具,Python开发的.可二次开发. salt远程执行 salt配置管理 salt云管理(阿里云升级