saltstack实战3--配置管理之pillar】的更多相关文章

SaltStack实战 #安装 安装注意几点 python-libs-2.6.6-64.el6.x86_64 conflicts with file from package python-2.6.6-36.el6.x86_64 yum install python-libs解决 yum的版本太低的话是会出现问题的 http://mirror.centos.org/centos/6/os/x86_64/Packages/yum-3.2.29-69.el6.centos.noarch.rpm rp…
SaltStack数据系统之Grains.Pillar 1.什么是Grains? Grains是saltstack的组件,用于收集salt-minion在启动时候的信息,又称为静态信息.Grains是服务器的一系列粒子信息,也就是服务器的一系列物理,软件环境信息.在执行salt的sls时候可以根据Grains信息的不同对服务器进行匹配分组,例如可以根据系统是centos服务器跟系统是redhat环境的安装不同的软件包.Grains功能:1.收集资产信息 2.信息查询 官方文档:https://d…
数据系统-Pillar pillar和grains类似,但是它能给minion指定它想要的数据,安全性较好,另外它是在master端设置的   应用场景: grains的特性–每次启动汇报.静态决定了它没有pillar灵活,要知道pillar是随时可变的,只要在master端修改了那一般都会立刻生效的. 所以grains更适合做一些静态的属性值的采集,例如设备的角色(role),磁盘个数(disk_num)等诸如此类非常固定的属性.如果你想定义的属性值是经常变化的,那请采用pillar,如果是很…
场景:公司有10台服务器需要安装lamp测试环境,使用saltstack编写state文件进行批量部署,可以提高工作效率,减少人为出错的可能性,保证环境的一致性. saltstack之配置管理lamp实战案例: 1.修改master配置文件,指定dev环境. [root@node1 dev]# egrep -A ^file /etc/salt/master file_roots: base: - /srv/salt/base dev: - /srv/salt/dev 2.编写state文件,最终…
Saltstack配置管理-业务引用haproxy 在业务模块里写它的配置 各个业务是不同的,这里有差异性,所以没写在配置模块里. 对minion02也执行安装haproxy [root@master ~]# salt 'minion02' state.sls haproxy.install env=prod 关于系统初始化部分和haproxy安装部分,所有minion都是相同的.而业务这块因前期规划不同,配置有差异. 我们把因为业务差异的这部分单独拿出来.单独配置 创建目录,编辑haproxy…
Saltstack配置管理-给minion增加Zabbix-agent zabbix-agent的包 [root@A ~]# rpm -qa |grep zabbix zabbix-2.4.8-1.el6.x86_64 zabbix-web-2.4.8-1.el6.noarch zabbix-web-mysql-2.4.8-1.el6.noarch zabbix-server-mysql-2.4.8-1.el6.x86_64 zabbix-server-2.4.8-1.el6.x86_64 za…
规范配置管理 实际工作中可能会有现网环境,基线环境,开发环境. 需要使用saltstack统一管理.机器多了,业务多了,可能配置文件存放的会比较乱,因此可以统一管理起来 我们可以再加2个目录,test是测试环境,prod是生产环境,base是基线环境. 操作如下,新添加2个目录,同时调整基线目录 # Example: # file_roots: # base: # - /srv/salt/ # dev: # - /srv/salt/dev/services # - /srv/salt/dev/s…
grains是什么 grains是minion服务启动后,采集的客户端的一些基本信息,硬件信息,软件信息,网络信息,软件版本等.你可以在minion上自定义一些grains信息. 它是静态的信息,minion服务启动后采集,如果一些信息变更,需要重启minion服务.grains适合做一些静态的属性值的采集 grains的使用 salt  'minionid'  grains.ls salt  'minionid'  grains.items salt  'minionid'  grains.i…
场景:rpm包安装的nginx服务,无法满足定制模块的需求,故线上环境使用nginx源码进行安装.本片文章详细介绍如何使用saltstack的配置管理功能实现nginx软件的源码安装. 下载源码:pcre下载源码:nginx 1.修改master配置文件,指定环境为prod. [root@node1 prod]# egrep -A ^file_roots /etc/salt/master file_roots: base: - /srv/salt/base dev: - /srv/salt/de…
配置管理是saltstack工具最重要的模块之一,也是学习saltstack之后使用最多的一个功能.可以轻松实现上百台上千台甚至上万台服务器的管理工作. 1.使用state模块进行配置管理,编写sls文件,sls文件使用的是yaml语法格式. yaml文件的语法格式: structure通过空格来展示. sequence里的项用"-"来表示. map里的键值对用":"来表示. 2.常用的state模块及方法:file: file.managed --文件管理(重点)…
Saltstack配置管理-功能模块-安装haproxy 配置管理,我们分了3层 最底层是系统初始化部分 倒数二层是功能模块,就是具体的产品的安装了 假如你的环境需要nginx,php,memcache,haproxy这4个功能模块 为了方便管理,你至少要创建4个目录 由于编译安装中用到一些依赖的包需要提前安装,我们又可以单独建立一个包管理的目录 操作如下 [root@master base]# cd [root@master ~]# mkdir /srv/salt/prod/pkg [root…
target 就是目标的意思,你要在那台机器上执行此命令或此状态.或者说将此动作或者状态文件推送给谁来执行,让那个minion执行可以进行一些匹配 对于拥有大量机器的环境,如果单独一台台的执行指定minion去执行,反而违saltstack设计的初衷. 它有如下参数可以使用 1. globbing 默认 [root@master scripts]# salt 'minion01' test.ping minion01: True [root@master scripts]# 2. -L,--li…
saltstack有3大功能:远程执行,配置管理,云管理 其中远程执行又可分解为:目标,模块,返回  这3个部分. 比如下面语句 [root@master ~]# salt '*' test.ping minion01: True minion02: True [root@master ~]# salt '*' cmd.run 'df -h' minion02: Filesystem Size Used Avail Use% Mounted on /dev/sda3 35G 4.2G 30G 1…
#运维管理工具 ansible #支持ssh,不需要客户端 saltstack #也是只是ssh,不需要客户端的 安装架构是,master /minion 安装salt的依赖模块 python zeromq 是一个消息队列 ,master和minion通信,需要将master发送的命令,放入一个队列中 rabbitmq rpc 远程消息调用 pyzmp pycrypto msgpack-python yaml jinja2 yaml-是一个新兴的语法格式 salt ansible python…
本文来自如下链接http://docs.saltstack.cn/topics/yaml/index.html 了解YAML 默认的SLS文件的renderer是YAML renderer.YAML是一个有很多强大特性的标记性语言.Salt使用了一个YAML的小型子集,映射非常常用的数据结构,像列表和字典.YAML renderer的工作是将YAML数据格式的结构编译成为Python数据结构给Salt使用. 尽管YAML语法可能第一眼看上去很简洁但令人畏惧,但是只要记住三个非常简单的规则就可以使…
本来转自http://www.cnblogs.com/MacoLee/p/5753640.html  版权归原作者所有 说明 salt '*' sys.list_modules #列出当前版本支持的模块 API原理是通过调用master client模块,实例化一个LocalClient对象,再调用cmd()方法来实现的.以下API实现test.ping的示例:(其他API调用只需要改变cmd即可) import salt.client client = salt.client.LocalCli…
Syndic建立在中心Master和Minions之间, 并允许多层分级Syndic, 使Salt拓扑可以变得更为灵活. 那么Syndic是如何工作的? 当前有哪些优势和局限哪? Syndic的优势和局限 优势1.通过Syndic, 可以建立多层级的Salt拓扑, Syndic下的Minions即可通过Syndic所在的Master进行管理, 也可以通过MasterOfMaster及更高层级的Master进行管理, 架构变得异常灵活.2.由于Syndic只订阅MasterOfMaster下发下来…
1:定义远程配置时描述位置,salt配置用的是一种yaml的描述语法,saltstack也是可以分环境的,比如测试环境.生产环境,默认是base,base也是必须存在的,修改内容如下: file_roots: base: - /srv/salt 修改完成以后需要重启 systemctl restart salt-master 2:状态的top.sls文件需要写在base环境的目录下,此文件是记录状态的文件,譬如说node1 节点需要执行Apache,node2需要按照mysql.默认位置在/sr…
如果不想依赖master可以设置为无master vim /etc/salt/minion 就可以通过minion来安装一个salt-master了(下来查资料做,关闭salt-minion进程因为不需要) 1,修改minion配置文件 2,编写SLS 3,salt-call  --local state.highstate 多master Multi-Master keys  master minion file_roots pillar_roots 在minion指定两个master PS:…
Saltstack数据系统 分为Grains和Pillar 一.Grains 静态数据,当Minion启动的时候收集的MInion本地的相关信息.(包含操作系统版本.内核版本.CPU.内存.硬盘.设备型号等) 备注:不重启minion,这些信息数据是不会改变的. 1)信息管理,包括资产管理: 例: salt 'linux-node1*' grains.ls # 列出ID为linux-node1的主机,grains的所有key salt 'linux-node1*' grains.items #…
上一篇:SaltStack数据系统-Grains 使用saltstack进行配置管理可以使用pillar定义主机假如是Openstack修改了一下nova的密码就需要修改很多配置文件 pillar很安全只有指定的人才能看 查看pillar(默认为空) salt '*' pillar.items 修改配置文件设置成显示 可以使用命令salt '*' pillar.items查看 关闭配置以免影响自定义pillar 设置pillar 修改配置文件/etc/salt/master(pillar设置与f…
写在前面的话 上一节谈及了 Saltstack 的安装和初始化配置,本节将谈谈 Saltstack 中两个重要的东西,Grains 和 Pillar. 数据系统 Grains 入门 Grains 是静态数据,其数据来源于 Minion 启动的时候收集的有关客户端本地的相关信息. 包括操作系统,内核,CPU,内存,硬盘,设备型号等等.这就意味着我们可以使用 Saltstack 做资产管理. 这些静态数据除非是  Minion 重启或者 Master 端主动同步更新,否则不会改变. 1. 查看 gr…
1. SaltStack数据系统 Grains (谷物) Pillar (支柱) 2.Grains Grains存放着Salt命令启动时收集的信息,运行时不收集 2.1  信息查询 收集资产 网卡,ip,cpu .... (1)收集系统底层的msg [root@linux-node1 ~]# salt '*' grains.ls [root@linux-node1 ~]# salt '*' grains.items (2)查询单个 [root@linux-node1 ~]# salt '*' g…
一.saltstack简介 1.saltstack是什么 系统管理员日常会进行大量的重复性操作,例如安装软件,修改配置文件,创建用户,批量执行命令等,如果主机数量庞大,单靠人工维护实在让人难以忍受. 早期运维人员会根据自己的生产环境来写特定脚本完成大量重复性工作,这些脚本复杂且难以维护.系统管理员面临的问题主要是: 系统配置管理 远程执行命令 因此诞生了很多开源软件,系统维护方面有fabric.puppet.chef.ansible.saltstack等,这些软件擅长维护系统状态或方便的对大量主…
Slatstack 介绍 官网:https://saltstack.com/ 官方源:http://repo.saltstack.com/  (介绍各操作系统安装方法) centos 6源 ? 1 yum install https://repo.saltstack.com/yum/redhat/salt-repo-latest-1.el6.noarch.rpm centos 7 源 ? 1 yum install https://repo.saltstack.com/yum/redhat/sa…
salt介绍 salt简单介绍 一个基础平台管理工具 一个配置管理系统,能够维护预定义状态的远程节点 一个分布式远程执行系统,用来在远程节点上执行命令和查询数据 salt的核心功能 使命令发送到远程系统是并行 使用安全加密的协议 使用最小最快的网络载荷 提供简单的编程接口 salt的优点 saltstack使用python编写的,设备是轻量级别的 saltstack通讯层采用zeroMQ实现使得它很快速 saltstack开源 salt-master启动时会启动两个端口 4505:为salt的消…
自动化运维之SaltStack实践 1.1.环境 linux-node1(master服务端) 192.168.0.15 linux-node2(minion客户端) 192.168.0.16 1.2.SaltStack三种运行模式介绍 Local 本地 Master/Minion 传统运行方式(server端跟agent端) Salt SSH SSH 1.3.SaltStack三大功能 ●远程执行 ●配置管理 ●云管理 1.4.SaltStack安装基础环境准备 [root@linux-nod…
1. 主机规划 Pillar文档 https://docs.saltstack.com/en/latest/topics/pillar/index.html 注意事项 修改了master或者minion的配置文件,那么必须重启对应的服务. 2. Grains VS Pillar 3. Pillar基本信息 Pillar Pillar数据是动态的 给特定的minion指定特定的数据. 只有指定的minion自己能够看到自己的数据 [所以必须要有top.sls] 因此可以用于敏感数据 Pillar刷…
saltstack高效运维   salt介绍 saltstack是由thomas Hatch于2011年创建的一个开源项目,设计初衷是为了实现一个快速的远程执行系统. salt强大吗 系统管理员日常会进行大量的重复性操作,例如安装软件,修改配置文件,创建用户,批量执行命令等等.如果主机数量庞大,单靠人工维护实在让人难以忍受. 早期运维人员会根据自己的生产环境来写特定脚本完成大量重复性工作,这些脚本复杂且难以维护.系统管理员面临的问题主要是1.系统配置管理,2.远程执行命令,因此诞生了很多开源软件…
索引 saltstack入门 salt state sls 描述文件 saltstack配置管理高级功能 saltstack入门 192.168.86.3 salt 修改 [root@Zabbix-sever salt]# salt-key -L Accepted Keys: Denied Keys: Unaccepted Keys: members.sunpie.com node2.com Zabbix-sever minion名称 /bin/rm /etc/salt/minion_id sy…