Dakle, apache2 mi je pomalo spor za ono sto mi treba pa sam se odlucio da cluster prebacim na nginx. Instalirao, konfigurisao, testirao, radi. Medjutim, radi samo kao init.d skripta sto mi i nema nekog smisla u cluster-u. Nasao sam slijedecu OCF skriptu za nginx:
Ovo je crm linija kojom pokusavam da dodam resource u Pacemaker:
nakon cega dobijem slijece error poruke:
lrmadmin[27451]: 2011/03/11_16:28:38 ERROR: lrm_get_rsc_type_metadata(578): got a return code HA_FAIL from a reply message of rmetadata with function get_ret_from_msg.
ERROR: ocf:heartbeat:nginx: could not parse meta-data:
ERROR: ocf:heartbeat:nginx: no such resource agent
Naravno, nginx skripta se nalazi u /usr/lib/ocf/resource.d/heartbeat/ direktoriju.
Poslije odredjene kolicine piva, dosla mi je inspiracija pa sam ovo uspio pokrenuti.
Prva stvar koja nije valjala je moj mozak. Dakle, zaboravio chmod skriptu na 755. Napravio to, i vec se nesto pocelo desavati, mada skripta i dalje nije radila kako treba. /var/log/syslog kaze da ne moze naci /usr/local/sbin/nginx. Ok, napravio tamo symlink, probao ponovo, nece. Log kaze da sada ne moze naci /etc/nginx.conf. Eh ovo je malo bezveze posto mu zadajem config file u samoj konfiguraciji. Hajd rekoh da se ne svadjam sa skriptom, napravim symlink i na /etc, pokrenem i radi.
Medjutim, nisam zadovoljan, skripta je truba, nije cak ni monitor implementiran. Tako da cu sada da trazim neku bolju skriptu. Za pocetak, i ova moze posluziti.
Dosta potpunija od prve. Ali nikako da procita mata-data. Skripta ima mod 755, nalazi se u /usr/lib/ocf/resource.d/heartbeat i javlja mi onaj isti error od ranije, could not parse meta-data. Ne kontam.
primitive nginx_res ocf:heartbeat:nginx \
params configfile=/etc/nginx/nginx.conf \
httpd=/usr/lib/nginx \ #ovdje je bio najveci problem jer su ovaj parametar u jednom dijelu skripte nazvali nginx a dalje ostavlili httpd
status10url=http://127.0.0.1 \
op monitor timeout=30s interval=10s \
op start timeout=40s \
op stop timeout=60s
Tadaaaa. I radi.