Saltstack 命令】的更多相关文章

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.…
SaltStack 是基于 Python 开发的一套C/S架构配置管理工具.2020年11月SaltStack官方披露了CVE-2020-16846和CVE-2020-25592两个漏洞,其中CVE-2020-25592允许任意用户调用SSH模块,CVE-2020-16846允许用户执行任意命令.组合这两个漏洞,将可以使未授权的攻击者通过Salt API执行任意命令 影响范围 SaltStack < 3002.1 SaltStack < 3001.3 SaltStack < 3000.5…
在Salt主机上,可以快速查看所有Salt minion连接,并查看连接是否被接受,拒绝或挂起 [root@node1 ~]# salt-key -L 接受所有的key [root@node1 ~]# salt-key -A 在接受每个密钥后,从Salt主人发送一个命令,以验证您的Salt Minions是否正在侦听 [root@node1 ~]# salt '*' test.ping Salt允许使用cmd.run跨多个系统执行shell命令,所有受管系统同时并立即执行此命令,然后将输出返回给…
命令格式 salt '<操作目标>' <方法>[参数] 查看被控主机内存使用情况 [root@node1 ~]# salt '*' cmd.run 'free -h' node2: total used free shared buff/cache available Mem: 727M 127M 406M 5.1M 194M 473M Swap: .5G 0B .5G 查看以node开头的主机IP是否联通 [root@node1 ~]# salt -E '^node' test.…
命令:salt-key # 测试 命令:salt-key -A # 管理所有minion 命令:salt-key -a # 管理定义minion 命令:salt-key -d ID名字 # 删除单个minion 命令:salt-key -D ID名字 # 删除所有minion 命令:salt '*' test.ping # 检查主机是否存活 |___其他用法:salt ‘指定id名’ test.ping |___其他用法:salt '*' test.version # 查看salt版本 命令:s…
master指定文件,覆盖到所有minion命令 salt-cp '*' /etc/hosts /etc/ -------------------------------------------- {'Stest1': {'/etc/hosts': True}, 'Stest2': {'/etc/hosts': True}} -------------------------------------------- 注:将master /etc/hosts 传输到minion下的/etc/…
批量发送发送命令符,并返回结果. salt '*' cmd.run 'df -h' ---------------------------------------- Stest1: Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 50G .8G 49G % / devtmpfs .9G .9G % /dev tmpfs .9G 12K .9G % /dev/shm tmpfs .9G .9G % /run tm…
saltstack自动化运维系列④之saltstack的命令返回结果mysql数据库写入salt的返回值写入mysql数据库:可参考:https://docs.saltstack.com/en/latest/ref/returners/all/salt.returners.mysql.html#module-salt.returners.mysql 在mysql数据库中创建数据库.表 CREATE DATABASE `salt` DEFAULT CHARACTER SET utf8 DEFAUL…
一.SaltStack介绍 1.1 saltstack简介: saltstack是基于python开发的一套C/S架构配置管理工具,它的底层使用ZeroMQ消息队列pub/sub方式通信,使用SSL证书签发的方式进行认证管理.ZeroMQ使SaltStack能快速在成千上万台机器上进行各种操作,之前已经介绍过了puppet mco的框架,比较类似.而且采用RSA Key方式确认身份,传输采用AES加密,使传输的安全性得到保障. saltstack是基于C/S架构的服务模式,服务器端叫做Maste…
python3 安装api # 首先安装python3 .tgz cd Python- . ./configure make make install mv /usr/bin/python /usr/bin/python2 # 如果是软连接,可以直接删除 /usr/bin/python vim /usr/bin/yum # 修改Yum,使yum依然有效,yum依靠老版本的python #!/usr/bin/python 修改为#!/usr/bin/python2 # 修改完/usr/bin/yu…
序言 最近在使用salt-api做主机批量管理部署,整理一下文档.之前使用saltstack 多用于命令行管理,自己做web版的自动化管理平台时,发现命令行的些许局限性,接触到salt-api,找到了替代方式.本文使用的saltstack 版本是2018.3.0最新版本,这个版本中官方做了更多python3的支持,使用utf-8,修补了许多与文件I/O和str/bytes不匹配的问题.之前在使用salt时都是用的Python2版本,现在使用的架构是python3版本的,毕竟未来python3才是…
软件依赖 Python版本大于2.6或版本小于3.0: 对Python版本要求 msgpack-python: SalStack消息交换库 YAML: SaltStack配置解析定义语法 Jinja2: SaltStack states配置模板 MarkupSafe: Python unicode转换库 apache-libcloud: SaltStack对云架构编排库 Requests: HTTP Python库 ZeroMQ: SaltStack消息系统 pyzmq: ZeroMQ Pyth…
saltstack安装:略过 python脚本修改密码: # -*- coding utf-8 -*- import socket import re import os import sys import crypt localIP = socket.gethostbyname(socket.gethostname()) def password(): localIP = socket.gethostbyname(socket.gethostname()) #获取本地ip a = re.spl…
一.salt-api安装 yum install salt-api pyOpenSSL -y #pyOpenSSL 生成自签证书时使用 二.生成自签名证书(ssl使用) [root@master certs]# salt-call tls.create_self_signed_cert local: Created Private Key: "/etc/pki/tls/certs/localhost.key." Created Certificate: "/etc/pki/t…
SaltStack简介 SaltStack saltstack是一个新的基础平台管理工具,只需要花费数分钟即可运行起来,可以支撑管理上万台服务器的规模,数秒钟即可完成数据传递. saltstack是使用Python语言开发的,同时也支持restAPI方便二次开发以及和它平台集成,同时官方也发布了一个Web管理界面halite. Salt是python编写的,支持用户通过python自定义功能模块,也提供了大量的python API接口,用户可以根据需要进行简单快速的扩展. 优点 首先,他速度快,…
Saltstack介绍 Salt三种运行方式 1.local本地运行2.Master/Minion3.Salt ssh Salt的三大功能 a.远程执行b.配置管理(状态管理)c.云管理:阿里云,aws,openstack都提供了封装好的接口,可以使用salt-cloud进行云主机的管理 Saltstack环境准备第一台:mini1,既作为salt-master,又作为salt-minion第二台:node2.chinasoft.com,只作为salt-minion 1.安装salt客户端和服务…
Windows下批量添加防火墙例外端口,查了网上资料,基本上都是使用"Netsh命令",循环增加端口,这会导致建立的规则特别多,不便于管理,查了下微软的资料,原来是Netsh命令,只支持一个端口: 在我机器上执行Netsh命令时,提示不建议用这个了,推荐用:netsh advfirewall firewall 于是根据提示,查询:https://go.microsoft.com/fwlink/?linkid=121488 辗转查到更详细的文档: https://technet.micr…
Python3使用saltstack和salt-api 安装python3 1. tar zxvf Python-3.5.1.tgz 2. cd Python-3.5.1 3. ./configure 4. make 5. make install 6. mv /usr/bin/python /usr/bin/python2 # 如果是软连接,可以直接删除 7. ln -s /usr/local/bin/python3.5 /usr/bin/python 8. vim /usr/bin/yum…
salt-api 安装  配置源 (系统环境s示例是centos6) epel 源 rpm -Uvh https://mirrors.tuna.tsinghua.edu.cn/epel/6/i386/epel-release-6-8.noarch.rpm salt-stack 源 # cat salt-stack.repo [saltstack-repo] name=SaltStack repo for Red Hat Enterprise Linux $releasever baseurl=h…
1. 主机规划 salt 版本 [root@salt100 ~]# salt --version salt (Oxygen) [root@salt100 ~]# salt-minion --version salt-minion (Oxygen) netapi modules https://docs.saltstack.com/en/latest/ref/netapi/all/index.html rest_cherrypy https://docs.saltstack.com/en/late…
Saltstack异步执行命令 salt执行命令有时候会有超时的问题,就是命令下发下去了,部分主机没有返回信息,这时候就很难判断命令或任务是否执行成功.因此,salt提供异步执行的功能,发出命令后立即返回一个jid.然后我们就可以根据这个jid来查询任务是否执行成功. 命令行实现异步 参数--async,返回job ID,根据job ID我们可以查询执行结果. salt --async '*' test.ping salt-run jobs.lookup_jid 2016111716315335…
利用saltstack的salt.client模块可以在python的命令行下或者python脚本里执行相应的salt命令 master端想要执行类似 salt '*' cmd.run 'uptime' 在saltclient里可以这么写 import salt.client local = salt.client.LocalClient() local.cmd('*', 'cmd.run', ['uptime']) 也可以放到后台执行只返回一个jid cmd_async('*', 'cmd.r…
命令 命令格式: salt '<操作目标>' <方法>[参数] 例: salt 'wx' cmd.run 'free -m' #查看被控主机内存使用情况 常用参数 针对<操作目标>,Saltstack提供了多种方法对被控主机(id)进行过滤.下面列举出常用具体参数:-E,--pcre,通过正则表达式进行匹配: salt -E '^SN2013.*' test.ping #探测SN2013开头的主机id名是否连通 -L,--list,以主机id名列表的形式进行过滤,格式与…
Saltstack的一个比较突出优势就是具备执行远程命令的功能. 操作方法与func (https://fedorahosted.org/func/)相似,可以帮助运维人员完成集中化的操作平台. http://docs.saltstack.cn/topics/targeting/index.html 命令格式:salt '<操作目标>' <方法> [参数] 查看被控制机的内存使用情况 [root@saltstack-master master]# salt 'saltstack_w…
1.salt安装及配置详解 https://www.cnblogs.com/lgeng/p/6567424.html centos7配置: https://www.jianshu.com/p/4c9185ad0bbd centos6安装: https://blog.csdn.net/wh211212/article/details/77053708?locationNum=9&fps=1 centos6配置: https://www.cnblogs.com/zzzhfo/p/5790918.ht…
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…
一.认识自动化运维 传统运维效率低,大多工作人为完成 传统运维工作繁琐,容易出错 传统运维每日重复做相同的事情 传统运维没有标准化流程 传统运维的脚本繁多,不能方便管理 自动化运维就是要解决上面所有问题 Puppet (www.puppetlabs.com)基于rubby开发,c/s架构,支持多平台,可管理配置文件.用户.cron任务.软件包.系统服务等. 分为社区版(免费)和企业版(收费),企业版支持图形化配置. Saltstack(官网 https://saltstack.com,文档doc…
前言:   2020年5月3日,阿里云应急响应中心监测到近日国外某安全团队披露了SaltStack存在认证绕过致命令执行漏洞以及目录遍历漏洞.在多个微信群和QQ群已经有群友反映中招,请马上修复. 以下为通知详情: 1.漏洞描述   SaltStack是基于Python开发的一套C/S架构配置管理工具.国外某安全团队披露了SaltStack存在认证绕过漏洞(CVE-2020-11651)和目录遍历漏洞(CVE-2020-11652).在CVE-2020-11651认证绕过漏洞中,攻击者通过构造恶意…
master服务启动 CentOS 7 (Debian.OpenSuse.Fedora) systemctl start salt-master /etc/init.d/salt-master start CentOS 6  (Fedora.RHEL.Ubuntu) service salt-master start /etc/init.d/salt-master start 另一种方式 salt-master -d salt master能够在前台以debug模式启动,这样会极大增加命令输出:…
一.开发目标命令格式如下: 二.目录结构 三.代码注解 01.salt.py 只是一个入口,没干什么事情 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:luoahong import os, sys if __name__ == "__main__": os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Stark.settings") B…