ansible. role3 установка tomcat

Thank you for reading this post, don't forget to subscribe!

Уста­нов­ка tomcat с помо­щью роли ансибл.

созда­ём струк­ту­ру директорий:
mkdir -p /etc/ansible/{playbooks/roles_play,roles/tomcat8/{defaults,handlers,meta,tasks,templates}}

дирек­то­рия роли:
/etc/ansible/roles/tomcat8

содер­жи­мое директории
/etc/ansible/roles/tomcat8/tasks:
cat addusers.yml

cat systemct_conf.yaml

cat defaultpackages.yml

дан­ная про­вер­ка про­из­во­дит­ся по средт­свам shell команды
(рабо­та­ет но не кошерно)

Рас­смот­рим плей­бук кото­рый про­ве­ря­ет нали­чие 2 пакетов:

 

поэто­му исполь­зу­ем дан­ный фор­мат для defaultpackages
cat defaultpackages.yml

 

 

 

 

cat /etc/ansible/roles/tomcat8/templates/tomcat.service.centos6
#!/bin/bash

export CATALINA_HOME={{ directory_for_tomcat}}/tomcat

service_name="tomcat"

start() {
echo "Starting Tomcat …"
/bin/su -s /bin/bash tomcat -c $CATALINA_HOME/bin/startup.sh
}
stop() {
echo "Stopping Tomcat …"
/bin/su -s /bin/bash tomcat -c $CATALINA_HOME/bin/shutdown.sh
}
status() {
if (( $(ps -ef | grep -v grep | grep $service_name | wc -l) > 0 )); then
echo "$service_name is running!!!"
else
echo "$service_name is down!!!"
fi
}
case $1 in
start|stop|status) $1;;
restart) stop; start;;
*) echo "Usage : $0 <start|stop|restart>"; exit 1;;
esac

exit 0

В дирек­то­рию /etc/ansible/roles/tomcat8/templates/ ска­чи­ва­ем архив том­ка­та apache-tomcat-8.5.41.tar.gz