关闭

SaltStack实战之配置管理-状态间关系

标签: saltstack
286人阅读 评论(0) 收藏 举报
分类:

SaltStack实战之配置管理-状态间关系

@(学习)[SaltStack]

1. 状态相关模块

1.1 pkg

状态模块:pkg
功能:管理软件包状态
常用方法:
* pkg.installed # 确保软件包已安装,如果没有安装则安装
* pkg.latest # 确保软件包是最新版本,如果不是,则进行升级
* pkg.remove # 确保软件包已卸载,如果之前已安装,则进行卸载
* pkg.purge # 除remove外,也会删除其配置文件

官方文档:
https://docs.saltstack.com/en/latest/ref/states/all/salt.states.pkg.html

1.2 file

状态模块:file
功能:管理文件状态
常用方法:
* file.managed # 保证文件存在并且为对应的状态
* file.recurse # 保证目录存在并且为对应状态
* file.absent # 确保文件不存在,如果存在则删除

官方文档:
https://docs.saltstack.com/en/latest/ref/states/all/salt.states.file.html

1.3 service

状态模块:service
功能:管理服务状态
常用方法:
* service.running #确保服务处于运行状态,如果没有运行则启动
* service.enabled # 确保服务开机自动启动
* service.disabled # 确保服务开机不自动启动
* service.dead # 确保服务当前没有运行,如果运行则停止

官方文档:
https://docs.saltstack.com/en/latest/ref/states/all/salt.states.service.html

1.4 requisites

状态模块:requisites
功能:处理状态间关系
常用方法:
* require # 我依赖某个状态(要求、需要)
* require_in # 我被某个状态依赖(被要求、被需要)
* watch # 我关注某个状态(监控)
* watch_in # 我被某个状态关注(被监控)

官方文档:
https://docs.saltstack.com/en/latest/ref/states/requisites.html

2. 实际应用

[root@salt-master112 salt]# cat /srv/salt/dev/lamp.sls

lamp-pkg-install:
  pkg.installed:
    - names:
      - php
      - php-fpm
      - mysql
      - php-mysql
      - php-pdo

apache-service:
  pkg.installed:
    - name: httpd
  file.managed:
    - name: /etc/httpd/conf/httpd.conf
    - source:
      - salt://files/httpd.conf
    - user: root
    - group: root
    - mode: 644
    - require:
      - pkg: apache-service
  service.running:
    - name: httpd
    - enable: True
    - reload: True
    - watch:
      - file: apache-service

mysql-service:
  pkg.installed:
    - name: mysql-server
    - require_in:
      - file: mysql-service
  file.managed:
    - name: /etc/my.cnf
    - source:
      - salt://files/my.cnf
    - user: root
    - group: root
    - mode: 644
    - watch_in:
      - service: mysql-service
  service.running:
    - name: mysqld
    - enable: True

php-fpm-service:
  service.running:
    - name: php-fpm
    - enable: True
0
0
查看评论

实践SaltStack安装和配置管理

1
  • picture1213
  • picture1213
  • 2015-01-22 15:06
  • 793

saltstack配置管理

vim /etc/salt/master mkdir /srv/salt -p
  • xiegh2014
  • xiegh2014
  • 2016-08-07 13:12
  • 668

SaltStack实战之配置管理-Jinja2模板

SaltStack实战之配置管理-Jinja2模板 1. Salt yaml配置文件使用Jinja2模板介绍 1.1 File状态使用template参数 1.2 模板文件里面变量使用{{ 名称 }} 1.3 变量列表 2. 实战应用
  • ygqygq2
  • ygqygq2
  • 2017-06-16 10:02
  • 656

SaltStack实战之配置管理-YAML编写技巧

SaltStack实战之配置管理-YAML编写技巧 1. 概述和内容 2. YAML编写技巧 2.1 缩进 2.2 冒号 2.3 短横线 3. 同步文件实战
  • ygqygq2
  • ygqygq2
  • 2017-06-13 08:38
  • 588

SaltStack实战之配置管理-LAMP自动化部署

SaltStack实战之配置管理-LAMP自动化部署 1. 部署思路 2. 编写lamp.sls
  • ygqygq2
  • ygqygq2
  • 2017-06-15 10:11
  • 380

用开源自动化运维工具 SaltStack 在云平台中实现各主机统一配置管理

本文将主要介绍开源软件 SaltStack 自动化运维工具在大型云计算环境中,如何帮助管理员快速完成运维任务,降低运维工作量,提高效率。根据不同业务特性,进行配置,实现集中化管理、分发文件、采集服务器数据,规范业务等功能。原题:自动化运维工具 SaltStack 在云计算环境中的实践随着云计算技术的...
  • a26r2kF967hGAi
  • a26r2kF967hGAi
  • 2017-12-25 00:00
  • 110

配置管理工具Saltstack 之 自定义grains

salt master配置 # cat /etc/salt/master|grep -v '#' interface: 192.168.xxx.xxx worker_threads: 15 auto_accept: True file_roots: b...
  • qq942477618
  • qq942477618
  • 2016-12-13 11:51
  • 492

SaltStack技术入门与实践

第1章 SaltStack入门 1.2.1 SaltStack软件依赖 SaltStack有两种消息系统,一种是REAT,一种是ZeroMQ,默认使用ZeroMQ. 软件依赖列表如下: ●Python版本大于2.6或版本小于3.0:对Python版本要求 ●msgpack-pyth...
  • foreverfriends
  • foreverfriends
  • 2017-09-01 17:06
  • 576

Saltstack配置状态同步管理

SaltStack State的数据有两种表现形式,分别是High State与Low State。High State是用户可见的数据,而Low State则是由Salt提取并使用的数据。其它这是同一份数据,只不过在不同场合使用了不同的展示形式。 服务、安装包或配置文件的状态同步,是State模...
  • watermelonbig
  • watermelonbig
  • 2017-09-15 08:56
  • 275

SaltStack实战应用

Saltstack是基于Python开发的一套C/S架构配置管理工具,轻松管理上万台服务器,服务器之间实现秒级通讯。
  • qq_30004245
  • qq_30004245
  • 2017-11-02 11:14
  • 372
    个人资料
    • 访问:53585次
    • 积分:1048
    • 等级:
    • 排名:千里之外
    • 原创:92篇
    • 转载:3篇
    • 译文:0篇
    • 评论:9条
    文章分类
    最新评论