centos 7 使用Ansible 发布tomcat 服务

简介: 本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/51182480 未经博主允许不得转载。 博主地址是:http://blog.csdn.net/freewebsys1,关于ansibleansible是一个python开放的服务器部署工具。 使用yml,进行配置,非常简单容易学习。

本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/51182480 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys

1,关于ansible


ansible是一个python开放的服务器部署工具。
使用yml,进行配置,非常简单容易学习。

2,安装


http://docs.ansible.com/ansible/intro_installation.html
参考官网网站,centos 7直接yum install 就行了。

 sudo yum install ansible

3,创建tomcat部署yml


ansible的模块有很多超级方便:
http://docs.ansible.com/ansible/list_of_all_modules.html
tomcat在部署的时候直接把webapps里面的文件夹全部删除。
在部署的时候直接部署到webapps/ROOT文件夹里面。
因为webapps里面是tomcat的admin管理和一些demo的,也没有啥用,还有安全隐患,直接删除。
编辑 admin.yml,其中tomcat-admin需要在hosts里面配置好。

- name: install tomcat admin 
  hosts: tomcat-admin
  sudo: True
  vars:
    war_file: /local-data-dir/admin.war #本地文件
    tomcat_root: /remote-data-dir/tomcat/webapps/ROOT #部署的远程ROOT目录
  tasks:
    - name: stop tomcat.
      action: shell {{ tomcat_root }}/../../bin/catalina.sh stop -force
    - name: rm ROOT.
      file: 
        state: absent
        dest: "{{ tomcat_root }}"
    - name: mkdir ROOT.
      file:
        state: directory
        dest: "{{ tomcat_root }}"
        owner: root
        group: root
        mode: 755
    - name: unzip war.
      unarchive: 
        src: "{{ war_file }}"
        dest: "{{ tomcat_root }}"
        copy: yes
    - name: start tomcat.
      action: shell {{ tomcat_root }}/../../bin/catalina.sh start

使用了 5个命令解决tomcat上线的问题。
1,action: shell 停止tomcat,由于直接将tomcat目录设置成了了root目录。多了个 ../../bin。
2,删除ROOT文件夹 使用file: state:absent,好处防止错误删除文件。
3,使用unarchive命令,copy:yes直接拷贝本地文件到远程,并且解压缩后删除文件。省了几步重复操作。一步搞定。
参考:
http://docs.ansible.com/ansible/unarchive_module.html

直接执行 ansible-playbook admin.yml即可部署。非常简单。

4,总结


本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/51182480 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys

ansible使用了yml,学起来非常的简单。
非常讨厌的写shell,使用python部署净写一些重复的代码。
而且在部署的时候调试也很麻烦,ansible非常好,调试也很简单加上-debug:标签就行。

目录
相关文章
|
3月前
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
324 1
|
2月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
179 2
|
3月前
|
监控 安全 Linux
CentOS7下安装配置ntp服务的方法教程
通过以上步骤,您不仅能在CentOS 7系统中成功部署NTP服务,还能确保其配置合理、运行稳定,为系统时间的精确性提供保障。欲了解更多高级配置或遇到特定问题,提供了丰富的服务器管理和优化资源,可作为进一步学习和求助的平台。
228 1
|
3月前
|
应用服务中间件 Apache Windows
免安装版的Tomcat注册为windows服务
免安装版的Tomcat注册为windows服务
138 3
|
3月前
|
Linux PHP Apache
CentOS 7.2配置Apache服务httpd(下)
CentOS 7.2配置Apache服务httpd(下)
59 1
|
4月前
|
Java 应用服务中间件 Windows
windows服务器重装系统之后,Tomcat服务如何恢复?
windows服务器重装系统之后,Tomcat服务如何恢复?
69 10
|
4月前
|
存储 Linux Docker
CentOS 7.6安装Docker实战案例及存储引擎和服务进程简介
关于如何在CentOS 7.6上安装Docker、介绍Docker存储引擎以及服务进程关系的实战案例。
203 3
CentOS 7.6安装Docker实战案例及存储引擎和服务进程简介
|
4月前
|
Linux
CentOS 7.x时间同步服务chrony配置详解
文章详细介绍了在CentOS 7.x系统中如何安装和配置chrony服务,以及它与ntpd服务的对比,强调了chrony在时间同步方面的高效性和准确性。
308 2
|
5月前
|
关系型数据库 MySQL Linux
Linux(CentOS7)搭建LAMP服务环境
本文介绍了在Linux (CentOS 7) 上搭建LAMP服务环境的详细步骤,包括安装Apache HTTPd、解决编译时依赖问题、配置Apache服务、安装PHP以及处理PHP与Apache集成时遇到的问题。同时,还涉及了防火墙设置和SELinux权限调整,确保Web服务能够正常运行。
107 2
|
5月前
|
Linux
centos7及Tomcat8Dockerfile
centos7及Tomcat8Dockerfile