远程执行  salt '*' state.sls apache

'*':代表所有主机

state.sls :是一个模块

apache : 状态 ,表示需要部署的内容,后缀.sls

  

YAML:三板斧

1、 缩进   (2个空格,不能使用Tab)

2、 冒号 key: value (注意key后面需要有空格)

3、 短横线 – list1   - list2  可以写多个

缩进和冒号表示层级关系:

冒号表示key: value   表示层级关系
短横线 – list      列表,后面都有空格
/etc/salt/master配置文件也是YAML语法
表示协议的肯定没有空格
ps -aux|grep salt

Master配置 测试安装

案例一、

# vim /etc/salt/master

base 基础环境必须有

file_roots  配置项

- /srv/salt/ 列表,可以写多个路径


因为里面定义了.sls存放的路径,需要我们创建

[root@Master ~]# mkdir /srv/salt -p   #创建目录,用于存放sls

[root@01 salt]# cat apache.sls
apache-install:
pkg.installed:
- names:
- httpd
- httpd-devel apache-service:
service.running:
- name: httpd
- enable: True
- reload: True

  

修改完配置文件需要重启

systemctl restart salt-master


参数介绍:
apache-install: 定义的ID
pkg.installed: pkg是一个模块是一个状态后面是模块的方法
- names: 方法的一个参数
- httpd
- httpd-devel安装包名称
apache-servic:
service.running: 模块 方法 running运行
- name: httpd 运行服务的名称
- enable: True 开机自动启动

  

执行状态

[root@01 salt]# ls
apache.sls
[root@01 salt]# pwd
/srv/salt
[root@01 salt]# salt '*' status.sls apache

Master:
----------
ID: apache-install
Function: pkg.installed
Name: httpd
Result: True
Comment: The following packages were installed/updated: httpd
Started: 00:55:59.517437
Duration: 32821.597 ms
Changes:
----------
httpd:
----------
new:
2.4.6-45.el7.centos
old:
httpd-tools:
----------
new:
2.4.6-45.el7.centos
old:
----------
ID: apache-install
Function: pkg.installed
Name: httpd-devel
Result: True
Comment: The following packages were installed/updated: httpd-devel
Started: 00:56:32.347203
Duration: 35405.626 ms
Changes:
----------
apr-devel:
----------
new:
1.4.8-3.el7
old:
apr-util-devel:
----------
new:
1.5.2-6.el7
old:
cyrus-sasl:
----------
new:
2.1.26-20.el7_2
old:
cyrus-sasl-devel:
----------
new:
2.1.26-20.el7_2
old:
cyrus-sasl-lib:
----------
new:
2.1.26-20.el7_2
old:
2.1.26-17.el7
expat:
----------
new:
2.1.0-10.el7_3
old:
2.1.0-8.el7
expat-devel:
----------
new:
2.1.0-10.el7_3
old:
httpd-devel:
----------
new:
2.4.6-45.el7.centos
old:
libdb:
----------
new:
5.3.21-19.el7
old:
5.3.21-17.el7_0.1
libdb-devel:
----------
new:
5.3.21-19.el7
old:
libdb-utils:
----------
new:
5.3.21-19.el7
old:
5.3.21-17.el7_0.1
openldap:
----------
new:
2.4.40-13.el7
old:
2.4.39-6.el7
openldap-devel:
----------
new:
2.4.40-13.el7
old:
----------
ID: apache-servic
Function: service.running
Name: httpd
Result: True
Comment: Service httpd has been enabled, and is running
Started: 00:57:07.787998
Duration: 2090.702 ms
Changes:
----------
httpd:
True Summary
------------
Succeeded: 3 (changed=3)
Failed: 0
------------
Total states run: 3

  

运行地点:

cat /var/cache/salt/minion/files/base/web/apache.sls

案例2

高级配置top调用apache.sls



[root@Master web]# cat  /srv/salt/top.sls
base:
'Minion1': -->表示minion主机名称
- web.apache
'Minion2':
- web.apache

  


执行命令:

salt '*' state.highstate

highstate: 是state模块中的方法

[root@01 salt]# salt '*' state.highstate
www.wawa8888.com:
----------
ID: apache-install
Function: pkg.installed
Name: httpd
Result: True
Comment: Package httpd is already installed
Started: 10:58:04.124771
Duration: 837.654 ms
Changes:
----------
ID: apache-install
Function: pkg.installed
Name: httpd-devel
Result: True
Comment: Package httpd-devel is already installed
Started: 10:58:04.962555
Duration: 0.365 ms
Changes:
----------
ID: apache-service
Function: service.running
Name: httpd
Result: True
Comment: Service httpd is already enabled, and is running
Started: 10:58:04.963307
Duration: 71.43 ms
Changes:
----------

  返回的结果是执行的结果

												

SaltStack 部署案例 02的更多相关文章

  1. SaltStack生产案例-服务部署(redis,mysql,apache+php,haproxy+keepalived)

    顺序代码资料链接 课上资料.zip 接上篇:SaltStack生产案例-系统初始化 1,redis 主从 2,mysql 主从 2.1 mysql-install.sls (安装 初始化) 2.2   ...

  2. Linux平台下Lotus Domino服务器部署案例

    Linux平台下Lotus Domino服务器部署案例 几年前我写了篇<RHAS2.1下安装中文LotusDominoR6.5图解>这篇文档被多个大型网站转载,曾帮助过很多公司系统管理员部 ...

  3. SaltStack部署服务及配置管理apache+php-第二篇

    实验目标 1.使用SaltStack部署apache和php, 2.使用salt管理httpd.conf配置文件配置访问info.php使用账户密码 3.在salt里面增加对conf.d目录进行配置管 ...

  4. salt-stack部署

    saltstack部署   环境准备 [root@server elasticsearch]# cat /etc/redhat-release CentOS release 6.6 (Final)[r ...

  5. web综合案例02

    web综合案例02 web综合案例02 web综合案例02 ... ... 内容待添加

  6. Cesium 本地部署案例

    众所周知,cesium的服务器是搭建在国外的,所以我们国内的用户访问的时候贼慢.有时想查个api或者看个案例半天都进不去,今天我来说一下傻瓜式搭建本地的cesium环境,用于大家没事查资料用!步骤:1 ...

  7. Openstack 实现技术分解 (1) 开发环境 — Devstack 部署案例详解

    目录 目录 前言 系统环境 Devstack 下载源码 配置文件 local.conf & localrc 简易的环境脚本 openrc 部署 Devstack 自动化部署流程 部署案例 单节 ...

  8. 001-SaltStack入门篇(一)之SaltStack部署

    早期运维工作中用过稍微复杂的Puppet,下面介绍下更为简单实用的Saltstack自动化运维的使用. Saltstack知多少Saltstack是一种全新的基础设施管理方式,是一个服务器基础架构集中 ...

  9. saltstack部署配置

    共计使用三台虚拟机进行部署实验,系统环境:centos7.3 在master上进行部署配置: 配置主机名 [root@localhost ~]# hostname salt-master [root@ ...

随机推荐

  1. JAVA提高八:动态代理技术

    对于动态代理,学过AOP的应该都不会陌生,因为代理是实现AOP功能的核心和关键技术.那么今天我们将开始动态代理的学习: 一.引出动态代理 生活中代理应该是很常见的,比如你可以通过代理商去买电脑,也可以 ...

  2. js的事件循环绑定和jQuery的隐式迭代

    js的事件循环绑定和jQuery的隐式迭代 js事件循环绑定 jQuery隐式迭代 先举一个例子:给定一个ul,点击列表内的每一个li元素,使它的背景色变红,下边分别用js代码和jQuery实现. & ...

  3. 如何把项目上传到GitHub上

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 15.0px Consolas; color: #a5b2b9 } span.Apple-tab-span ...

  4. 探索equals()和hashCode()方法

    探索equals()和hashCode()方法 在根类Object中,实现了equals()和hashCode()这两个方法,默认: equals()是对两个对象的地址值进行的比较(即比较引用是否相同 ...

  5. js 判断当前是什么浏览器

    function getExplorer() { var explorer = window.navigator.userAgent; //ie if (explorer.indexOf(" ...

  6. poj 2566 Bound Found

    Bound Found Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 4384   Accepted: 1377   Spe ...

  7. A. 拼音魔法

    A. 拼音魔法 Time limit per test: 1.0 seconds Time limit all tests: 1.0 seconds Memory limit: 256 megabyt ...

  8. 双11Java程序员书单推荐

    Java <Java核心技术卷I> <Java核心技术卷II> <Java编程思想> <Java并发编程实战> <Effective Java&g ...

  9. linux-rmdir

    linux-rmdir rmdir命令用于删除空目录,删除的目录的里面必须无任何东西,有点鸡肋的命令 从下面先建立了一个a文件夹. 命令: rmdir a,即可删除这个空目录,ls 就找不到这个文件夹 ...

  10. NHibernate查询示例合集

    基本查询   复杂查询示例 /// <summary> /// 获取自定义表单数据中属于部门的部分 /// </summary> /// <param name=&quo ...