远程执行  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. 旅行(LCA)

    Description N-1座桥连接着N个岛屿,每座桥都连接着某两个不同的岛屿,从任意一个岛屿都可以到达所有的其他岛屿,过桥需要缴纳人民币1元的过桥费. 由于某些不可透露的原因,Jason和他的2个 ...

  2. 获取Django项目的全部url

    在为一个项目添加权限时,遇到一个问题,就是为项目所有的url设置权限,但是一个一个手动输入太麻烦了,所以考虑用代码获取到一个项目所有的url 首先,考虑到项目最外层的urlpartterns,因为所有 ...

  3. 异步任务--celery发送邮件

    安装两个python包: pip install celery==3.1.25 pip install django-celery==3.1.17 在配置文件settings.py中做如下配置: a) ...

  4. Linux系统Shell脚本编程

    1. shell脚本概念:C语言编写的.命令解释器.编程语言. 是用户使用linux的桥梁. shell脚本语言非常擅长处理文本类型的数据. 2. shell脚本作用:自动化管理.监控管理.日志数据处 ...

  5. Java常用类(五)之集合工具类Collections

    前言 Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具类提供了大量方法对集合进行排序.查询和修改等操作, 还提供了将集合对象置为不可变.对集合对象实现同步控 ...

  6. 笔记-JDBC和commons-dbutils

    1.前言 玩过Java web的人应该都接触过JDBC,正是有了它,Java程序才能轻松地访问数据库.JDBC很多人都会,但是为什么我还要写它呢?我曾经一度用烂了JDBC,一度认为JDBC不过如此,后 ...

  7. Golang源码探索(一) 编译和调试源码

    GO可以说是近几年最热门的新型语言之一了, 一般人看到分布式和大数据就会想到GO, 这个系列的文章会通过研究golang的源代码来分析内部的实现原理, 和CoreCLR不同的是, golang的源代码 ...

  8. Linux学习(十四)磁盘格式化、磁盘挂载、手动增加swap空间

    一.磁盘格式化 分好去的磁盘需要格式化之后才可以使用.磁盘分区一般用mke2fs命令或者mkfs.filesystemtype.这个filesystemtype分为ext4,ext3,xfs等等.xf ...

  9. MAC 下虚拟主机的配置

    第一部分:httpd.conf 1:找到这段,改成如下这样 <Directory /> Options Indexes FollowSymLinks AllowOverride All O ...

  10. C#设计模式之十二享元模式(Flyweight)【结构型】

    一.引言   今天我们要讲[结构型]设计模式的第六个模式,该模式是[享元模式],英文名称是:Flyweight Pattern.还是老套路,先从名字上来看看."享元"是不是可以这样 ...