自动化运维工具saltstack05 -- 之salt-ssh模式
salt-ssh模式
1、说明:
salt-ssh即通过ssh得方式进行管理,不需要安装salt-minion, salt-ssh 用的是sshpass进行密码交互的。
2、salt-ssh得局限性
被管理的机器需要支持远程连接,ssh有些功能不如minion
3、安装salt-ssh
# yum install -y salt-ssh
4、配置salt-ssh
# tail - /etc/salt/roster
test1: #被管理的主机名
host: 172.18.X.X #被管理的主机IP
user: test #被管理主机的ssh连接用户
passwd: passwd #被管理主机的ssh用户密码
port: #被管理主机的ssh端口
sudo: True #是否允许sudo
5、使用salt-ssh模式测试连接服务器
第一次执行会有认证,加-i参数,以后就不用了
# salt-ssh \* test.ping -i
test1:
True
6、使用salt-ssh模式执行shell命令
方法一:
# salt-ssh \* cmd.run "w"
test1:
:: up days, :, users, load average: 0.11, 0.09, 0.06
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
young pts/ 123.121.57.191 : .00s .84s .02s sshd: young [priv]
young pts/ 123.121.57.191 : : .04s .02s sshd: young [priv] 方法二:
# salt-ssh \* -r "w"
test1:
----------
retcode: stderr:
stdout:
young@172.18.214.112's password:
:: up days, :, users, load average: 0.09, 0.09, 0.06
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
young pts/ 123.121.57.191 : .00s .81s .02s sshd: young [priv]
young pts/ 123.121.57.191 : : .04s .02s sshd: young [priv]
7、使用salt-ssh执行salt状态
# salt-ssh "*" state.sls install-tomcat
总结:
1、salt-ssh命令用法
-r, –raw, –raw-shell # 直接使用shell命令
-priv #指定SSH私有密钥文件
-roster #定义使用哪个roster系统,如果定义了一个后端数据库,扫描方式,或者用户自定义的的roster系统,默认的就是/etc/salt/roster文件
-roster-file #指定roster文件
-refresh, –refresh-cache #刷新cache,如果target的grains改变会自动刷新
-max-procs #指定进程数,默认为25
-i, –ignore-host-keys #当ssh连接时,忽略keys
-passwd #指定默认密码
-key-deploy #配置keys 设置这个参数对于所有minions用来部署ssh-key认证,这个参和–passwd结合起来使用会使初始化部署很快很方便。当调用master模块时,并加上参数 –key-deploy 即可在minions生成keys,下次开始就不使用密码
2、salt-ssh于salt-minion总结:
1.salt-ssh 是在salt基础上打了一个python包上传到客户端的默认tmp目录下,在客户端上面解压并执行返回结果,最后删除tmp上传的临时文件
2.salt-minion方法是salt-mater先执行语法验证,验证通过后发送到minion,minion收到Msater的状态文件默认保存在/var/cache/salt/minion
注意:也有时候salt-master语法验证通过,在minion上可能因为环境问题会执行失败
3.salt-ssh和salt-minion可以共存,salt-minion不依赖于ssh服务
自动化运维工具saltstack05 -- 之salt-ssh模式的更多相关文章
- 【实战小项目】python开发自动化运维工具--批量操作主机
有很多开源自动化运维工具都很好用如ansible/salt stack等,完全不用重复造轮子.只不过,很多运维同学学习Python之后,苦于没小项目训练.本篇就演示用Python写一个批量操作主机的工 ...
- 自动化运维工具-Ansible基础
目录 自动化运维工具-Ansible基础 什么是Ansible 同类型软件对比 Ansible的功能及优点 Ansible的架构 Ansible的执行流程 安装Ansible ansible配置文件 ...
- 自动化运维工具之Puppet基础入门
一.简介 puppet是什么?它能做什么? puppet是一个IT基础设施自动化运维工具,它能够帮助系统管理员管理基础设施的整个生命周期:比如,安装服务,提供配置文件,启动服务等等一系列操作:基于pu ...
- 自动化运维工具-Ansible之2-ad-hoc
自动化运维工具-Ansible之2-ad-hoc 目录 自动化运维工具-Ansible之2-ad-hoc Ansible ad-hoc Ansible命令模块 Ansible软件管理模块 Ansibl ...
- 自动化运维工具-Ansible之1-基础
自动化运维工具-Ansible之1-基础 目录 自动化运维工具-Ansible之1-基础 Ansible 基本概述 定义 特点 架构 工作原理 任务执行模式 命令执行过程 Ansible 安装 Ans ...
- CheungSSH国产自动化运维工具开源Web界面
CheungSSH web2.0 发布文档 CheungSSH 简介 CheungSSH是一款国人自主研发的Linux运维自动化管理服务器软件,秉着为企业降低运营成本,解放管理员双手和自动化生产的理念 ...
- 自动化运维工具Ansible详细部署 (转载)
自动化运维工具Ansible详细部署 标签:ansible 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://sofar.blog. ...
- 自动化运维工具之 Ansible 介绍及安装使用
一.初识Ansible 介绍: Absible 使用 模块(Modules)来定义配置任务.模块可以用标准脚本语言(Python,Bash,Ruby,等等)编写,这是一个很好的做法,使每个模块幂等.A ...
- 自动化运维工具之ansible
自动化运维工具之ansible 一,ansible简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fab ...
随机推荐
- if 条件为假(不成立),对应的语句块不会执行. 然后往下走
if 的条件为真,则执行语句块. 如果条件不真,则执行后面的语句块, 即 : if False: print("卡卡卡") # 前面的if条件是False,提示"un ...
- 从0开始搭建Element项目
第一步:安装 Node.js/NPM 下载Node.js:https://nodejs.org/zh-cn/download/ 下载安装即可. 第二步:安装 vue-cli 打开 cmd 创建,在命令 ...
- 1103. [POI2007]MEG-Megalopolis【树链剖分】
Description 在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员Blue Mary也开始骑着摩托车传递邮件了. 不过,她经常回忆起以前在乡间漫步的情景.昔日,乡下有依次编号为1.. ...
- iPhone 电脑备份路径
C:\Users\iChen\AppData\Roaming\Apple Computer\MobileSync\Backup
- Docker实战(九)之数据库应用
目前,主流数据库包括关系型和非关系型两种. 关系型数据库是建立在关系模型基础上的数据库,借助于集合代数等数学概念金额方法来处理数据库中的数据,支持复杂的事务处理和结构化查询.代表实现有MySQL .O ...
- layui弹出层之应用实例讲解
从酒店管理系统到智能门锁及其现在的资源共享平台,layui框架,我们团队用的比较多的就是这个layui弹出层. layui弹出层,除了页面iframe层我们比较常用还有就是表单校验和其他相关的友好提示 ...
- 简单说说Vue
Vue.js是这次我们公司迭代项目使用的前端框架之一.我们前端使用的是一个叫Metronic的.Metronic的可以说是bootstrap系列的集合. 当然也用到一个叫layui的,layui的话就 ...
- Python3的动态加载模块简单实例
import os import sys import time import myconfig b = ['123'] a = os.path.abspath(myconfig.__file__) ...
- Python学习笔记系列——数据结构相关
Python有4种数据结构:列表(list).字典(dictionary).元组(Tuple).集合(set).从最直接的感官上来说,这四种数据结构的区别是:列表中的元素使用方括号括起来,字典和集合是 ...
- Node学习笔记之模块实现
一.模块分类 由Node提供的模块,称为核心模块:部分核心模块在Node源代码的编译过程中,编译进了二进制执行文件.在node进程启动时,该部分就直接加载进内存,文件定位和编译执行的步骤可以省略掉,并 ...