1.前置条件
需要用控制节点对所有server节点进行本地解析与免密登录。
方法已经写在另一篇博客中,在此不再赘述。
2.编写jspgou部署剧本
---
- name: launch jspgou
hosts: test
gather_facts: no
tasks:
- name: Unarchive jdk1.8
unarchive:
src: /root/jdk-8u421-linux-x64.tar.gz
dest: /usr/local/
copy: yes
creates: /usr/local/java
- name: Unarchive tomcat
unarchive:
src: /root/apache-tomcat-9.0.91.tar.gz
dest: /usr/local/
copy: yes
creates: /usr/local/tomcat
- name: rename jdk
shell:
cmd: mv jdk1.8.0_421 java
chdir: /usr/local
creates: /usr/local/java
- name: rename tomcat
shell:
cmd: mv apache-tomcat-9.0.91 tomcat
chdir: /usr/local
creates: /usr/local/tomcat
- name: Add a line java_home to profile
lineinfile:
path: /etc/profile
line: export JAVA_HOME=/usr/local/java
- name: Add a line path to profile
lineinfile:
path: /etc/profile
line: export PATH=$JAVA_HOME/bin:$PATH
- name: Add a line tomcat_home to profile
lineinfile:
path: /etc/profile
line: export TOMCAT_HOME=/usr/local/tomcat
- name: Add a line source /etc/profile to startup.sh
lineinfile:
path: /usr/local/tomcat/bin/startup.sh
line: source /etc/profile #在启动命令文件开头加入环境变量生效命令
insertbefore: BOF
- name: Add a line source /etc/profile to shutdown.sh
lineinfile:
path: /usr/local/tomcat/bin/shutdown.sh #在关闭命令文件开头加入环境变量生效命令
line: source /etc/profile
insertbefore: BOF
- name: start tomcat
shell:
cmd: nohup ./bin/startup.sh & #一定要后台执行
chdir: /usr/local/tomcat
- name: Create /usr/local/jspgou
file:
path: /usr/local/jspgou
state: directory
- name: Unarchive jspgou
unarchive:
src: /root/jspgouV6.1-ROOT.zip
dest: /usr/local/jspgou
copy: yes
creates: /usr/local/jspgou/DB
- name: ensure mariadb installed
yum:
name: "{{ packages }}"
vars:
packages:
- mariadb
- mariadb-server
- name: Enable mariadb
service:
name: mariadb
enabled: yes
state: started
- name: create database jspgou
shell: |
mysql -uroot -e 'create database jspgou character set utf8 collate utf8_general_ci;'
mysql -uroot -e "grant all on *.* to jspgou@localhost identified by 'jspgou'"
mysql -uroot jspgou < /usr/local/jspgou/DB/jspgou.sql
mysql -uroot -e 'flush privileges;'
- name: Check if the webapps exists #判定webapps目录是否存在
stat:
path: /usr/local/tomcat/webapps
register: webapps_stat
- name: remove webapps
file:
path: /usr/local/tomcat/webapps
state: absent
when: webapps_stat.stat.exists
- name: create webapps
file:
path: /usr/local/tomcat/webapps
state: directory
- name: copy ROOT to webapps
shell: |
cp -r /usr/local/jspgou/ROOT /usr/local/tomcat/webapps
- name: define mariadb.user
lineinfile:
path: /usr/local/tomcat/webapps/ROOT/WEB-INF/config/jdbc.properties
regexp: '^jdbc.username='
line: jdbc.username=jspgou
- name: input mariadb.password
lineinfile:
path: /usr/local/tomcat/webapps/ROOT/WEB-INF/config/jdbc.properties
regexp: '^jdbc.password='
line: jdbc.password=jspgou
3.其他
访问http://服务端ip地址:8080
jspgou管理员后台网址:http://服务端ip地址:8080/jeeadmin/jspgou/index.do
用户名:admin 密码:123456