常用模块:cron,cmd,file,mount,ntp,pkg,service,user,group

cmd模块

参数:

name:要执行的命令

unless:用于检查的命令,只有unless指向的命令返回False时才执行name那行的命令

cwd:执行命令时的目录,默认为root

user:以指定用户身份运行命令

group:以指定用户组身份运行命令

run:运行name后的命令

require:确保某个模块执行之后才执行这个模块

实例

[root@test81 ~]# cat install.sls
nginx_source: ##自定义命名
file.managed:
- name: /tmp/nginx-1.4.5.tar.gz #这个是指minion端
- unless: test -f /tmp/nginx-1.4.5.tar.gz ##若minion端不存在/tmp/nginx-1.4.5.tar.gz这个文件,才会执行这个file模块
- source: salt://nginx/files/nginx-1.4.5.tar.gz ##这个是指master端文件存放的位置,意思是把master端salt://nginx/files/nginx-1.4.5.tar.gz文件copy到minion端/tmp/nginx-1.4.5.tar.gz tar_nginx: ##自定义命名
cmd.run:
- cwd: /usr/local/src ##当前工作目录
- name: tar zxvf nginx-1.4.5.tar.gz
- unless: test -d /usr/local/src/nginx-1.4.5 ##若minion端不存在/usr/local/src/nginx-1.4.5 这个目录,才会执行name后命令
- require: ##确保nginx_source里的file模块执行成功才执行这个cmd模块
- file: nginx_source

pkg模块

参数:

installed:安装

latest:将软件更新到最新

removed:删除软件

pkgs:安装多个软件包时,一次全部安装(推荐)

names:安装多个软件包时,一次安装一个(不推荐)

实例

mypkgs:
pkg.installed:
- pkgs: #安装多个软件包,用pkgs函数一次全部安装,一行一个
- gcc
- cmake
- make
#- name: httpd #安装多个软件包,一次安装一个,与pkgs一起用时,此函数将被忽略

user模块

present:创建用户

absent:删除用户

fullname:用户名

password:密码

uid:

gid:

createhome:True为创建家目录,False不创建家目录

home:用户家目录

hwg:
user.present:
- fullname: Jim
- shell: /bin/bash
- home: /home/hwg
- uid: 600
- gid: 600
- groups:
- wheel
- storage
- games

file.managed

参数:

user:用户

group:用户组

mode:文件属性(如644)

template:模板类型(比如:jinja)

makedirs:默认为False,如果被管理的文件父目录不存在则失败,如果为True,如果父目录不存在则会创建

dir_mode:设置创建目录的权限

replace:默认为True,若设置为False将不替换文件内容,但是会更改权限

context:覆盖文件上下文参数

default:默认上下文参数

backup:备份功能,有改动才备份,会备份到minion下的:/var/cache/salt/minion/backup_files

show_off:设置成False,则不显示更改的不同点,默认为True

create:默认为True,如果设置为False,在文件存在的情况下则只更改文件

contents:默认为空,添加字符串到文本中

实例:

nginx_source:
file.managed:
- name: /tmp/nginx-1.5.1.tar.gz
- unless: test -e /tmp/nginx-1.5.1.tar.gz
- user: root
- group: root
- makedirs: True
- source: salt://nginx/file/nginx-1.5.1.tar.gz

SaltStack学习系列之state常用模块的更多相关文章

  1. SaltStack学习系列之State安装Nginx+PHP环境

    目录结构 |-- pillar | |-- nginx | | `-- nginx.sls #nginx变量(key:value) | `-- top.sls `-- salt|-- init #初始 ...

  2. Python学习系列(六)(模块)

    Python学习系列(六)(模块) Python学习系列(五)(文件操作及其字典) 一,模块的基本介绍 1,import引入其他标准模块 标准库:Python标准安装包里的模块. 引入模块的几种方式: ...

  3. Func系列2:常用模块及API

    简介 Func提供了非常丰富的功能模块,包括CommandModule(执行命令).CopyFileModule(拷贝文件).CPUModule(CPU信息).DiskModule(磁盘信息).Fil ...

  4. Django学习之六:Django 常用模块导入记忆

    Django 常用模块导入记忆 django相关 1. urls相关操作 from django.urls import path, re_path, include from django.urls ...

  5. Python学习—基础篇之常用模块

    常用模块 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...

  6. Python学习之路13☞常用模块

    一 time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行“type(t ...

  7. Node.js实战项目学习系列(5) node基础模块 path

    前言 前面已经学习了很多跟Node相关的知识,譬如开发环境.CommonJs,那么从现在开始要正式学习node的基本模块了,开始node编程之旅了. path path 模块提供用于处理文件路径和目录 ...

  8. Python学习-第四节:常用模块-logging,re,time

    1:logging模块 import logging logging.debug('This is debug message') logging.info('This is info message ...

  9. Disconf 学习系列之Disconf 的模块架构图

    不多说,直接上干货!  Disconf 的模块架构主要包括: Disconf-Tools . Disconf-Web. Disconf-client 和  Disconf-Core. 每个模块的简单介 ...

随机推荐

  1. qt查找框设置

    转载请注明出处:http://www.cnblogs.com/dachen408/p/7229129.html 主界面弹出查找框方法,查找框显示在主界面上层,并还可以点击主界面,非模态. class ...

  2. ES6语法糖集锦

    sublime3安装Es6插件 javascriptNext,然后安装即可 Java​Script​Next - ES6 Syntax()高亮插件 -------------------------- ...

  3. UEFI启动 安装win8 win10 及windows server 2012 最简单的方法

    纯UEFI模式只认U盘 纯UEFI模式下U盘安装的具体步骤其实很简单:                                   1.BIOS设置中启动项关闭兼容模式            ...

  4. 迅为iTOP-4418/6818开发板MiniLinux下的GPS使用手册

    平台:iTOP-4418/6818开发板 系统:MiniLinux 在 Mini Linux 系统环境下 iTOP-4418 和 6818 的 GPS 实验调试步骤.给用户提供了“iTOP-4418- ...

  5. sh NonUniqueObjectException

    话题引入: 使用hibernate进行更新操作时,首先调用了findById方法获取要修改的对象,此时session没有被关闭,接着重新创建一个对象,将要修改的属性值赋值给这个对象.调用修改方法抛出如 ...

  6. 关于Maven项目的pom.xml中的依赖或插件失效的解决方法

    1.请将<dependency>标签包含的依赖从<dependencyManagement>中拿出来,单独放在<dependencies>标签里面.2.请将< ...

  7. C# defult关键字

    一.问题 今天写一个函数提示用defult,因为第一次用记录一下 public static T GetConfig<T>(string strConfig) { try { return ...

  8. li标签和checkbox绑定

    参考原文:https://www.cnblogs.com/youxin/p/3885496.html 我们经常需要li或span包含一个checkbox,不管点击checkbox或li都会触发相应的事 ...

  9. 51node 1134 最长递增子序列 (数据结构)

    题意: 最长递增子序列 思路: 普通的$O(n^2)$的会超时.. 然后在网上找到了另一种不是dp的写法,膜拜一下,自己写了一下解释 来自:https://blog.csdn.net/Adusts/a ...

  10. CSU 2018年12月月赛 H(2220): Godsend

    Description Leha somehow found an array consisting of n integers. Looking at it, he came up with a t ...