Sziasztok!
Örököltem egy webszervert, Debian 8-as, Apache2, Nginx, Exim4, Dovecot fut rajta.
Az Apache2 indításával van problémám.
Ha ezt kiadom: /etc/init.d/apache2 stop , akkor szépen leáll az Apache.
Ha ezt kiadom: /etc/init.d/apache2 start , akkor szépen elindul az Apache.
Ha viszont a killall -9 apache2 parancsot futtatom, akkor kilövi a rendszer szépen, viszont utána már nem tudom elindítani sem így:
/etc/init.d/apache2 start
Sem pedig így: systemctl start apache2
Mindkét esetben ezt írja ki indítási parancsra:
[ ok ] Starting apache2 (via systemctl): apache2.service.
Ámde nem történik meg az indítás.
Sem a /var/log/apache2/error.log-ban, sem a syslogban nincs semmi nyoma.
Más ötlet nem lévén, a teljes szerver reboot marad, utána elindul a rendszerrel szépen az Apache2.
Bármilyen más folyamatot ha kilövök, akkor utána szépen indítható is, egyedül az Apache2 nem.
A kilövésre azért van nagy ritkán szükség, mert bizonyos helyzetekben úgy elszabadul néhány weboldal, ami teljesen felviszi a szerver load-ot. Egy ütemezett bash szkript figyeli a load-ot, ha ez meghalad egy értéket, akkor kilövi az Nginx-et és az Apache-ot, ha pedig a load visszaesik egy bizonyos szint alá, akkor elindítja őket újra. Ilyen helyzetben már maga a szabályos leállítás nem segít, úgy felszökik a load, olyan rövid idő alatt, hogy akár fél órát is tarthat így egy stop folyamat. Ha viszont kilövésre kerül e két folyamat, akkor néhány másodperc után már rendeződnek a dolgok, leesik a load és indíthatóak e folyamatok.
Ez korábbi, hetes Debian alatt tökéletesen működött is, 8-as alatt viszont nem.
Mit gondoltok, mit javasoltok?
- 1081 megtekintés
Hozzászólások
Ott marad a pid file vagy hasonló alkatrész, amit ellenőriz induláskor.
- A hozzászóláshoz be kell jelentkezni
A /var/run/apache2/apache2.pid valóban ott maradt a killall után, töröltem kézzel, de semmi, ugyanúgy nem indult el az Apache. A /var/run-ban kerestem még apache2-re. Találtam egy /var/run/lock/apache2 könyvtárat, ebben volt egy lockdb nevű fájl, 0 mérettel. Ezt is letöröltem, de utána sem indult az Apache :(
Este próbálgatom tovább a többi javaslatot - amit köszönök mindenkinek! Ekkor már kevésbé lesz használatos a szerver.
- A hozzászóláshoz be kell jelentkezni
systemctl status apache2.service
journalctl | tail
- A hozzászóláshoz be kell jelentkezni
Lődd ki, majd utána állítsd le, mintha szabályosan leállítanád.
-------------------
http://streamstat.hu/ - A legtöbb magyar rádió és TV egy helyen!
- A hozzászóláshoz be kell jelentkezni
Köszönöm szépen, ez többszöri tesztelés után is beválni látszik!
- A hozzászóláshoz be kell jelentkezni
cgroups vagy rakd bele egy kontenerbe/docker-be es nem fog elszabadulni
- A hozzászóláshoz be kell jelentkezni
ahogy itt fentebb mar irta Mik, a systemdtol kellene megerdeklodni, miert nem inditja el.
viszont ez a kilovom - leallitom - ujrainditom tuneti kezeles, en megneznem ilyenkor, hogy a mysql kornyeken mi tortenik, eddigi tapasztalataim szerint ilyenkor ezek okozhatjak az apache bambulasat es a novekvo eroforraszabalast :
- deadlockba kerult sql update/query parosok
- ha sok adatbazis van, akkor nincs eleg megnyithato fileja a mysqlnek
- a tmpdir terulete kicsi.
ez utobbi tipikusan akkor fordul elo, ha /tmp kulon particio.
a tmp_table_size optimalizalasaval lehet ezen valamelyest javitani, illetve a tmpdir valtozo atallitasaval nagyobb szabad terulettel rendelkezo particiora.
- A hozzászóláshoz be kell jelentkezni
Köszönöm mindenkinek az ötleteket, hozzászólásokat!
A helyzet az, hogy ez egy komplex rendszer, nagyon nem akarom bolygatni. Évente 1, max 2 alkalommal van erre szükség, így ennek nem akarok nagyobb feneket keríteni. Köszönöm még egyszer!
- A hozzászóláshoz be kell jelentkezni