参考文档

http://docs.saltstack.cn/contents.html

快速安装

初始配置
控制端master配置
# vim /etc/salt/master
interface: 192.168.100.132 注:192.168.1.229 是本机服务端的IP地址 默认监听所有接口
# auto_accept: True
注:修改auto_accept为True,自动接受客户端的KEY,当然也可以这里不设置,手动接受就行,接受方式:salt-key -a keyname
控制端默认监听tcp 4505 4506 注意防火墙配置 客户端minion配置
# vim /etc/salt/minion
master: 192.168.100.132
id: 192.168.100.138 注:192.168.100.132 是服务端的IP地址
id :客户端的标识,用服务端连接时,就是用此标识来连接客户端,建议为主机域名 配置服务
# systemctl enable salt-master.service
# systemctl start salt-master.service
# systemctl enable salt-minion.service
# systemctl start salt-minion.service ## 测试被控主机的连通性
# salt '*' test.ping ## 根据被控主机的grains信息进行匹配过滤
# salt -G 'os:Centos' test.ping ## 显示被控主机的操作系统类型
# salt '*' grains.item os ## 远程代码执行测试
# salt '*' cmd.exec_code python 'import sys; print sys.version'

常用命令

# salt-key -L 查看key列表
# salt-key -a KYENAME #允许一个key
# salt-key -A #允许所有
# salt-key -d KEYNAME #删除一个key
# salt-key -D #删除所有key ##使用ip地址或子网匹配
# salt -S 192.168.100.138 test.ping
# salt -S 192.168.100.0/24 test.ping ##使用正则表达式:
# salt -E 'virtmach[0-9]' test.ping ##指定列表
# salt -L 'foo,bar,baz,quo' test.ping ##拷贝文件
# salt-cp '*' file.py /root ##超级命令(生产中不建议使用)
# salt '*' cmd.run 'yum install net-tool' ##查看客户端状态
# salt-run manage.status
# salt-run manage.versions
##工具箱
# salt '192.168.100.138' saltutil.running \\查看正在执行的任务
# salt '192.168.100.138' saltutil.kill_job 20170310143800082264 \\删除正在运行的任务

模块使用

包安装模块

##命令输出
192.168.100.138:
----------
ID: pkg.init
Function: pkg.installed
Name: mtr
Result: True
Comment: The following packages were installed/updated: mtr
Started: 12:17:31.424942
Duration: 15219.658 ms
Changes:
----------
mtr:
----------
new:
2:0.85-7.el7
old:
----------
ID: pkg.init
Function: pkg.installed
Name: nmap
Result: True
Comment: The following packages were installed/updated: nmap
Started: 12:17:46.667926
Duration: 5258.072 ms
Changes:
----------
nmap:
----------
new:
2:6.40-7.el7
old:
nmap-ncat:
----------
new:
2:6.40-7.el7
old:
----------
ID: pkg.init
Function: pkg.installed
Name: lrzsz
Result: True
Comment: The following packages were installed/updated: lrzsz
Started: 12:17:51.969501
Duration: 2646.444 ms
Changes:
----------
lrzsz:
----------
new:
0.12.20-36.el7
old: Summary for 192.168.100.138
------------
Succeeded: 3 (changed=3)
Failed: 0
------------
Total states run: 3
Total run time: 23.124 s

  

文件维护模块

##使用file.managed 维护文件

# vim top.sls
base:
'192.168.100.138':
- init.pkg
- init.limit
# cd init/
# vim limit.sls
limit-conf-config:
file.managed:
- name: /etc/security/limits.conf #minion端 文件路径
- source: salt://init/files/limits.conf #master端 文件路径
- user: root
- group: root
- mode: 644 # mkdir files
# cd files
# cp /etc/security/limits.conf .
##随意修改 limits.conf文件内容 验证是某同步
# salt '*' state.highstate
192.168.100.138:
----------
ID: pkg.init
Function: pkg.installed
Name: mtr
Result: True
Comment: Package mtr is already installed
Started: 13:09:50.532559
Duration: 672.412 ms
Changes:
----------
ID: pkg.init
Function: pkg.installed
Name: nmap
Result: True
Comment: Package nmap is already installed
Started: 13:09:51.205178
Duration: 0.426 ms
Changes:
----------
ID: pkg.init
Function: pkg.installed
Name: lrzsz
Result: True
Comment: Package lrzsz is already installed
Started: 13:09:51.205686
Duration: 0.315 ms
Changes:
----------
ID: limit-conf-config
Function: file.managed
Name: /etc/security/limits.conf
Result: True
Comment: File /etc/security/limits.conf updated
Started: 13:09:51.208228
Duration: 56.86 ms
Changes:
----------
diff:
---
+++
@@ -1,4 +1,4 @@
-#this is test
+#this is test!!
# /etc/security/limits.conf
#
#This file sets the resource limits for the users logged in via PAM. Summary for 192.168.100.138
------------
Succeeded: 4 (changed=1)
Failed: 0
------------
Total states run: 4
Total run time: 730.013 ms

把数据返回到mysql服务器

# vim /etc/salt/master
mysql.host: '192.168.100.138'
mysql.user: 'salt'
mysql.pass: 'salt'
mysql.db: 'salt'
mysql.port: 3306
master_job_cache: mysql //master端直接写入mysql,如果不配置此行默认是minion端写入
# vim /etc/salt/minion
mysql.host: '192.168.100.138'
mysql.user: 'salt'
mysql.pass: 'salt'
mysql.db: 'salt'
mysql.port: 3306 # salt '*' test.ping --return mysql

  

SaltStack 安装配置 centos7的更多相关文章

  1. saltstack安装配置(syndic)

    syndic是saltstack用来做集群部署的,一般结构如图: syndic是一个特殊的minion,syndic类继承于minion类,syndic可以看作一个代理,只做数据传递. CentOS上 ...

  2. saltstack安装配置(halite)

    saltstack官方提供了一个简单的web UI--halite.但是给出的安装配置方法实在没法实现,在网上找了几篇博客,见文章末尾的参考链接,可以用起来了.但是功能有点简单.这篇文章记录安装配置h ...

  3. Saltstack 安装配置详解

    下面这篇文章主要介绍另外一个运维自动化工具 Saltstack . 一.简介 Saltstack 比 Puppet 出来晚几年,是基于Python 开发的,也是基于 C/S 架构,服务端 master ...

  4. Saltstack安装配置过程

    一.安装配置 1.服务器配置情况 三台服务器,均需要关闭iptables和selinux(否则salt执行指令无效) master: 192.168.60.139 centos slave: 192. ...

  5. SaltStack安装配置

    一.环境准备:操作系统CentOS Linux release 7.3.1611master ip:192.168.1.180minion ip:192.168.1.183设置server(maste ...

  6. SaltStack安装配置详解

    一.简介 Saltstack 比 Puppet 出来晚几年,是基于Python 开发的,也是基于 C/S 架构,服务端 master 和客户端 minions :Saltstack 和 Puppet ...

  7. saltstack安装配置及常用命令

    1.salt安装及配置详解 https://www.cnblogs.com/lgeng/p/6567424.html centos7配置: https://www.jianshu.com/p/4c91 ...

  8. saltstack安装配置使用记录

    安装 参考 http://docs.saltstack.cn/topics/installation/index.html#installation 选择对应的OS 配置 环境如下: master:1 ...

  9. 集中化管理平台Saltstack安装配置

    salt是一个异构平台基础设置管理工具(虽然我们通常只用在Linux上),使用轻量级的通讯器ZMQ,用Python写成的批量管理工具,完全开源,遵守Apache2协议,与Puppet,Chef功能类似 ...

随机推荐

  1. 在Android源码中查找Java代码中native函数对应的C++实现

    Android源码中很多关键代码都是C++实现的,java通过jni来调用,经常会看到java中这样的代码: static native Thread currentThread(); 如何根据方法名 ...

  2. logback logback.xml常用配置详解(一)<configuration> and <logger>

    logback logback.xml常用配置详解(一)<configuration> and <logger> 博客分类: Log java loglogback  原创文章 ...

  3. Jexus .Net at System.Net.Sockets.Socket.Connect (System.Net.IPAddress[] addresses, System.Int32 port)

    环境:Jexus(独立版)+MVC(5.2.3) +Redis+EF(6.0) Application Exception System.Net.Sockets.SocketException Con ...

  4. ROS中打开单目摄像头

    1.安装功能包 $ sudo apt-get install ros-kinetic-usb-cam 2.启动launch文件 $ roslaunch usb_cam usb_cam-test.lau ...

  5. [No0000128]SQL纵表与横表互转

    1.纵表转横表: 纵表结构:Table1 转换后的横表结构: Sql示例代码: select username, sum(case Course when '语文' then Grade else 0 ...

  6. git add详解

    git add . :他会监控工作区的状态树,使用它会把工作时的所有变化提交到暂存区,包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件. git add -u :他仅监控 ...

  7. 无法跨越程序集边界使用程序集“DataCheck, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”中的类型“List<ILayer>”,因为该类型有一个为嵌入互操作类型的泛型类型参数

    主窗体: FrmDataInspect f2 = new FrmDataInspect(listMapControl1Lyr); f2.Show(); 弹出的窗体: 应该改为: gListMapLyr ...

  8. JavaScript面向对象之函数构造器的理解

    1,在使用函数创建类时,函数本身也被称为该类的构造器,该类的构造器方法,该类的构造方法,该类的构造函数等等. 2,注意构造器方法是没有返回值的,当创建该类的实例时,必须调用该类的构造方法. 3,获取构 ...

  9. [DPDK] 转发 DPDK分析

    前半部分,对于背景和需求的分析,写的相当好啊! 原文地址:https://www.jianshu.com/p/0ff8cb4deaef 背景分析 前10年中,网络程序性能优化的目标主要是为了解决C10 ...

  10. TMS WEB Core v1.2预览版:新的Electron应用程序支持

    2019年2月20日,星期三 几个月前,我们已经开始与Electron进行实验.在工作概念验证之后,我们的目标是为Delphi开发人员尽可能多地包装Electron API.但当然不仅仅是可以使用的E ...