मॉनीट अपाचे को मॉनिटर नहीं करता है


11

मैंने अभी-अभी मॉनेट डॉक्यूमेंट के अनुसार मॉनेट को स्थापित और कॉन्फ़िगर किया है । अपाचे के अलावा सभी सेवाएं रनिंग के रूप में सूचीबद्ध हैं, लेकिन अपाचे का कहना है कि मॉनिटर नहीं किया गया है

मोनिट के विन्यास में प्रासंगिक रेखाएँ हैं:

check process apache with pidfile /var/run/httpd.pid
        group www
        start program = "/etc/init.d/httpd start"
        stop program = "/etc/init.d/httpd stop"
        if failed host localhost port 80
        protocol http then restart
        if 5 restarts within 5 cycles then timeout

मैं http: // लोकलहोस्ट / सर्वर-स्टेटस और http: // लोकलहोस्ट ठीक से सर्वर से एक्सेस कर सकता हूं । Monit Apache के लिए सक्रिय रूप में मॉनिटरिंग मोड को सूचीबद्ध करता है

सर्वर CentOS 5.4 चल रहा है।

PID फ़ाइल पैरेंट httpd सर्वर के लिए सही है:

[server ~]$ cat /var/run/httpd.pid
2905
[server ~]$ ps auxc | grep httpd
root      2905  0.0  0.9  26952  4808 ?        Ss   11:36   0:00 httpd

जवाबों:


13

सुनिश्चित करें कि एपिड मास्टर प्रक्रिया की पिड (यानी, httpdरूट के रूप में चलने वाली प्रक्रिया) के साथ pid फ़ाइल की सामग्री मेल खाती है । यह संभव है कि पीआईडी ​​फ़ाइल बासी हो।

यदि यह बासी है, तो अपाचे मास्टर प्रक्रिया की पाइड प्राप्त करें, और कुछ ऐसा करें echo 1234 > /var/run/httpd.pid, जहां 1234विचाराधीन है।

उसके बाद, monit monitor apacheउस सेवा की निगरानी को पुनः आरंभ करने के लिए चलाएँ ।


2
PID फ़ाइल सही थी, लेकिन उसे चालू करना चालू monit monitor apacheहो गया, और अब यह सेवा को पुनः आरंभ करने के बाद ठीक काम करता हुआ प्रतीत हो रहा है। मुझे वेब इंटरफ़ेस पर सक्षम मॉनिटर बटन पर क्लिक करने का भी प्रयास करना चाहिए।
dunxd

1

आप OS संस्करण / वितरण प्रदान नहीं करते हैं, लेकिन CentOS 6 पर, आपके द्वारा मॉनिटर की जा रही पीआईडी ​​फ़ाइल यहां स्थित है: /var/run/httpd/httpd.pid

इसलिए इसमें बदलाव करें:

check process apache with pidfile /var/run/httpd/httpd.pid

संयोग से, CentOS 5 में Apache PID फाइल है: /var/run/httpd.pid

संपादित करें: PID पथ भी उद्धृत करें।

आपके द्वारा उपयोग किए जा रहे प्रोटोकॉल परीक्षण के बारे में मोनिट मेलिंग सूची पर एक नोट है:

http://lists.gnu.org/archive/html/monit-general/2004-12/msg00057.html

यदि आप नाम-आधारित वर्चुअल होस्ट का उपयोग कर रहे हैं, तो आपको एक होस्टनाम या साइट नाम पारित करने की आवश्यकता हो सकती है।


यह CentOS 5.4 है। PID फ़ाइल सही है।
dunxd

एक CentOS पर 5 सर्वर आपके config का उपयोग करना, मैंProcess 'apache' status Does not exist monitoring status monitored
ewwhite

आप उस आउटपुट को कहां देख रहे हैं?
dunxd

आपको अपने पीडफाइल पथ "/var/run/httpd/httpd.pid" को उद्धृत करना चाहिए। एक VirtualHosts निर्देश के लिए एक संभावित आवश्यकता के बारे में प्रारंभिक उत्तर में रखा गया नोट भी देखें।
ewwhite

कहा या नहीं, कोई फर्क नहीं पड़ता।
dunxd
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.