CentOS 7 使用Ansible 发布Tomcat 服务

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

2,安装


参考官网网站,CentOS 7直接yum install 就行了。

sudo yum install ansible 3,创建tomcat部署yml

ansible的模块有很多超级方便:

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直接拷贝本地文件到远程,并且解压缩后删除文件。省了几步重复操作。一步搞定。
参考:

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

4,总结

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

使用 Ansible 高效交付 Docker 容器 

使用Ansible批量管理远程服务器 

Ansible安装配置与简单使用 

在 CentOS 7 中安装并使用自动化工具 Ansible 

Ansible和Docker的作用和用法 

Ansible批量搭建LAMP环境

Ansible :一个配置管理和IT自动化工具 

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

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/a08310c20048f3d5cd8df0ff7430c343.html