SaltStack远程执行】的更多相关文章

Saltstack远程执行 语法例:salt '*' cmd.run 'w' -  命令:salt -  目标:'*' -  模块:cmd.run,自带150+模块,也可以自己写模块 -  返回:执行后结果返回,Returnners组件 1.指定目标(targeting) 官网文档:https://docs.saltstack.com/en/latest/topics/targeting/index.html 两种定位方法:一种和minion ID有关,一种和monion ID无关 1)mini…
SaltStack远程执行详解 ●目标(Targeting) ●模块(Module) ●返回(Returnners) 混合模式-C 选项 主机名设置参照: redis-node1-redis03-idc04-soa.example.com(电商) 1.1模块介绍 [root@linux-node1 salt]# salt '*' service.available sshd linux-node1.zhurui.com:     True linux-node2.zhurui.com:    …
上一篇:SaltStack远程执行-模块 参考官方文档:https://docs.saltstack.com/en/latest/ref/returners/all/salt.returners.mysql.html#module-salt.returners.mysql Salt执行的返回是由minion返回的,是由minion直接写在数据库或者其他里面的 在minion上面安装MySQL-python (salt不支持交互所以需要yum安装是时候加参数y) salt '*' cmd.run…
一.认识自动化运维 传统运维效率低,大多工作人为完成 传统运维工作繁琐,容易出错 传统运维每日重复做相同的事情 传统运维没有标准化流程 传统运维的脚本繁多,不能方便管理 自动化运维就是要解决上面所有问题 Puppet (www.puppetlabs.com)基于rubby开发,c/s架构,支持多平台,可管理配置文件.用户.cron任务.软件包.系统服务等. 分为社区版(免费)和企业版(收费),企业版支持图形化配置. Saltstack(官网 https://saltstack.com,文档doc…
saltstack 支持在master上向client 远程执行命令,并显示命令执行的结果 命令格式: salt '<操作目标>' <方法> [参数] 示例 示例1 ping检查agent *:代表所有minion主机:test:模块: ping:test模块的一个方法,这里的单引号也可以使用双引号 [root@stack-master ~]# salt '*' test.ping stack-master: True stack-node01: True stack-node02…
1.目标 2.执行模块 3.返回 salt ‘*’ cmd.run ‘uptime’ 命令 目标 执行模块 执行模块参数 1.SlatStack远程执行–目标 执行目标:https://docs.saltstack.com/en/latest/topics/targeting/index.html#advanced-targeting-methods (1)和Minion ID相关的目标匹配方式 .MinionID匹配 [root@linux-node1 ~]# salt 'linux-node…
上一篇:SaltStack概述及安装 master也需要安装一个minion 启动salt-master systemctl start salt-master 配置文件在目录/etc/salt下 pki目录是在启动了产生的 修改master上面的minion配置文件/etc/salt/minion master: 192.168.56.11 启动minion systemctl start salt-minion 其他主机也同样修改配置启动 在文件夹/etc/salt下面有个文件minion_…
Saltstack的一个比较突出优势就是具备执行远程命令的功能. 操作方法与func (https://fedorahosted.org/func/)相似,可以帮助运维人员完成集中化的操作平台. http://docs.saltstack.cn/topics/targeting/index.html 命令格式:salt '<操作目标>' <方法> [参数] 查看被控制机的内存使用情况 [root@saltstack-master master]# salt 'saltstack_w…
上一篇:SaltStack数据系统-Pillar 执行模块 salt 'linux-node2.example.com' service.status sshd 其中service是模块名称status是方法sshd是参数 network模块 network.active_tcp返回所有TCP链接 salt 'linux-node2.example.com' network.active_tcp network.arp返回arp表 salt 'linux-node2.example.com' n…
编辑文件fansik.sh 脚本内容: #!/bin/bash # Author: fansik # data: 2017年 09月 26日 星期二 :: CST touch /tmp/fansik.txt if [ -d /tmp/fanjinbao ] then rm -rf /tmp/fanjinbao else mkdir /tmp/fanjinbao fi 编辑sls文件fansik_shell.sls: 内容: fansik_shell: cmd.script: - source:…
近期接到领导通知,要将公司内的所有Windows服务添加到自动发布系统中,由于这种服务很多,节点分布散乱,每次都是由开发主管手动替换(虽然他们自己开发了自动打包替换工具,但仍需要一台一台登陆到服务器上去执行). 工作需求:让所有服务(黑窗口的.exe)在前台cmd显式运行,不能纳入系统服务(不能以服务的形式启动). 其实一开始我是懵逼的,虽然很顺利的完成了拉取程序代码,编译程序,替换文件,停止进程,但在启动黑窗口时,遇到了问题: 就是通过jenkins的pipeline脚本去调用salt-mas…
命令 命令格式: salt '<操作目标>' <方法>[参数] 例: salt 'wx' cmd.run 'free -m' #查看被控主机内存使用情况 常用参数 针对<操作目标>,Saltstack提供了多种方法对被控主机(id)进行过滤.下面列举出常用具体参数:-E,--pcre,通过正则表达式进行匹配: salt -E '^SN2013.*' test.ping #探测SN2013开头的主机id名是否连通 -L,--list,以主机id名列表的形式进行过滤,格式与…
编辑fansik_cmd.sls文件: 内容如下: fansik_cmd:  cmd.run:    - unless:      - test -f /tmp/fansik.txt      - test -d /tmp/fanjinbao    - names:      - touch /tmp/fansik.txt      - mkdir /tmp/fanjinbao    - user: root 说明:unless如果没有才执行,onlyif如果有才执行 执行:salt '*' s…
前几篇文章已经完成了saltstack的安装.认证,从这篇文章开始学习使用saltstack的远程执行. 1.salt远程执行命令详解Usage: salt [options] '<target>' <function> [arguments] [options] :此选项指定以何种方式匹配target. : 通配符匹配 -N: 匹配分组nodegroup -E: 正则匹配 -G:grains匹配 -I: pillar匹配 -L: 列表匹配,使用逗号或者空格匹配. -S: 使用IP…
html,body { font-size: 15px } body { font-family: Helvetica, "Hiragino Sans GB", "微软雅黑", "Microsoft YaHei UI", SimSun, SimHei, arial, sans-serif; line-height: 1.6; margin: 0; padding: 1.33rem 1rem } h1,h2,h3,h4,h5,h6 { margin…
1.远程执行 第一条命令: [root@linux-node1 master]# salt '*' test.ping linux-node2.example.com: True linux-node1.example.com: True 说明: salt:命令 *:匹配目标,使用通配符 test.ping:模块.方法 #此处的ping并非ICMP的ping命令,而是master向minion发送了一个包,minion收到了,返回一个True [root@linux-node1 ~]# salt…
写在前面的话 远程执行可以说是我们使用 Saltstack 最为基础的目的.所以在这里专门作为单独的一篇来详细的聊聊. 远程执行命令 示例命令: salt '*' cmd.run 'w' 命令分析: salt 是命令本身,* 是执行目标,cmd.run 是 Saltstack 自带的模块,目前几百个. 其中一个重要的组成就是执行目标,这是我们执行命令的目的.关于目标,一般有两种选择方式: 1. 基于 Minion ID 的选择方式. 2. 基于 Minion 属性的选择方式. 和 Minion…
1:安装 修改hosts文件,必须保证Master端和Minion端都有完整的FQDN名示例如下: vim /etc/hosts 192.168.31.101 node2 node2.crazylinux.xyz 192.168.31.102 node3 node3.crazylinux.xyz 为了保证Master端和Minion的连通性,建议关闭防火墙以及selinx. systemctl stop firewalld setenforce 0 配置epel源 rpm -ivh https:…
1. 主机规划 远程执行教程文档 https://docs.saltstack.com/en/latest/topics/tutorials/modules.html 所有模块文档 https://docs.saltstack.com/en/latest/ref/modules/all/index.html#all-salt-modules 模块在机器上存在的位置 [root@salt100 modules]# pwd /usr/lib/python2./site-packages/salt/m…
1. 主机规划 2. Master与哪些minion通信 2.1. Master与哪些minion正常通信 [root@salt100 ~]# salt '*' test.ping salt100: True salt01: True salt02: True salt03: True 2.2. 查看master与指定minion通信是否正常 比如指定salt01 [root@salt100 ~]# salt 'salt01' test.ping salt01: True 3. 远程执行 示例1…
点击架构师成长之路 架构师成长之路5.2-Saltstack远程执行 配置管理工具: Pupper:1. 采用ruby编程语言:2. 安装环境相对较复杂:3.不支持远程执行,需要FUNC工具配置才可以 Ansible:1.采用python编程语言:2.被红帽收购:3.轻量级:4.基于模块工作的,本身没有批量部署的能力,真正批量部署的是ansible所运行的模块. Saltstack:采用python编程语言,同时提供Rest API方便二次开发以及和其它平台进行集成(目前企业使用率最高) Sal…
1.目标 2.执行模块 3.返回 salt ‘*’ cmd.run ‘uptime’ 命令 目标 执行模块 执行模块参数 1.SlatStack远程执行–目标 执行目标:https://docs.saltstack.com/en/latest/topics/targeting/index.html#advanced-targeting-methods (1)和Minion ID相关的目标匹配方式 1.MinionID匹配 [root@linux-node1 ~]# salt 'linux-nod…
saltstack命令执行过程 具体步骤如下 Salt stack的Master与Minion之间通过ZeroMq进行消息传递,使用了ZeroMq的发布-订阅模式,连接方式包括tcp,ipc salt命令,将cmd.run ls命令从salt.client.LocalClient.cmd_cli发布到master,获取一个Jodid,根据jobid获取命令执行结果. master接收到命令后,将要执行的命令发送给客户端minion. minion从消息总线上接收到要处理的命令,交给minion.…
## 远程执行shell命令 ssh [user]@[server] '[command]' # eg. ssh root@192.168.1.1 'uptime' ## 远程执行本地shell脚本 ssh [user]@[server] 'bash -s' < [local_script] # eg. ssh root@192.168.1.1 'bash -s' < local_script.sh…
#!/usr/bin/env python # encoding: utf-8 #__author__ = 'cp' #__date__ = '21/07/16 上午 10:32' import threading import time import pexpect import paramiko def copy_file(ip,username,pwd,source_file_name,dest_dir, flag,result,*args,**kwargs): #下发文件到目的主机 co…
利用scp传输文件 1.从服务器下载文件scp username@servername:/path/filename /tmp/local_destination例如scp codinglog@192.168.0.101:/home/kimi/test.txt  把192.168.0.101上的/home/kimi/test.txt 的文件下载到 /tmp/local_destination 指定端口用 -P , 如scp -P 52200 codinglog@192.168.0.101:/ho…
实际应用中,有时候需要从web管理界面上,远程去启动其它linux主机上的程序,利用ssh协议可以方便的满足这一需求.事实上hadoop架构中,从nn上启动dn时,就是利用了免密码ssh登录.ganymed-ssh2是一个实现了ssh协议的开源项目,项目地址为:http://ganymed-ssh-2.googlecode.com/ (下载源码要翻强,众所周知的原因),如果只是使用的话,pom.xml添加以下依赖项就行了: <dependency> <groupId>ch.ethz…
Saltstack异步执行命令 salt执行命令有时候会有超时的问题,就是命令下发下去了,部分主机没有返回信息,这时候就很难判断命令或任务是否执行成功.因此,salt提供异步执行的功能,发出命令后立即返回一个jid.然后我们就可以根据这个jid来查询任务是否执行成功. 命令行实现异步 参数--async,返回job ID,根据job ID我们可以查询执行结果. salt --async '*' test.ping salt-run jobs.lookup_jid 2016111716315335…
ssh无密码登录及远程执行脚本要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS7为例. 测试环境:机器A(10.0.224.80):机器B(192.168.7.172).现想A通过ssh免密码在B上远程执行命令. 1.首先在A机下生成公钥/私钥对:(-P表示密码,-P '' 就表示空密码,一次回车即可.在~/.ssh会生成id_rsa和id_rsa.pub两个文件) [root@registry home]# ssh-keygen -t rsa -…
前言 此程序需要ganymed-ssh2-build210.jar包(下载地址:http://www.ganymed.ethz.ch/ssh2/) 为了调试方便,可以将\ganymed-ssh2-build210\src下的代码直接拷贝到工程里, 此源码的好处就是没有依赖很多其他的包,拷贝过来干干净净. 简介 目的:是执行远程机器上的Shell脚本;远程机器IP:***.**.**.***用户名:sshapp密码:sshapp登录后用pwd命令,显示当前目录为:/sshapp.在/sshapp/…