feat: aggiunto esempio roles
This commit is contained in:
parent
5457dd94a2
commit
8c0fb192a5
12 changed files with 196 additions and 0 deletions
|
|
@ -16,3 +16,8 @@ ansible-playbook -iinventory runner.yaml
|
|||
```
|
||||
ansible-playbook -iinventory runner.yaml --tags install
|
||||
```
|
||||
|
||||
1) progetto_esempio -> ruolo che installa pacchetti e ruolo che aggiorna pacchetti
|
||||
|
||||
2) progetto_esempio2 -> ruolo che installa lbr apache e ruolo che installa webserver tomcat
|
||||
|
||||
|
|
|
|||
5
10_roles/progetto_esempio2/inventory
Normal file
5
10_roles/progetto_esempio2/inventory
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
[lbr]
|
||||
devcorso1vm ansible_host=localhost
|
||||
[as]
|
||||
devcorso2vm ansible_host=10.248.44.79
|
||||
devcorso3vm ansible_host=10.248.44.80
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
---
|
||||
lbr:
|
||||
- 10.248.44.79
|
||||
- 10.248.44.80
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
- name: Restart Apache
|
||||
ansible.builtin.service:
|
||||
name: httpd
|
||||
state: restarted
|
||||
40
10_roles/progetto_esempio2/roles/apache/tasks/main.yaml
Normal file
40
10_roles/progetto_esempio2/roles/apache/tasks/main.yaml
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
- name: Installo Apache se assente
|
||||
ansible.builtin.package:
|
||||
name: httpd
|
||||
state: latest
|
||||
|
||||
- name: Start di Apache
|
||||
ansible.builtin.service:
|
||||
name: httpd
|
||||
state: started
|
||||
enabled: yes
|
||||
|
||||
- name: Configuro lbr Apache
|
||||
ansible.builtin.copy:
|
||||
dest: /etc/httpd/conf.d/lbr.conf
|
||||
content: |
|
||||
<VirtualHost *:80>
|
||||
ServerAdmin {{ ansible_hostname }}
|
||||
<Proxy balancer://as>
|
||||
BalancerMember http://{{ lbr.0 }}:8080
|
||||
BalancerMember http://{{ lbr.1 }}:8080
|
||||
ProxySet lbmethod=byrequests
|
||||
</Proxy>
|
||||
|
||||
ProxyPass / balancer://as/
|
||||
ProxyPassReverse / balancer://as/
|
||||
</VirtualHost>
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
notify:
|
||||
- Restart Apache
|
||||
|
||||
- name: Configuro motd
|
||||
ansible.builtin.template:
|
||||
src: motd.j2
|
||||
dest: /etc/motd
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
#############################################################
|
||||
|
||||
questo e' il server {{ ansible_hostname }}
|
||||
|
||||
LBR Apache
|
||||
|
||||
#############################################################
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
---
|
||||
tomcat_version: "9.0.97"
|
||||
tomcat_url: "https://dlcdn.apache.org/tomcat/tomcat-9/v{{ tomcat_version }}/bin/apache-tomcat-{{ tomcat_version }}.tar.gz"
|
||||
tomcat_name: "apache-tomcat-{{ tomcat_version }}"
|
||||
jdk_url: "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.25%2B9/OpenJDK11U-jdk_x64_linux_hotspot_11.0.25_9.tar.gz"
|
||||
jdk_name: "OpenJDK11U-jdk_x64_linux_hotspot_11.0.25_9.tar.gz"
|
||||
jdk: "jdk-11.0.25+9"
|
||||
BIN
10_roles/progetto_esempio2/roles/tomcat/files/SampleWebApp.war
Normal file
BIN
10_roles/progetto_esempio2/roles/tomcat/files/SampleWebApp.war
Normal file
Binary file not shown.
94
10_roles/progetto_esempio2/roles/tomcat/tasks/main.yaml
Normal file
94
10_roles/progetto_esempio2/roles/tomcat/tasks/main.yaml
Normal file
|
|
@ -0,0 +1,94 @@
|
|||
---
|
||||
- name: Download del tomcat
|
||||
ansible.builtin.get_url:
|
||||
url: "{{ tomcat_url }}"
|
||||
dest: /STAGE
|
||||
validate_certs: false
|
||||
|
||||
- name: creo il gruppo tomcat
|
||||
ansible.builtin.group:
|
||||
name: tomcat
|
||||
state: present
|
||||
gid: 502
|
||||
|
||||
- name: creo l'utente tomcat
|
||||
ansible.builtin.user:
|
||||
name: tomcat
|
||||
uid: 503
|
||||
group: tomcat
|
||||
shell: /bin/bash
|
||||
|
||||
- name: Creo la directory tomcat se manca
|
||||
ansible.builtin.file:
|
||||
path: /tomcat
|
||||
state: directory
|
||||
owner: tomcat
|
||||
group: tomcat
|
||||
mode: '0755'
|
||||
|
||||
- name: Scompatto il tar tomcat
|
||||
ansible.builtin.unarchive:
|
||||
src: /STAGE/{{ tomcat_name }}.tar.gz
|
||||
dest: /tomcat/
|
||||
remote_src: true
|
||||
|
||||
- name: Correzione permessi
|
||||
ansible.builtin.file:
|
||||
path: /tomcat/{{ tomcat_name }}
|
||||
owner: tomcat
|
||||
group: tomcat
|
||||
recurse: true
|
||||
|
||||
- name: Download jdk
|
||||
ansible.builtin.get_url:
|
||||
url: "{{ jdk_url }}"
|
||||
dest: /STAGE
|
||||
validate_certs: false
|
||||
|
||||
- name: Scompatto il tar jdk
|
||||
ansible.builtin.unarchive:
|
||||
src: /STAGE/{{ jdk_name }}
|
||||
dest: /opt/
|
||||
remote_src: true
|
||||
|
||||
- name: Import del setenv.sh
|
||||
ansible.builtin.template:
|
||||
src: setenv.sh.j2
|
||||
dest: /tomcat/{{ tomcat_name }}/bin/setenv.sh
|
||||
owner: tomcat
|
||||
group: tomcat
|
||||
mode: '0644'
|
||||
|
||||
- name: Import webapp
|
||||
ansible.builtin.copy:
|
||||
src: SampleWebApp.war
|
||||
dest: /tomcat/{{ tomcat_name }}/webapps/SampleWebApp.war
|
||||
owner: tomcat
|
||||
group: tomcat
|
||||
mode: '0644'
|
||||
|
||||
- name: Check se tomcat attivo
|
||||
ansible.builtin.shell: ps -fu tomcat | grep -w "{{ tomcat_name }} " | wc -l
|
||||
register: tomcat_status
|
||||
|
||||
- name: Stop del tomcat
|
||||
ansible.builtin.command:
|
||||
cmd: sudo su -c "/tomcat/{{ tomcat_name }}/bin/shutdown.sh -force" -s /bin/sh tomcat
|
||||
when: tomcat_status.stdout != "0"
|
||||
|
||||
- name: Start del tomcat
|
||||
ansible.builtin.command:
|
||||
cmd: sudo su -c "/tomcat/{{ tomcat_name }}/bin/startup.sh" -s /bin/sh tomcat
|
||||
|
||||
- name: Setup motd
|
||||
ansible.builtin.template:
|
||||
src: motd.j2
|
||||
dest: /etc/motd
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
|
||||
- name: Stampo a video un messaggio
|
||||
ansible.builtin.debug:
|
||||
msg: "Per testare chiamare via browser il seguente URL: http://10.248.44.78/SampleWebApp/SnoopServlet"
|
||||
run_once: true
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
##########################################################################
|
||||
|
||||
AS {{ ansible_hostname }}
|
||||
|
||||
Tomcat shutdown HTTP jdk
|
||||
/tomcat/{{ tomcat_name }} 8005 8080 {{ jdk }}
|
||||
|
||||
##########################################################################
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
### Opzioni cup2000
|
||||
export UMASK="0022"
|
||||
export CATALINA_BASE=/tomcat/{{ tomcat_name }}
|
||||
export CATALINA_HOME=/tomcat/{{ tomcat_name }}
|
||||
export CATALINA_TMPDIR=$CATALINA_HOME/temp
|
||||
export CATALINA_PID=$CATALINA_HOME/tomcat.pid
|
||||
export JAVA_HOME="/opt/{{ jdk }}"
|
||||
export JAVA_OPTS="-server -Djava.awt.headless=true -Xms1024m -Xmx1024m"
|
||||
export CATALINA_OPTS="$CATALINA_OPTS -Duser.timezone=Europe/Rome -Duser.country=IT -Duser.language=it"
|
||||
12
10_roles/progetto_esempio2/runner.yaml
Normal file
12
10_roles/progetto_esempio2/runner.yaml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
- name: Setup lbr Apache
|
||||
hosts: lbr
|
||||
roles:
|
||||
- role: apache
|
||||
tags: apache
|
||||
|
||||
- name: Setup tomcats
|
||||
hosts: as
|
||||
roles:
|
||||
- role: tomcat
|
||||
tags: tomcat
|
||||
Loading…
Add table
Reference in a new issue