阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 7 使用Ansible 发布Tomcat 服务

185次阅读
没有评论

共计 1892 个字符,预计需要花费 5 分钟才能阅读完成。

1,关于 ansible

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

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,总结

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

使用 Ansible 高效交付 Docker 容器  http://www.linuxidc.com/Linux/2015-10/124233.htm

使用 Ansible 批量管理远程服务器  http://www.linuxidc.com/Linux/2015-05/118080.htm

Ansible 安装配置与简单使用  http://www.linuxidc.com/Linux/2015-07/120399.htm

在 CentOS 7 中安装并使用自动化工具 Ansible  http://www.linuxidc.com/Linux/2015-10/123801.htm

Ansible 和 Docker 的作用和用法  http://www.linuxidc.com/Linux/2014-11/109783.htm

Ansible 批量搭建 LAMP 环境 http://www.linuxidc.com/Linux/2014-10/108264.htm

Ansible:一个配置管理和 IT 自动化工具  http://www.linuxidc.com/Linux/2014-11/109365.htm

Ansible 的详细介绍 :请点这里
Ansible 的下载地址 :请点这里

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-04/130599.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计1892字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中