saltstack之(七)配置管理系统初始化init
saltstack的配置管理分环境管理:
①.base为基础环境,一般会存放一些所有服务器都使用的配置管理信息。
②.dev为开发测试环境,一般会存放一些开发测试服务器使用的配置管理信息。
③.pro为线上环境,一般会存放线上服务器使用的配置管理信息。
saltstack的配置管理的state文件入口为top.sls,建议每个环境配置一个top.sls文件。
saltstack之系统初始化实战案例:
1.修改node1上master配置文件,定义base环境。
[root@node1 base]# egrep -A ^file_roots /etc/salt/master
file_roots:
base:
- /srv/salt/base
2.编写state文件,最终的目录树如下所示:
[root@node1 base]# tree /srv/salt/base/
/srv/salt/base/
├── init
│ ├── dns.sls
│ ├── env_init.sls
│ ├── files
│ │ ├── hosts
│ │ └── zabbix_agentd.conf
│ ├── history.sls
│ ├── sysctl.sls
│ └── zabbix_agent.sls
└── top.sls directories, files
3.state文件的详细内容:
*注释:由于配置文件过多,直接定义在top.sls文件中显得过于臃肿,故定义了一个env_init.sls文件,将所有的state文件include进去,详见最后一个文件内容。
[root@node1 base]# cat top.sls
base:
'*':
- init.env_init [root@node1 base]# cat init/dns.sls
dns-service:
file.managed:
- name: /etc/hosts
- source: salt://init/files/hosts
- user: root
- group: root
- mode: [root@node1 base]# cat init/history.sls
/etc/profile:
file.append:
- text:
- export HISTTIMEFORMAT="%F %T `whoami`" [root@node1 base]# cat init/sysctl.sls
net.ipv4.ip_forward:
sysctl.present:
- value:
vm.swappiness:
sysctl.present:
- value: [root@node1 base]# cat init/zabbix_agent.sls
zabbix-agent:
pkg.installed:
- name: zabbix-agent
file.managed:
- name: /etc/zabbix/zabbix_agentd.conf
- source: salt://init/files/zabbix_agentd.conf
- user: root
- group: root
- mode:
- template: jinja
- defaults:
HOST: 192.168.3.1 ----此处要记得配置模板文件 {{ HOST }},如果不记得使用方法,参考配置管理state文章。
- require:
- pkg: zabbix-agent
service.running:
- name: zabbix-agent
- enable: true
- watch:
- file: zabbix-agent [root@node1 base]# cat init/env_init.sls
include:
- init.dns
- init.sysctl
- init.history
- init.zabbix_agent
4.在node1上master端执行配置管理的state文件,可以先执行测试,测试通过后再执行。
[root@node1 ~]# salt '*' state.highstate env=base test ---加test参数后,模拟执行操作,不会真正执行。
[root@node1 ~]# salt '*' state.highstate env=base
saltstack之(七)配置管理系统初始化init的更多相关文章
- easyconf——基于AugularJS的配置管理系统开发框架
目录 1 easyconf的诞生2 easyconf的设计理念 2.1 总体设计 2.2 细节设计 2.2.1 CRUD操作 2.2.2 即时校验 2.2.3 下拉框设计3 easyconf使用指南 ...
- 浅析 Linux 初始化 init 系统,第 1 部分: sysvinit 第 2 部分: UpStart 第 3 部分: Systemd
浅析 Linux 初始化 init 系统,第 1 部分: sysvinit 第 2 部分: UpStart 第 3 部分: Systemd http://www.ibm.com/developerw ...
- puppet(一种Linux、Unix、windows平台的集中配置管理系统)
puppet是一种Linux.Unix.windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等.puppet把这些系统实体称之为资 ...
- 学习saltstack (七)
一.SaltStack概述 Salt,,一种全新的基础设施管理方式,部署轻松,在几分钟内可运行起来,扩展性好,很容易管理上万台服务器,速度够快,服务器之间秒级通讯. salt底层采用动态的连接总线, ...
- saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy的Keepalived
saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy的Keepalived 安装配置Keepalived 1.编写功能模块 #创建keepalived目录# mkdir -p ...
- saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy
saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy 下载haproxy1.6.2.tar.gz下载地址:http://www.haproxy.org/download/1. ...
- 温故之--Linux 初始化 init 系统
参选URL: http://www.ibm.com/developerworks/cn/linux/1407_liuming_init1/index.html 本系列一共三篇,看完记住,那水平就不一样 ...
- 在过滤器中获取在web.xml配置的初始化参数
在过滤器中获取在web.xml配置的初始化参数 例如 <filter> <filter-name>cross-origin</filter-name> < ...
- nginx&http 第二章 ngx 事件event配置等初始化
event事件模块,配置分为两层:ngx_events_module 事件模块 和 ngx_event_core_module 事件核心模块.ngx_events_module:模块类型NGX_COR ...
随机推荐
- _jobdu_1002
/************************************************************************/ /* 题目1002:Grading 时间限制:1 ...
- 让apache不区分图片和文件后缀大小写
加载mod_speling模块: LoadModule speling_module /usr/lib/apache2/modules/mod_speling.so 开启模块: CheckSpelli ...
- 嵌入式 如何定位死循环或高CPU使用率(linux) 及性能优化
嵌入式 如何定位死循环或高CPU使用率(linux) ln -s /mnt/nfs/_install/usr/bin/sort /usr/bin/sort awk '{print $1,$2,$14, ...
- Redis 笔记与总结4 set 和 zset 类型
(一)set 类型 set 是集合是 string 类型的无序集合. set 元素最大可以包含(2 的 32 次方)个元素.set 的是通过 hash table 实现的,所以添加.删除和查找的复杂度 ...
- TextView实现圆角效果
自定义一个Xml样式: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android ...
- WITCH CHAPTER 0 [cry] 绝密开发中的史克威尔艾尼克斯的DX12技术演示全貌
西川善司的[WITCH CHAPTER 0 cry]讲座 ~绝密开发中的史克威尔艾尼克斯的DX12技术演示全貌 注:日文原文地址: http://pc.watch.impress.co.jp/d ...
- 关于在jquery动态修改css,html中,mouseenter,mouseleave,click等方法失效的处理
- MySQL优化常用
一.mysql的配置都是小写的,使用下划线_或破折号-分割单词,两者是一样的二.在配置文件中可以用1m,1g等单位,但是用set命令,不能使用单位,默认单位是字节三.特殊例子a.query_cache ...
- 纸牌project
用range[0,8)的列表表示牌,这些数字要出现两次.我们建议你通过连接两个range[0,8)的列表来创建这个list.利用Docs来安排列表串联操作 写一个draw handler啥样的draw ...
- 在Delphi下,如何使ShowMessage中的按钮中文化
如果你使用messagedlg(对showmessage也适用)可以汉化定义按钮caption的常量,具体操作步骤如下: 1. 打开文件consts.pas(在Delphi安装目录的/source ...