saltstack(四):saltstack配置管理-常用模块介绍
只是配置管理中的常用模块
pkg 模块
pkg模块是虚拟的,根据操作系统的不同,调用相关的工具安装操作系统。
https://www.unixhot.com/docs/saltstack/ref/states/all/salt.states.pkg.html#module-salt.states.pkg
pkg模块常用方法:
pkg.installed 安装
pkg.latest 确保最新版本
pkg.remove 卸载
pkg.purge 卸载并且删除配置文件
#使用pkg模块安装多个软件:
lamp-pkg:
pkg-installed:
- pkgs:
- httpd
- php
- mysql
- maridb-server
- php-mysql
- php-cli
- php-mbstring
file模块
https://www.unixhot.com/docs/saltstack/ref/states/all/salt.states.file.html#module-salt.states.file
apache-config:
file.managed:
- name: /etc/httpd/conf/httpd.conf
- source: salt://files/httpd.conf
- user: root
- group: root
- mode: 644
file.copy /etc/nginx/nginx.conf /home/zhanqi/nginx.conf 文件复制 file.get_sum /home/zhanqi/nginx.conf md5 文件md5校验 file.chown /home/zhanqi/nginx.conf zhanqi zhanqi 修改文件所属用户以及组 file.set_mode /home/zhanqi/nginx.conf 755 修改文件权限 file.mkdir /home/zhanqi/testdir 创建目录 file.remove /home/zhanqi/testdir 移除目录 file.append /home/zhanqi/nginx.conf 'add_header "Access-Control-Allow-Origin" "*";' 追加内容到文件 file.recurse 下发目录
2)salt文件file模块,可以使用jinja模板。
Salt lets you manage files using templates and variables.
file.managed 是salt的state function。管理minion'上的local file,通过指定master上的source文件
service
样例:
apache-services:
service.running:
- name: httpd
- enable: True # 允许开机启动
- reload: True # 允许重载