需要 salt-master 0.17以上版本支持

1.安装

相关依赖包可查看requirements.txt

Jinja2

M2Crypto

msgpack-python

pycrypto

PyYAML

pyzmq >= 2.1.9

markupsafe

[root@server1 salt]# git clone https://github.com/saltstack/salt.git

[root@server1 salt]# python setup.py  install

2.roster定义

花名册(roster)定义存放主机列表文件,默认存放在/etc/salt/roster

格式:

<Salt ID>:   # ID,用于salt-ssh引用
host: # IP或域名
  user: # 登录用户名
passwd: # 登录密码 # 可选参数
port: # 自定义的端口
sudo: # 是否允许sudo到root,默认不允许
priv: # ssh登录key路径,默认为salt-ssh.rsa
timeout: # 等待超时

[root@server1 salt]# vim /etc/salt/roster

3.测试连接及执行命令

这时就可以对所定义的服务器执行命令了:

执行格式:

salt 参数 对象 命令

其中对象支持多种匹配方式,常见的 通配符、正则表达式、列表、分组、复合匹配等

4.相关参数:

查看文件及执行命令

salt-ssh '*' [ options ] sys.doc

salt-ssh -E '.*' [ options ] sys.doc cmd

-r 执行shell命令

--roster-file 指定roster文件

--refresh 强制刷新master端缓存数据

--max-procs 设置客户端并发数,默认25

--passwd 设置默认密码

--out-file=output_file, --output-file=OUTPUT_FILE 把信息输出到指定文件

--no-color 输出的结果不带颜色

salt-ssh 第一次执行是根据roster的账号密码推送密码,来实现自动交互的。

执行完了后 会在目标的服务器里面,追加master端的key,以后再对服务器执行操作不再依赖于密码。

5.遇到错误:

问题1:

[root@server1 salt]# salt-ssh '*' [ options ] sys.doc

[CRITICAL] Unable to import msgpack or msgpack_pure python modules

[WARNING ] Console logging already configured

[WARNING ] Warning:  sshpass is not present, so password-based authentication is not available.

解决:

[root@server1 salt]# easy_install msgpack-python

问题2:

[WARNING ] Warning:  sshpass is not present, so password-based authentication is not available.

[root@localhost salt]# yum -y install sshpass

参考:https://salt.readthedocs.org/en/latest/ref/cli/salt-ssh.html

http://docs.saltstack.com/topics/ssh/index.html

salt-ssh安装及简单使用的更多相关文章

  1. saltstack自动化运维系列①之saltstack服务安装及简单使用

    Saltstack介绍 Salt三种运行方式 1.local本地运行2.Master/Minion3.Salt ssh Salt的三大功能 a.远程执行b.配置管理(状态管理)c.云管理:阿里云,aw ...

  2. saltstack master minion安装配置简单使用

    首先先了解下saltstack是什么,为什么使用它 它与Ansible.Puppet都属于集中管理工具,由于现在企业规模的不断庞大及业务的增长,所需要管理的服务器数量增多,而且大部分机器都属于同类业务 ...

  3. docker的安装和简单配置

    docker的安装和简单配置 docker是balabalabala...懒得介绍. 国内安装docker很蛋疼,按照官方配置好了软件源之后,几十MB的安装文件下载要半天,没办法,docker默认的软 ...

  4. <转载> FreeNAS的安装和简单配置 http://freenas.cn/?p=342

    前些日子在公司搭了一个模拟生产环境的平台.由于是测试环境,资源有限只能使用虚拟机实现,所以存储这块就想到了使用FreeNAS.很早以前玩儿过几次,当时是生产环境需要上存储设备,经过对比还是选择的更可靠 ...

  5. ansible自动化工具安装和简单使用

    ansible自动化工具安装和简单使用 1.安装 ansible依赖于Python 2.6或更高的版本.paramiko.PyYAML及Jinja2. 2.1 编译安装 解决依赖关系 # yum -y ...

  6. fabric 安装及简单使用 (centos6)

    fabric 是一个python的库,fabric可以通过ssh批量管理服务器. 第一步安装依赖包 安装epel源 1 wget -O /etc/yum.repos.d/epel.repo http: ...

  7. Linux下的GitHub安装与简单配置教程 ~ 转载

    Linux下的GitHub安装与简单配置教程   1.GitHub简介 Git是一个分布式版本控制系统,与其相对的是CVS.SVN等集中式的版本控制系统. 2.Git的安装 1)安装Git a.查看与 ...

  8. (转)python requests的安装与简单运用

    requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢?官方文档中是这样说明的: python的标准库urllib ...

  9. MongoDB在Windows下安装、Shell客户端的使用、Bson扩充的数据类型、MongoVUE可视化工具安装和简单使用、Robomongo可视化工具(2)

    一.Windows 下载安装 1.去http://www.mongodb.org/downloads下载,mongodb默认安装在C:\Program Files\MongoDB目录下,到F:\Off ...

  10. python requests的安装与简单运用

    requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢?官方文档中是这样说明的: python的标准库urllib ...

随机推荐

  1. Sqoop2常用命令介绍

    命令行操作之Create Command 1.Create Connection Function create connection --cid 1  说明:Create new connectio ...

  2. The Ninth Hunan Collegiate Programming Contest (2013) Problem C

    Problem C Character Recognition? Write a program that recognizes characters. Don't worry, because yo ...

  3. Linux-wget/tar/ln 函数

    1. 获取软件包,可以使用wget的方式, ubuntu可以使用apt-get source来获取源代码 wget 是一个在网络上进行下载的简单而强大的自由软件,支持HTTP,HTTPS,FTP协议, ...

  4. 架构设计--逻辑层 vs 物理层

    如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 Layer 和Tier都是层,但是他们所表现的含义不同,Tier指的是软件系统中物理 ...

  5. python中时间格式

    问题:通过MySQLdb查询datetime字段,然后通过浏览器显示出来,得到的格式是:         'Thu, 19 Feb 2009 16:00:07 GMT'   (http呈现出来的格式) ...

  6. PagedList.MVC分页

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  7. TCP/IP详解学习笔记(10)-- DNS:域名系统

    1.DNS      DNS 是计算机域名系统(Domain Name System 或Domain Name Service) 的缩写,它是由解析器以及域名服务器组成的.域名服务器是指保存有该网络中 ...

  8. mysql时间日期相加相减实现

    分享篇mysql中日期的一些操作,就是我们常常会用到的mysql时间日期的相加或者相减的了,这个mysql也自己带了函数,有需要的朋友可以参考一下. 最简单的方法 select TO_DAYS(str ...

  9. 使用py2exe打包你的py程序

    软件环境:python3.3.4 + PyQt5 使用py2exe打包写好的py文件,过程如下: 在你要打包的代码文件(比如sample.py)的同文件夹建立一个python代码文件(比如setup. ...

  10. PHP生成静态页面的方法

          在PHP网站开发中为了网站推广和SEO等需要,需要对网站进行全站或局部静态化处理,PHP生成静态HTML页面有多种方法,比如利用PHP模板.缓存 等实现页面静态化,今天就以PHP实例教程形 ...