Ansible
This commit is contained in:
parent
f4fc62bf03
commit
bdf870d1d7
3
SDIS29-P2/ppe34test/hosts
Normal file
3
SDIS29-P2/ppe34test/hosts
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[local]
|
||||||
|
localhost
|
||||||
|
127.0.0.1
|
13
SDIS29-P2/ppe34test/ppebase.yml
Normal file
13
SDIS29-P2/ppe34test/ppebase.yml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
- name: Installer Tomcat et MariaDB puis lancer les services
|
||||||
|
hosts: all # Inventory hosts group / server to act on
|
||||||
|
become: yes # If to escalate privilege
|
||||||
|
become_method: sudo # Set become method
|
||||||
|
remote_user: root # Update username for remote server
|
||||||
|
vars:
|
||||||
|
tomcat_ver: 10.0.13 # Tomcat version to install
|
||||||
|
ui_manager_user: manager # User who can access the UI manager section only
|
||||||
|
ui_manager_pass: root # UI manager user password
|
||||||
|
ui_admin_username: admin # User who can access bpth manager and admin UI sections
|
||||||
|
ui_admin_pass: root # UI admin password
|
||||||
|
roles:
|
||||||
|
- ppebase
|
9
SDIS29-P2/ppe34test/ppedb.yml
Normal file
9
SDIS29-P2/ppe34test/ppedb.yml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
- name: Creer la BDD, creer les comptes et injecter la BDD
|
||||||
|
hosts: all
|
||||||
|
become: yes
|
||||||
|
become_method: sudo
|
||||||
|
remote_user: root
|
||||||
|
|
||||||
|
roles:
|
||||||
|
- ppedb
|
9
SDIS29-P2/ppe34test/ppedbdump.yml
Normal file
9
SDIS29-P2/ppe34test/ppedbdump.yml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
- name: Sauvegarder la BDD
|
||||||
|
hosts: all
|
||||||
|
become: yes
|
||||||
|
become_method: sudo
|
||||||
|
remote_user: root
|
||||||
|
|
||||||
|
roles:
|
||||||
|
- ppedbdump
|
2
SDIS29-P2/ppe34test/roles/ppebase/defaults/main.yml
Normal file
2
SDIS29-P2/ppe34test/roles/ppebase/defaults/main.yml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
tomcat_archive_url: http://depl/store/apache-tomcat-10.0.13.tar.gz
|
||||||
|
tomcat_archive_dest: /usr/share/tomcat/
|
96
SDIS29-P2/ppe34test/roles/ppebase/tasks/main.yml
Normal file
96
SDIS29-P2/ppe34test/roles/ppebase/tasks/main.yml
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
- name: Install basic packages
|
||||||
|
package:
|
||||||
|
name: ['vim','aptitude','bash-completion','tmux','tree','htop','wget','unzip','curl','git','python']
|
||||||
|
state: present
|
||||||
|
update_cache: yes
|
||||||
|
|
||||||
|
- name: installer JDK
|
||||||
|
apt:
|
||||||
|
name: openjdk-11-jdk
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: creer le repertoire /opt/tomcat
|
||||||
|
file:
|
||||||
|
path: /usr/share/tomcat
|
||||||
|
state: directory
|
||||||
|
mode: 0755
|
||||||
|
|
||||||
|
- name: creer le groupe tomcat
|
||||||
|
group:
|
||||||
|
name: tomcat
|
||||||
|
|
||||||
|
- name: creer l'utilisateur tomcat
|
||||||
|
user:
|
||||||
|
name: tomcat
|
||||||
|
group: tomcat
|
||||||
|
home: /usr/share/tomcat
|
||||||
|
createhome: no
|
||||||
|
|
||||||
|
- name: installer TomCat
|
||||||
|
unarchive:
|
||||||
|
src: http://depl/store/apache-tomcat-10.0.13.tar.gz
|
||||||
|
dest: /usr/share/tomcat
|
||||||
|
remote_src: yes
|
||||||
|
|
||||||
|
- name: Change ownership
|
||||||
|
file:
|
||||||
|
path: /usr/share/tomcat
|
||||||
|
owner: tomcat
|
||||||
|
group: tomcat
|
||||||
|
mode: "u+rwx,g+rx,o=rx"
|
||||||
|
recurse: yes
|
||||||
|
state: directory
|
||||||
|
|
||||||
|
- name: Templating Tomcat service from local to remote
|
||||||
|
template:
|
||||||
|
src: tomcat.service.j2
|
||||||
|
dest: /etc/systemd/system/tomcat.service
|
||||||
|
when: ansible_service_mgr == "systemd"
|
||||||
|
|
||||||
|
- name: Demarrer tomcat
|
||||||
|
local_action: command sh /usr/share/tomcat/apache-tomcat-10.0.13/bin/startup.sh
|
||||||
|
|
||||||
|
- name: Definition des utilisateurs
|
||||||
|
template:
|
||||||
|
src: tomcat-users.xml.j2
|
||||||
|
dest: /usr/share/tomcat/apache-tomcat-10.0.13/conf/tomcat-users.xml
|
||||||
|
|
||||||
|
- name: Autorisation des différentes ips de connexions
|
||||||
|
template:
|
||||||
|
src: context.xml.j2
|
||||||
|
dest: "{{ item }}"
|
||||||
|
with_items:
|
||||||
|
- /usr/share/tomcat/apache-tomcat-10.0.13/webapps/host-manager/META-INF/context.xml
|
||||||
|
- /usr/share/tomcat/apache-tomcat-10.0.13/webapps/manager/META-INF/context.xml
|
||||||
|
|
||||||
|
- name: Redemarrer le service tomcat (1)
|
||||||
|
local_action: command sh /usr/share/tomcat/apache-tomcat-10.0.13/bin/shutdown.sh
|
||||||
|
|
||||||
|
- name: Redemarrer le service tomcat (2)
|
||||||
|
local_action: command sh /usr/share/tomcat/apache-tomcat-10.0.13/bin/startup.sh
|
||||||
|
|
||||||
|
- name: Redemarrer le service tomcat (3)
|
||||||
|
local_action: command sh /usr/share/tomcat/apache-tomcat-10.0.13/bin/catalina.sh start
|
||||||
|
|
||||||
|
|
||||||
|
- name: on installe java
|
||||||
|
apt:
|
||||||
|
name: default-jdk
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: on installe les paquets de MariaDB
|
||||||
|
apt:
|
||||||
|
name: mariadb-server
|
||||||
|
state: latest
|
||||||
|
update_cache: yes
|
||||||
|
|
||||||
|
- name: on installe Python3
|
||||||
|
apt:
|
||||||
|
name: python3-pymysql
|
||||||
|
state: latest
|
||||||
|
|
||||||
|
- name: on lance MariaDB
|
||||||
|
service:
|
||||||
|
name: mysql
|
||||||
|
state: started
|
||||||
|
|
19
SDIS29-P2/ppe34test/roles/ppebase/templates/context.xml.j2
Normal file
19
SDIS29-P2/ppe34test/roles/ppebase/templates/context.xml.j2
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
|
this work for additional information regarding copyright ownership.
|
||||||
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
(the "License"); you may not use this file except in compliance with
|
||||||
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
-->
|
||||||
|
<Context antiResourceLocking="false" privileged="true" >
|
||||||
|
</Context>
|
@ -0,0 +1,44 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
|
this work for additional information regarding copyright ownership.
|
||||||
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
(the "License"); you may not use this file except in compliance with
|
||||||
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
-->
|
||||||
|
<tomcat-users xmlns="http://tomcat.apache.org/xml"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
|
||||||
|
version="1.0">
|
||||||
|
<!--
|
||||||
|
NOTE: By default, no user is included in the "manager-gui" role required
|
||||||
|
to operate the "/manager/html" web application. If you wish to use this app,
|
||||||
|
you must define such a user - the username and password are arbitrary. It is
|
||||||
|
strongly recommended that you do NOT use one of the users in the commented out
|
||||||
|
section below since they are intended for use with the examples web
|
||||||
|
application.
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
NOTE: The sample user and role entries below are intended for use with the
|
||||||
|
examples web application. They are wrapped in a comment and thus are ignored
|
||||||
|
when reading this file. If you wish to configure these users for use with the
|
||||||
|
examples web application, do not forget to remove the <!.. ..> that surrounds
|
||||||
|
them. You will also need to set the passwords to something appropriate.
|
||||||
|
-->
|
||||||
|
<!-- user manager can access only manager section -->
|
||||||
|
<role rolename="manager-gui" />
|
||||||
|
<user username="{{ ui_manager_user }}" password="{{ ui_manager_pass }}" roles="manager-gui" />
|
||||||
|
|
||||||
|
<!-- user admin can access manager and admin section both -->
|
||||||
|
<role rolename="admin-gui" />
|
||||||
|
<user username="{{ ui_admin_username }}" password="{{ ui_admin_pass }}" roles="manager-gui,admin-gui" />
|
||||||
|
</tomcat-users>
|
@ -0,0 +1,22 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Tomcat
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=forking
|
||||||
|
|
||||||
|
User=tomcat
|
||||||
|
Group=tomcat
|
||||||
|
|
||||||
|
Environment=JAVA_HOME={{ JAVA_HOME }}
|
||||||
|
Environment='JAVA_OPTS=-Djava.awt.headless=true'
|
||||||
|
|
||||||
|
Environment=CATALINA_HOME=/usr/share/tomcat/apache-tomcat-10.0.13
|
||||||
|
Environment=CATALINA_BASE=/usr/share/tomcat/apache-tomcat-10.0.13
|
||||||
|
Environment=CATALINA_PID=/usr/share/tomcat/apache-tomcat-10.0.13/temp/tomcat.pid
|
||||||
|
|
||||||
|
ExecStart=catalina.sh start
|
||||||
|
ExecStop=catalina.sh stop
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
2
SDIS29-P2/ppe34test/roles/ppebase/vars/main.yml
Normal file
2
SDIS29-P2/ppe34test/roles/ppebase/vars/main.yml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
JAVA_HOME: /usr/lib/jvm/default-java
|
4
SDIS29-P2/ppe34test/roles/ppedb/handlers/main.yml
Normal file
4
SDIS29-P2/ppe34test/roles/ppedb/handlers/main.yml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
- name: Restart MySQL
|
||||||
|
service:
|
||||||
|
name: mysqld
|
||||||
|
state: restarted
|
31
SDIS29-P2/ppe34test/roles/ppedb/tasks/main.yml
Executable file
31
SDIS29-P2/ppe34test/roles/ppedb/tasks/main.yml
Executable file
@ -0,0 +1,31 @@
|
|||||||
|
- name: on lance MariaDB
|
||||||
|
service:
|
||||||
|
name: mysql
|
||||||
|
state: started
|
||||||
|
|
||||||
|
- name: creation de la BDD sdis29
|
||||||
|
mysql_db:
|
||||||
|
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||||
|
name: sdis29
|
||||||
|
|
||||||
|
- name: creation de l'utilisateur slam
|
||||||
|
mysql_user:
|
||||||
|
name: slam
|
||||||
|
password: Azerty1+
|
||||||
|
priv: '*.*:ALL,GRANT'
|
||||||
|
state: present
|
||||||
|
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||||
|
|
||||||
|
#- name: injection de la BDD
|
||||||
|
#command: scp sio@10.121.38.95:/home/sio/bdd/sdis29.sql /tmp
|
||||||
|
|
||||||
|
- name: restauration de la bdd
|
||||||
|
mysql_db:
|
||||||
|
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||||
|
name: sdis29
|
||||||
|
state: import
|
||||||
|
target: /tmp/sdis29.sql
|
||||||
|
login_user: slam
|
||||||
|
login_password: Azerty1+
|
||||||
|
notify: Restart MySQL
|
||||||
|
|
5
SDIS29-P2/ppe34test/roles/ppedbdump/tasks/createdump.yml
Normal file
5
SDIS29-P2/ppe34test/roles/ppedbdump/tasks/createdump.yml
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
- name: Copie de la sauv distante
|
||||||
|
ansible.builtin.fetch:
|
||||||
|
src: /tmp/sdis29.sql
|
||||||
|
dest: /sauvegarde
|
||||||
|
flat: yes
|
15
SDIS29-P2/ppe34test/roles/ppedbdump/tasks/createdump.yml.sv1
Normal file
15
SDIS29-P2/ppe34test/roles/ppedbdump/tasks/createdump.yml.sv1
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
- name: creer une sauvegarde
|
||||||
|
mysql_db:
|
||||||
|
name: sdis29
|
||||||
|
state: dump
|
||||||
|
target: /tmp/sdis29.sql
|
||||||
|
login_host: localhost
|
||||||
|
login_user: slam
|
||||||
|
login_password: Azerty1+
|
||||||
|
login_unix_user: /var/run/mysqld/mysqld.sock
|
||||||
|
|
||||||
|
- name: Copie de la sauv distante
|
||||||
|
ansible.builtin.fetch:
|
||||||
|
src: /tmp/sdis29.sql
|
||||||
|
dest: /root/sauvegarde/sql/
|
||||||
|
flat: yes
|
Loading…
x
Reference in New Issue
Block a user