实验目标

简单部署tomcat及安装java环境

实现步骤

编写salt的状态模块
[root@linux-node1 web]# pwd
/srv/salt/base/web
[root@linux-node1 web]# cat tomcat.sls
jdk-install:
pkg.installed:
- name: java-1.8.-openjdk #rpm包安装不需要添加环境变量 tomcat-install:
file.managed:
- name: /usr/local/src/apache-tomcat-8.0..tar.gz
- source: salt://web/files/apache-tomcat-8.0.46.tar.gz
- user: root
- group: root
- mode:
cmd.run:
- name: cd /usr/local/src && tar zxf apache-tomcat-8.0..tar.gz && mv apache-tomcat-8.0. /usr/local/ && ln -s /usr/local/apache-tomcat-8.0. /usr/local/tomcat
- unless: test -L /usr/local/tomcat && test -d /usr/local/apache-tomcat-8.0.
上传apache-tomcat-8.0.46到salt的文件管理目录下
[root@linux-node1 src]# ll /srv/salt/base/web/files/apache-tomcat-8.0..tar.gz
-rw-r--r-- root root Oct /srv/salt/base/web/files/apache-tomcat-8.0..tar.gz
执行状态模块
[root@linux-node1 web]# salt "linux-node2*" state.sls web.tomcat
linux-node2.example.com:
----------
ID: jdk-install
Function: pkg.installed
Name: java-1.8.-openjdk
Result: True
Comment: The following packages were installed/updated: java-1.8.-openjdk
Started: ::55.027164
Duration: 46213.48 ms
Changes:
----------
chkconfig:
----------
new:
1.7.-.el7
old:
1.3.-.el7_2.
copy-jdk-configs:
----------
new:
2.2-.el7
old:
giflib:
----------
new:
4.1.-.el7
old:
java-1.8.-openjdk:
----------
new:
:1.8.0.144-.b01.el7_4
old:
java-1.8.-openjdk-headless:
----------
new:
:1.8.0.144-.b01.el7_4
old:
javapackages-tools:
----------
new:
3.4.-.el7
old:
libICE:
----------
new:
1.0.-.el7
old:
libSM:
----------
new:
1.2.-.el7
old:
libXcomposite:
----------
new:
0.4.-4.1.el7
old:
libXext:
----------
new:
1.3.-.el7
old:
libXfont:
----------
new:
1.5.-.el7
old:
libXi:
----------
new:
1.7.-.el7
old:
libXrender:
----------
new:
0.9.-.el7
old:
libXtst:
----------
new:
1.2.-.el7
old:
libfontenc:
----------
new:
1.1.-.el7
old:
lksctp-tools:
----------
new:
1.0.-.el7
old:
nspr:
----------
new:
4.13.-1.0.el7_3
old:
4.11.-.el7_2
nss:
----------
new:
3.28.-.el7_4
old:
3.21.-.el7_2
nss-pem:
----------
new:
1.0.-.el7
old:
nss-softokn:
----------
new:
3.28.-.el7_4
old:
3.16.2.3-14.2.el7_2
nss-softokn-freebl:
----------
new:
3.28.-.el7_4
old:
3.16.2.3-14.2.el7_2
nss-sysinit:
----------
new:
3.28.-.el7_4
old:
3.21.-.el7_2
nss-tools:
----------
new:
3.28.-.el7_4
old:
3.21.-.el7_2
nss-util:
----------
new:
3.28.-.el7
old:
3.21.-2.2.el7_2
python-javapackages:
----------
new:
3.4.-.el7
old:
python-lxml:
----------
new:
3.2.-.el7
old:
ttmkfdir:
----------
new:
3.0.-.el7
old:
tzdata-java:
----------
new:
2017b-.el7
old:
xorg-x11-font-utils:
----------
new:
:7.5-.el7
old:
xorg-x11-fonts-Type1:
----------
new:
7.5-.el7
old:
----------
ID: tomcat-install
Function: file.managed
Name: /usr/local/src/apache-tomcat-8.0..tar.gz
Result: True
Comment: File /usr/local/src/apache-tomcat-8.0..tar.gz updated
Started: ::41.243020
Duration: 496.457 ms
Changes:
----------
diff:
New file
mode: ----------
ID: tomcat-install
Function: cmd.run
Name: cd /usr/local/src && tar zxf apache-tomcat-8.0..tar.gz && mv apache-tomcat-8.0. /usr/local/ && ln -s /usr/local/apache-tomcat-8.0. /usr/local/tomcat
Result: True
Comment: Command "cd /usr/local/src && tar zxf apache-tomcat-8.0.46.tar.gz && mv apache-tomcat-8.0.46 /usr/local/ && ln -s /usr/local/apache-tomcat-8.0.46 /usr/local/tomcat" run
Started: ::41.740160
Duration: 1288.003 ms
Changes:
----------
pid: retcode: stderr:
stdout: Summary
------------
Succeeded: (changed=)
Failed:
------------
Total states run:

salt "linux-node2*" state.sls web.tomcat

总结

1.添加状态模块的时候,应该自己得先在别的机器上面跑一遍流程在添加
2.状态模块中- source: salt://web/files/apache-conf.d #支持ftp或者http上面 base环境的路径 
3.使用的时候要先测试 test=True
4.ID 有不同表示方式
5.状态模块需要执行模块执行才能生效
6.相同的业务用目录进行分类管理
7.sls文件是从上往下按照顺序执行
8.一个ID下面一个状态只能出现一次
9.pkg是虚拟的包管理,在不同系统下面包的安装命令不同 比如 CentOS 和Ubuntu
10.watch 和watch_in require和require_in 在状态模块中可以统一用其中的一种
11.salt默认是有缓存的,可以无关紧要的配置重启进程刷新缓存
      salt任务执行过程中不删除缓存目录里面的文件 缓存目录默认为/var/cache/salt


附 https://github.com/unixhot/saltbook-code/tree/master

SaltStack部署配置Tomcat-第三篇的更多相关文章

  1. SaltStack 入门到精通第三篇:Salt-Minion配置文件详解

    SaltStack 入门到精通第三篇:Salt-Minion配置文件详解 作者:ArlenJ  发布日期:2014-06-09 17:52:16   ##### 主要配置设置 ##### 配置 默认值 ...

  2. saltstack部署配置

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

  3. 将web应用部署到Tomcat的三种方式

    Tomcat作为Servlet/JSP容器(服务器)挺不错的,开源免费,需要知道的是Tomcat是一个Web服务器,其符合Servlet/JSP规范,但是却没有实现所有JavaEE规范,所以我们还是应 ...

  4. 01 . SaltStack部署配置及简单应用

    SaltStack简介 SaltStack saltstack是一个新的基础平台管理工具,只需要花费数分钟即可运行起来,可以支撑管理上万台服务器的规模,数秒钟即可完成数据传递. saltstack是使 ...

  5. .NET持续集成与自动化部署之路第三篇——测试环境到生产环境的一键部署策略(Windows)

    Jenkins测试环境到生产环境的一键部署策略(Windows) 一.前言     前面我们已经初步实现了开发集成环境.测试环境的持续集成(自动化构建.自动化测试.自动化部署).但生产环境自动化部署迟 ...

  6. jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第三话):创建一个自由风格的项目(非maven),实现自动打war包

    上一节把git和ant安装在虚拟机,并在jenkins上做了相关配置,接下来就可以真正开始构建一个项目了 1.新建一个自由风格的项目,因为是用ant打包,所以不要选择构建maven项目 2.配置源码管 ...

  7. IntelliJ Idea14 创建Maven多模块项目,多继承,热部署配置总结(三)

    pom.xml中repositories.pluginRepository的作用 pom.xml中repositories标签的作用是: 用来配置maven项目的远程仓库.示例如下: <repo ...

  8. Tomcat 第三篇:总体架构设计

    Tomcat 总体架构设计 在开始这篇文章的时候,忽然发现上一篇内容的题目不是很合适,不应该叫启动流程,更确切的应该是叫启动脚本. 在最开始,先介绍下 Tomcat 的总体设计,先有一个大概的印象,对 ...

  9. 将spring boot项目部署到tomcat容器中

    一. 我这里用的环境 tomcat: tomcat 8 jdk: jdk 7 spring boot 版本: 1.5 二. 将创建好的spring boot项目做如下修改 2.1. 修改打包形式 在p ...

随机推荐

  1. elasticsearch的store属性 vs _source字段

    众所周知_source字段存储的是索引的原始内容,那store属性的设置是为何呢?es为什么要把store的默认取值设置为no?设置为yes是否是重复的存储呢? 我们将一个field的值写入es中,要 ...

  2. 并发编程 - 进程 - 1.队列的使用/2.生产者消费者模型/3.JoinableQueue

    1.队列的使用: 队列引用的前提: 多个进程对同一块共享数据的修改:要从硬盘读文件,慢,还要考虑上锁: 所以就出现了 队列 和 管道 都在内存中(快): 队列 = 管道 + 上锁 用队列的目的: 进程 ...

  3. 【opencv】projectPoints 三维点到二维点 重投影误差计算

    今天计算rt计算误差——重投影误差 用solvepnp或sovlepnpRansac,输入3d点.2d点.相机内参.相机畸变,输出r.t之后 用projectPoints,输入3d点.相机内参.相机畸 ...

  4. c++ caffe 输出 activation map 、 层参数

    python输出activation map与层参数:https://blog.csdn.net/tina_ttl/article/details/51033660 caffe::Net文档: htt ...

  5. Flask之基本使用与配置

    简介 Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理 ...

  6. K-modes聚类算法MATLAB

    K-modes算法主要用于分类数据,如 国籍,性别等特征. 距离使用汉明距离,即有多少对应特征不同则距离为几. 中心点计算为,选择众数作为中心点. 主要功能: 随机初始化聚类中心,计算聚类. 选择每次 ...

  7. java-mybaits-00503-延迟加载

    1.什么是延迟加载 resultMap可以实现高级映射(使用association.collection实现一对一及一对多映射),association.collection具备延迟加载功能. 需求: ...

  8. linux系统压缩\解压命令详解

    转自:http://www.cnblogs.com/qq78292959/archive/2011/07/06/2099427.html. tar -c: 建立压缩档案-x:解压-t:查看内容-r:向 ...

  9. RF是如何工作的?

    随机森林的发展史 谈及随机森林算法的产生与发展,我们必须回溯到20世纪80年代.可以说,该算法是Leo Breiman, Adele Cutler, Ho Tin Kam, Dietterich, A ...

  10. Linux系统——inode和block

    Linux文件属性 磁盘被分区并格式化为ext4文件系统后,会生成一定数量的inode和block Inode 索引节点 作用:存放文件的属性信息以及作为文件的索引(指向文件的实体block) Blo ...