CentOS 6 या CentOS 7 पर मास्टर / क्लाइंट मॉडल का उपयोग करने के लिए Icinga2 को संशोधित करना

Icinga2 एक शक्तिशाली निगरानी प्रणाली है, और जब एक मास्टर-क्लाइंट मॉडल में उपयोग किया जाता है, तो यह NRPE- आधारित निगरानी जांच की आवश्यकता को प्रतिस्थापित कर सकता है। मास्टर-क्लाइंट मॉडल विभिन्न कारणों से अधिक सुरक्षित है । यह चेक को एक सर्वर पर संशोधित करने और दूसरों को प्रचारित करने की अनुमति देकर अधिक वितरित निगरानी के लिए भी अनुमति देता है। यह परिवर्तनों के लिए एक केंद्रीकृत स्थान भी देता है।

उदाहरण के लिए: मान लीजिए कि आपके पास 4 अलग-अलग लोड-संतुलित वेब सर्वर हैं। यदि आप जानते हैं कि आपके पास एक लोड स्पाइक आने वाला है (हो सकता है कि एक बिक्री या ऐसा कुछ जिसके लिए आप बहुत अधिक गतिविधि की आशा करते हैं), तो आप उन स्तरों को बढ़ाना चाह सकते हैं, जिन पर उच्च CPU उपयोग सिस्टम अलर्ट को अलर्ट करता है। यदि आप NRPE चेक का उपयोग कर रहे हैं, तो आपको प्रत्येक सर्वर पर जाना होगा और /etc/nrpe.d/common_commands.cfgउनमें से प्रत्येक पर दस्तावेज़ को संशोधित करना होगा। मास्टर-क्लाइंट मॉडल में, आप बस /etc/icinga2/repository.d/hosts/फ़ोल्डर में उनकी होस्ट परिभाषाओं को संशोधित कर सकते हैं , फिर Icinga को फिर से लोड कर सकते हैं। चेक प्रत्येक सर्वर को प्रचारित करेंगे और स्वचालित रूप से उठाए जाएंगे। आप /etc/icinga2/repository.d/services/फ़ाइलों को संशोधित करके बहुत आसानी से चेक भी जोड़ सकते हैं , और वे स्वचालित रूप से प्रचारित हो जाएंगे और पहचाने जाएंगे, जब तक कि क्लाइंट सर्वर पर प्लग-इन मौजूद है।

आवश्यक शर्तें

  • Icinga2 और Icingaweb2 के साथ एक सर्वर उदाहरण पहले से ही स्थापित और कॉन्फ़िगर ( निर्देश ) नामित है icinga2master.example.com
  • एक ताजा Vultr CentOS 6 या 7 सर्वर उदाहरण जिसे आप नामांकित मॉनिटर करना चाहते हैं icinga2client.example.com
  • सूदो की पहुँच।

इस गाइड में से कुछ ऊपर सूचीबद्ध निर्देशों को स्थापित करेगा, लेकिन यह क्लाइंट मशीन पर होना चाहिए न कि सर्वर मशीन पर।

चरण 1: सिस्टम को अपडेट करें

Icinga संकुल को स्थापित करने के लिए क्लाइंट सिस्टम में "ICINGA" रेपो जोड़ें।

sudo cat > /etc/yum.repos.d/ICINGA-release.repo << 'EOF'
[icinga-stable-release]
name=ICINGA (stable release for epel)
baseurl=http://packages.icinga.org/epel/$releasever/release/
enabled=1
gpgcheck=1
gpgkey=http://packages.icinga.org/icinga.key
EOF

चरण 2: आवश्यक पैकेज स्थापित करें

आवश्यक पैकेज स्थापित करें।

# CentOS 6
sudo yum -y install icinga2 mysql-server mysql icinga2-ido-mysql nagios-plugins-disk nagios-plugins-load nagios-plugins-procs nagios-plugins-ssh nagios-plugins-users nagios-plugins-swap nagios-plugins-ping icingacli

# CentOS 7
sudo yum -y install icinga2 mariadb-server mysql icinga2-ido-mysql nagios-plugins-disk nagios-plugins-load nagios-plugins-procs nagios-plugins-ssh nagios-plugins-users nagios-plugins-swap nagios-plugins-ping icingacli

CentOS 7 MySQL के बजाय MariaDB का उपयोग करता है, इसलिए आवश्यक पैकेज थोड़ा अलग हैं। सेवाओं को शुरू करें, और उन्हें बूट पर शुरू करने के लिए सेट करें।

sudo chkconfig icinga2 on
sudo service icinga2 start

बूट पर शुरू करने और इसे अभी शुरू करने के लिए MySQL सेवा सेट करें ताकि हम इसे सुरक्षित कर सकें।

# CentOS 6
sudo chkconfig mysqld on
sudo service mysqld start

#CentOS 7
sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service

MySQL / MariaDB स्थापना सुरक्षित करें। CentOS 6 और 7 दोनों एक ही कमांड का उपयोग करते हैं।

sudo mysql_secure_installation

प्रक्रिया के दौरान, दिखाए गए प्रश्नों का उत्तर दें:

Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: $newRootPassword
Re-enter new password: $newRootPassword
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

नोट करें $newRootPasswordक्योंकि आपको कई बार इसकी आवश्यकता होगी, और इसे रीसेट करने के लिए एक दर्द है।

चरण 3: डेटाबेस सेट करें

आपको icingaउपयोगकर्ता नाम बनाने और डेटाबेस में स्कीमा आयात करने की आवश्यकता है। यह सैंटोस 6 और 7 दोनों पर एक ही तरह से किया जाता है।

sudo mysql -u root -p
>CREATE DATABASE icinga;
>GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY '$someIcingaPassword'; 
>exit

अगला, स्कीमा को उस डेटाबेस में आयात करें जिसे आपने अभी बनाया है।

sudo mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql

आपको ऊपर बताए $newRootPasswordगए mysql_secure_installationआदेश के दौरान आपके द्वारा उपयोग किए गए MySQL / MariaDB पासवर्ड दर्ज करने की आवश्यकता होगी , कि $someIcingaPasswordआपने अभी बनाई है - कि बाद में उपयोग किया जाता है।

ido(डेटाबेस) मॉड्यूल सक्षम करें ।

sudo icinga2 feature enable ido-mysql

/etc/icinga2/features-enabled/ido-mysql.confडेटाबेस जानकारी जोड़ने के लिए आपको फ़ाइल को संपादित करना होगा । आप निम्न आदेश के साथ ऐसा कर सकते हैं।

sudo vi /etc/icinga2/features-enabled/ido-mysql.conf

उस फ़ाइल में, उन पंक्तियों को ढूंढें जिन्हें टिप्पणी की गई है (शुरू करें //)।

//user = "icinga"
//password = "icinga"
//host = "localhost"
//database = "icinga"

... और आपके द्वारा बनाए गए उपयोगकर्ता / पासवर्ड का उपयोग करके उन्हें संपादित करें।

user = "icinga"
password = "$someIcingaPassword"
host = "localhost"
database = "icinga"

सुनिश्चित करें कि आप शुरूआती दो स्लैश को हटाकर लाइनों को अनकम्फर्ट करते हैं।

अगला, परिवर्तनों को लेने के लिए सेवा को पुनरारंभ करें।

sudo service icinga2 restart

आपको क्लाइंट सर्वर और Icinga2 मास्टर के बीच एक कनेक्शन जोड़ना होगा जो पहले से कॉन्फ़िगर किया गया है। आपको यह करने की आवश्यकता होगी कि CentOS 7 पर Firewalld का उपयोग करके, या CentOS 6 या 7 में IPTables का उपयोग करें।

# CentOS 6
sudo vi /etc/sysconfig/iptables
...
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5665 -j ACCEPT
...
#Icinga2 Master
-A OUTPUT -p tcp -m state --state NEW -m tcp --dport 5665 -j ACCEPT

sudo iptables restart

# CentOS 7    
sudo firewall-cmd --add-port=5665/tcp --permanent
sudo firewall-cmd --reload

अब, मास्टर को स्थानीय डोमेन नाम के रूप में जोड़ने के लिए होस्ट्स फ़ाइल को संपादित करें।

sudo vi /etc/hosts
...
$masterIP  icinga2master icinga2master.example.com

चरण 4: मास्टर को प्रारंभ करें

यह कदम Icinga2 मास्टर पर किया जाना चाहिए। आपको इसे एक मास्टर के रूप में इनिशियलाइज़ करने की आवश्यकता होगी, फिर एक सर्टिफिकेट साइनिंग रिक्वेस्ट जेनरेट करें जिसे आपका क्लाइंट कम्युनिकेशन के लिए इस्तेमाल करेगा।

sudo icinga2 node wizard

यह नोड विज़ार्ड चलाएगा, जो कई प्रश्न पूछेगा। स्क्रीन निम्नलिखित की तरह दिखाई देगी, और आपके द्वारा दिए गए उत्तर सूचीबद्ध होंगे।

Welcome to the Icinga 2 Setup Wizard!

We'll guide you through all required configuration details.

Please specify if this is a satellite setup ('n' installs a master setup) [Y/n]: n
Starting the Master setup routine...
Please specify the common name (CN) [icinga2-master1.localdomain]: icinga2master.example.com
Checking for existing certificates for common name 'icinga2master.example.com'...
Certificates not yet generated. Running 'api setup' now.
information/cli: Generating new CA.
information/base: Writing private key to '/var/lib/icinga2/ca/ca.key'.
information/base: Writing X509 certificate to '/var/lib/icinga2/ca/ca.crt'.
information/cli: Generating new CSR in '/etc/icinga2/pki/icinga2master.example.com.csr'.
information/base: Writing private key to '/etc/icinga2/pki/icinga2master.example.com.key'.
information/base: Writing certificate signing request to '/etc/icinga2/pki/icinga2master.example.com.csr'.
information/cli: Signing CSR with CA and writing certificate to '/etc/icinga2/pki/icinga2master.example.com.crt'.
information/cli: Copying CA certificate to '/etc/icinga2/pki/ca.crt'.
Generating master configuration for Icinga 2.
information/cli: Adding new ApiUser 'root' in '/etc/icinga2/conf.d/api-users.conf'.
information/cli: Enabling the 'api' feature.
Enabling feature api. Make sure to restart Icinga 2 for these changes to take effect.
information/cli: Dumping config items to file '/etc/icinga2/zones.conf'.
information/cli: Created backup file '/etc/icinga2/zones.conf.orig'.
Please specify the API bind host/port (optional):
Bind Host []: <hit enter>
Bind Port []: <hit enter>
information/cli: Created backup file '/etc/icinga2/features-available/api.conf.orig'.
information/cli: Updating constants.conf.
information/cli: Created backup file '/etc/icinga2/constants.conf.orig'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
Done.

Now restart your Icinga 2 daemon to finish the installation!

फिर, परिवर्तनों को लेने के लिए Icinga2 को पुनरारंभ करें।

sudo service icinga2 restart

अब चूंकि यह एक मास्टर है, आप अनुरोध स्ट्रिंग पर हस्ताक्षर करने वाले प्रमाण पत्र को उत्पन्न करने के लिए इसका उपयोग कर सकते हैं।

sudo icinga2 pki ticket --cn icinga2client.example.com

आपको कुछ तार मिलेंगे $pkiString। उस स्ट्रिंग की प्रतिलिपि बनाएँ, जैसा कि आपको क्लाइंट पर इसकी आवश्यकता होगी।

चरण 5: ग्राहक को प्रारंभ करें

प्रमाणपत्र बनाने और मास्टर से कनेक्ट करने के लिए नोड विज़ार्ड चलाएँ।

sudo icinga2 node wizard

यह ऊपर के समान पेज के साथ आएगा। यह पृष्ठ नीचे दिए गए उत्तरों के साथ दिखाया गया है।

Welcome to the Icinga 2 Setup Wizard!

We'll guide you through all required configuration details.



Please specify if this is a satellite setup ('n' installs a master setup) [Y/n]: Y
Starting the Node setup routine...
Please specify the common name (CN) [icinga2client.example.com]:
Please specify the master endpoint(s) this node should connect to:
Master Common Name (CN from your master setup): icinga2master.example.com
Do you want to establish a connection to the master from this node? [Y/n]: Y
Please fill out the master connection information:
Master endpoint host (Your master's IP address or FQDN): icinga2master.example.com
Master endpoint port [5665]: 5665
Add more master endpoints? [y/N]: N
Please specify the master connection for CSR auto-signing (defaults to master endpoint host):
Host [icinga2master.example.com]: icinga2master.example.com
Port [5665]: 5665
information/cli: Created backup file '/etc/icinga2/pki/icinga2client.example.com.key.orig'.
information/cli: Created backup file '/etc/icinga2/pki/icinga2client.example.com.crt.orig'.
information/base: Writing private key to '/etc/icinga2/pki/icinga2client.example.com.key'.
information/base: Writing X509 certificate to '/etc/icinga2/pki/icinga2client.example.com.crt'.
information/cli: Fetching public certificate from master (icinga2master.example.com, 5665):

Certificate information:

 Subject:     CN = icinga2master.example.com
 Issuer:      CN = Icinga CA
 Valid From:  Jan 10 21:08:37 2017 GMT
 Valid Until: Jan  7 21:08:37 2032 GMT
 Fingerprint: FE 72 AB F3 18 A5 12 E0 0C 5D 94 8B 96 C4 57 3B 00 5C E0 04

Is this information correct? [y/N]: Y
information/cli: Received trusted master certificate.

Please specify the request ticket generated on your Icinga 2 master.
 (Hint: # icinga2 pki ticket --cn 'icinga2client.example.com'): $pkiString

information/cli: Requesting certificate with ticket '$pkiString'.

warning/cli: Backup file '/etc/icinga2/pki/icinga2client.example.com.crt.orig' already exists. Skipping backup.
information/cli: Writing signed certificate to file '/etc/icinga2/pki/icinga2client.example.com.crt'.
information/cli: Writing CA certificate to file '/etc/icinga2/pki/ca.crt'.
Please specify the API bind host/port (optional):
Bind Host []: <enter key>
Bind Port []: <enter key>
Accept config from master? [y/N]: Y
Accept commands from master? [y/N]: Y
information/cli: Disabling the Notification feature.
Disabling feature notification. Make sure to restart Icinga 2 for these changes to take effect.
information/cli: Enabling the Apilistener feature.
warning/cli: Feature 'api' already enabled.
information/cli: Created backup file '/etc/icinga2/features-available/api.conf.orig'.
information/cli: Generating local zones.conf.
information/cli: Dumping config items to file '/etc/icinga2/zones.conf'.
information/cli: Created backup file '/etc/icinga2/zones.conf.orig'.
information/cli: Updating constants.conf.
information/cli: Created backup file '/etc/icinga2/constants.conf.orig'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
information/cli: Updating constants file '/etc/icinga2/constants.conf'.
Done.

Now restart your Icinga 2 daemon to finish the installation!

आगे बढ़ो और परिवर्तनों को लेने के लिए Icinga2 को पुनरारंभ करें।

sudo icinga2 restart

यह पहले से ही किया जा सकता है, लेकिन आपको यह सुनिश्चित करने की आवश्यकता है कि कमांड और एपीआई सुविधाएं सक्षम हैं।

sudo icinga2 feature enable command
sudo icinga2 feature enable api

यदि वे सक्षम नहीं थे, तो यह "सुविधा सक्षम" कहेगा, इसलिए आपको Icinga2 डेमॉन को पुनरारंभ करना होगा। लेकिन पहले, आपको /etc/icinga2निर्देशिका में फ़ाइलों के स्वामित्व को बदलने की आवश्यकता है , क्योंकि उनमें से कुछ में नोड विज़ार्ड चलाने के बाद गलत अनुमतियाँ हैं। उन सभी को अपना मालिक और समूह निर्धारित करना चाहिए icinga। निम्नलिखित कमांड का उपयोग करके अनुमतियों को बदलें:

sudo chown -R icinga:icinga /etc/icinga2/

अब, आप Icinga2 डेमॉन को पुनः आरंभ कर सकते हैं।

sudo service icinga2 restart

चरण 6: क्लाइंट को कॉन्फ़िगर करें

क्लाइंट कॉन्फ़िगरेशन को कुछ अलग फ़ाइलों को संपादित करने की आवश्यकता होती है।

  • /etc/icinga2/zones.conf: इसमें शामिल समापन बिंदु (सर्वर) और ज़ोन होते हैं। इस तरह से सर्वरों का विभाजन होता है। सुनिश्चित करें कि क्लाइंट नाम सर्वर नामों से मेल खाते हैं।
  • /etc/icinga2/icinga2.conf: आप आदेशों को स्वीकार कर रहे हैं और मास्टर से कॉन्फ़िगर करते हैं, इसलिए आपको डुप्लिकेट कमांड परिभाषाओं से बचने के लिए इस फाइल पर एक मामूली संपादन करने की आवश्यकता है।

सबसे पहले, हम zones.confसर्वर और ज़ोन को परिभाषित करने के लिए फ़ाइल को संशोधित करने जा रहे हैं , साथ ही साथ कमांड परिभाषाओं के लिए एक "वैश्विक" ज़ोन बना रहे हैं जो सभी के लिए सार्वभौमिक है, बजाय प्रत्येक के लिए अद्वितीय (जैसे डिस्क जांच) ।

sudo vi /etc/icinga2/zones.conf

object Zone clientZone { 
        endpoints = [ "icinga2master.example.com" ]
}

object Zone "global-templates" { # Add global templates zone
        global = true
}

object Endpoint NodeName {
        host = "$icinga2clientIP" 
}

object Zone ZoneName {
        endpoints = [ NodeName ]
        parent = clientZone
} 

यह जानना महत्वपूर्ण है, इस समय प्रति जोन केवल 2 नोड हो सकते हैं। आप जितने चाहें उतने जोन बना सकते हैं, लेकिन अगर प्रति जोन 2 से अधिक नोड हैं, तो एक मौका है कि Icinga2 सेवा ठीक से काम नहीं करेगी। यह क्लाइंट पर कोई समस्या नहीं है, जब तक कि आपके पास पहले से ही ज़ोन में 2 नोड्स नहीं हैं clientZone, उस स्थिति में आपको दूसरे ज़ोन का नाम बनाने की आवश्यकता होगी।

अब, /etc/icinga2/icinga2.confफ़ाइल में संशोधन करें । आपको लाइन से टिप्पणी करने की आवश्यकता है include_recursive "conf.d"

sudo vi /etc/icinga2/icinga2.conf
...
//include_recursive "conf.d"
...

यह सुनिश्चित करने के लिए कॉन्फ़िगर करें कि सब कुछ सही ढंग से स्वरूपित है।

sudo icinga2 daemon -C

यदि आपको अनुमतियाँ समस्याएँ आती हैं, तो इसकी संभावना है क्योंकि आइटम के स्वामित्व में है root:rooticinga:icingaहल करने की चेष्टा ।

sudo chown -R icinga:icinga /etc/icinga2/

कॉन्फ़िगरेशन के साथ अन्य समस्याएं हैं, आम तौर पर sudo icinga2 daemon -Cकमांड के आउटपुट से दी गई जानकारी उन्हें नीचे ट्रैक करने के लिए पर्याप्त होगी। उठने वाले हर संभावित मुद्दे को संबोधित करना इस गाइड के दायरे से बाहर है।

यदि सत्यापन सफल हो जाता है, तो आगे बढ़ें और सेवा को पुनः लोड करें:

sudo service icinga2 restart

आपको icingaउपयोगकर्ता को सूडो अनुमति देने की आवश्यकता होगी ताकि कमांड चलाया जा सके। ये sudo अनुमतियाँ विशिष्ट प्लगइन डायरेक्टरी तक सीमित रहेंगी। यह सिर्फ फ़ाइल के अंत में रखा जा सकता है।

sudo vi /etc/sudoers
...
Defaults:icinga !requiretty
icinga          ALL=(ALL) NOPASSWD: /usr/lib64/nagios/plugins/

अब क्लाइंट कॉन्फ़िगरेशन आधिकारिक रूप से समाप्त हो गया है। आपको कोई और संशोधन करने की आवश्यकता नहीं है, कोई भी सेवा जांच मास्टर पर कॉन्फ़िगर की जाएगी और क्लाइंट के लिए प्रचार करेगी। हालांकि आपको किसी भी अतिरिक्त प्लग-इन को स्थापित करने की आवश्यकता होगी। प्लग-इन को अजगर, पर्ल, BASH, PHP और अन्य स्क्रिप्टेड भाषाओं का उपयोग करके भी लिखा जा सकता है।

चरण 7: क्लाइंट को मास्टर कॉन्फ़िगरेशन में जोड़ें

क्लाइंट को कॉन्फ़िगर करने के लिए आपको मास्टर पर वापस जाने की आवश्यकता होगी ताकि इसे कनेक्ट किया जा सके। कुछ कदम हैं जिन्हें उठाने की आवश्यकता होगी:

  1. होस्ट कॉन्फ़िगरेशन जोड़ें repository.d
  2. समापन बिंदु के रूप में ज़ोन में होस्ट जोड़ें।
  3. क्लाइंट के लिए कोई भी चेक कॉन्फ़िगर करें। यह इस मार्गदर्शिका के दायरे से बाहर है, मैं इसमें शामिल चरणों का केवल एक बुनियादी विवरण प्रदान करूँगा।

होस्ट कॉन्फ़िगरेशन /etc/icinga2/repository.d/hosts/icinga2client.example.com.confफ़ाइल में दर्ज किया जाएगा ।

sudo vi /etc/icinga2/repository.d/hosts/icinga2client.example.com.conf
object Host "icinga2client.example.com" {
  import "satellite-host"
  address = "$icinga2clientIP"
  vars.os = "Linux"
}
sudo chown icinga:icinga /etc/icinga2/repository.d/hosts/icinga2client.example.com.conf

अब होस्ट क्लाइंट कॉन्फिगर में मौजूद है, लेकिन इसे एक जोन में रखा जाना चाहिए। यह ज़ोन /etc/icinga2/repository.d/zonesफ़ोल्डर में होगा , उसी नाम के साथ जो ज़ोन के नाम पर नज़र रखने के लिए आसान बनाता है।

sudo vi /etc/icinga2/repository.d/zones/clientZone.conf
object Zone "clientZone" {
        endpoints = [ "icinga2client.example.com" ]
        parent = "icinga2master.example.com"
}

अगला, आपको global-templatesज़ोन जोड़ने की आवश्यकता है ।

sudo vi /etc/icinga2/repository.d/zones/global-templates.conf
object Zone "global-templates" {
        global = true
}

अंत में, क्लाइंट एंडपॉइंट को जोड़ें ताकि "क्लाइंटज़ोन" एंडपॉइंट्स सरणी को पॉपुलेट किया जाए जब यह चलता है।

sudo vi /etc/icinga2/repository.d/endpoints/icinga2client.example.com.conf

#Change values to match the host you're adding
object Endpoint "icinga2client.example.com" {
        host = "$icinga2clientIP"
}

यह सुनिश्चित करने के लिए कि कोई अनुमति समस्याएँ नहीं हैं, आगे बढ़ें और फिर से स्वामी / समूह को बदलें।

sudo chown -R icinga:icinga /etc/icinga2

यह सुनिश्चित करने के लिए कॉन्फ़िगरेशन परिवर्तन सत्यापित करें कि कोई और समस्या नहीं है।

sudo icinga2 daemon -C

यदि सत्यापन सफल हो जाता है, तो पुनः लोड के साथ आगे बढ़ें।

sudo service icinga2 restart

यदि आप अपनी Icinga2 वेबसाइट पर जाते हैं, तो आप देखेंगे कि सर्वर सुलभ हो जाएगा।

चरण 8: कस्टम कमांड और चेक

आप "कमांड नहीं मिली" या "चेक डिफाइन नहीं" के बारे में त्रुटियों का सामना कर सकते हैं। यह वह जगह है जहाँ वैश्विक-टेम्पलेट ज़ोन खेल में आता है। आपको /etc/icinga2/conf.d/फ़ाइलों में कॉन्फ़िगरेशन की प्रतिलिपि बनाने और उन्हें /etc/icinga2/zones.d/global-templates/फ़ाइलों में डालने की आवश्यकता होगी । उदाहरण के लिए, "check_software" कमांड बनाने के लिए, आपको निम्नलिखित कार्य करने होंगे।

sudo mkdir /etc/icinga2/zones.d/global-templates
sudo vi /etc/icinga2/zones.d/global-templates/commands.conf
object CheckCommand "check_software" {
  import "plugin-check-command"
  command = [ "/usr/bin/sudo",  PluginDir + "/software_service_check.sh" ]
}

software_service_check.shफ़ाइल में मौजूद करने की आवश्यकता होगी /usr/lib64/nagios/pluginsपर फ़ोल्डर ग्राहक

अगला, /etc/icinga2/repository.d/hosts/services.confफ़ाइल में सेवा की जांच जोड़ें ।

sudo vi /etc/icinga2/repository.d/hosts/services/services.conf
apply Service "Check Software Service" {
  import "mail-service"
  check_command = "check_software" # This check command is the same name as the one you defined in global-templates/commands.conf

  assign where host.vars.client_endpoint # This will apply to every client server. If you need it to be more restrictive, you should look into custom variables
}

आपको फिर से अनुमतियां बदलनी होंगी।

sudo chown -R icinga:icinga /etc/icinga2

फिर, कॉन्फ़िगरेशन को फिर से सत्यापित करें।

sudo icinga2 daemon -C

अंत में, यदि यह सफल होता है, तो पुनः लोड करें:

sudo service icinga2 restart

बधाई हो! अब आप एक मास्टर-क्लाइंट मॉडल में Icinga2 का उपयोग कर रहे हैं और अब असुरक्षित NRPE चेक का उपयोग करने से बच सकते हैं!



Leave a Comment

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed ​​का उपयोग करता है। क्या थी?

CentOS पर FFmpeg कैसे स्थापित करें

CentOS पर FFmpeg कैसे स्थापित करें

FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ

CentOS 7 पर RockMongo स्थापित करें

CentOS 7 पर RockMongo स्थापित करें

RockMongo एक वेब-आधारित MongoDB प्रबंधन उपकरण है जो MySQL प्रबंधन उपकरण के समान है: phpMyAdmin। यह ट्यूटोरियल इंस्टॉलिन की प्रक्रिया को कवर करेगा

CentOS 7 पर बुक किए गए समयबद्धक को कैसे स्थापित करें

CentOS 7 पर बुक किए गए समयबद्धक को कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? आवश्यकताएँ एक Vultr CentOS 7 सर्वर उदाहरण। एक sudo यूजर। चरण 1: सिस्टम को पहले अपडेट करें, अपने सिस्टम सर्वर को वें में अपडेट करें

CentOS 7 पर नेटडाटा स्थापित करना

CentOS 7 पर नेटडाटा स्थापित करना

एक अलग प्रणाली का उपयोग? नेटडाटा रियल-टाइम सिस्टम मेट्रिक्स मॉनिटरिंग के क्षेत्र में एक उभरता हुआ सितारा है। एक ही तरह के अन्य उपकरणों की तुलना में, नेटडाटा:

CentOS 7 पर स्टारबाउंड सर्वर कैसे स्थापित करें

CentOS 7 पर स्टारबाउंड सर्वर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? इस ट्यूटोरियल में, बीमार समझा जा रहा है कि CentOS 7 पर एक स्टारबाउंड सर्वर को कैसे सेटअप किया जाए। आवश्यक शर्तें आपको इस गेम को खुद पर बनाना होगा।

CentOS 7 पर Django कैसे स्थापित करें

CentOS 7 पर Django कैसे स्थापित करें

वेब एप्लिकेशन लिखने के लिए Django एक लोकप्रिय पायथन फ्रेमवर्क है। Django के साथ, आप तेजी से अनुप्रयोगों का निर्माण कर सकते हैं, पहिया को फिर से बनाए बिना। अगर आप चाहते हैं

CentOS 6 पर SA-MP सैन एंड्रियास मल्टीप्लेयर सर्वर सेटअप करें

CentOS 6 पर SA-MP सैन एंड्रियास मल्टीप्लेयर सर्वर सेटअप करें

एक अन्य Vultr ट्यूटोरियल में आपका स्वागत है। यहां, आप सीखेंगे कि एसएएमपी सर्वर कैसे स्थापित करें और चलाएं। यह गाइड CentOS 6 के लिए लिखा गया था

CentOS 7 पर Revive Adserver इनस्टॉल करना

CentOS 7 पर Revive Adserver इनस्टॉल करना

Revive Adserver एक स्वतंत्र और खुला स्रोत विज्ञापन सेवारत प्रणाली है जिसका उपयोग वेबसाइटों पर, ऐप्स में और / या वीडियो खिलाड़ियों में विज्ञापनों को प्रबंधित करने के लिए किया जा सकता है। इस लेख में,

CentOS 7 पर पार्स सर्वर कैसे स्थापित करें

CentOS 7 पर पार्स सर्वर कैसे स्थापित करें

पार्स सर्वर पार्स बैकेंड सेवा के लिए खुला स्रोत विकल्प है जिसे बंद किया जा रहा है। यदि आप इस सेवा के प्रशंसक हैं, तो आप अभी भी वें का आनंद ले सकते हैं

CentOS 7 पर एल्ग स्थापित करें

CentOS 7 पर एल्ग स्थापित करें

एक अलग प्रणाली का उपयोग? एल्ग एक खुला स्रोत सोशल नेटवर्किंग इंजन है जो परिसर के सामाजिक नेटवर्क जैसे सामाजिक वातावरण के निर्माण की अनुमति देता है

CentOS 7 पर डायस्पोरा के साथ अपने सामाजिक नेटवर्क का निर्माण करें

CentOS 7 पर डायस्पोरा के साथ अपने सामाजिक नेटवर्क का निर्माण करें

एक अलग प्रणाली का उपयोग? डायस्पोरा एक गोपनीयता-जागरूक, ओपन सोर्स सोशल नेटवर्क है। इस ट्यूटोरियल में, आप सीखेंगे कि डायस्पोरा पो को कैसे सेट और कॉन्फ़िगर करें

CentOS 7 पर कुबेदम के साथ कुबेरनेट्स तैनात करें

CentOS 7 पर कुबेदम के साथ कुबेरनेट्स तैनात करें

अवलोकन यह लेख आपको कुबेरनेट क्लस्टर प्राप्त करने और कुछ ही समय में कुबेदम के साथ चलने में मदद करने के लिए है। यह गाइड दो सर्वरों को तैनात करेगा

CentOS पर Z और Zsh के साथ उत्पादकता बढ़ाएँ

CentOS पर Z और Zsh के साथ उत्पादकता बढ़ाएँ

परिचय लिनक्स सिस्टम पर काम करने का मतलब है कि कोई कमांड लाइन का उपयोग अधिक बार नहीं कर रहा है। स्वागत के रूप में बार-बार लंबी निर्देशिका के नाम टाइप करना

कैसे एक Vultr LEMP सर्वर पर OpenCart स्थापित करें

कैसे एक Vultr LEMP सर्वर पर OpenCart स्थापित करें

ओपनकार्ट एक लोकप्रिय ओपन सोर्स शॉपिंग कार्ट सॉल्यूशन है जिसे उत्कृष्ट कार्यक्षमता, उपयोग में आसानी और उपस्थिति प्रदान करने के लिए डिज़ाइन किया गया है। OpenCart के साथ, आप सीए

CentOS 7 पर विकास के लिए Sails.js सेटअप करें

CentOS 7 पर विकास के लिए Sails.js सेटअप करें

एक अलग प्रणाली का उपयोग? परिचय Sails.js Node.js के लिए MVC फ्रेमवर्क है, जो रूबी ऑन रेल्स के समान है। यह आधुनिक अनुप्रयोगों को विकसित करने के लिए बनाता है

कैसे CentOS 7 पर स्रोत से Nginx संकलन करने के लिए

कैसे CentOS 7 पर स्रोत से Nginx संकलन करने के लिए

एक अलग प्रणाली का उपयोग? NGINX को HTTP / HTTPS सर्वर, रिवर्स प्रॉक्सी सर्वर, मेल प्रॉक्सी सर्वर, लोड बैलेंसर, TLS टर्मिनेटर, या कैचिन के रूप में उपयोग किया जा सकता है

CentOS 7 पर dotCMS कैसे स्थापित करें

CentOS 7 पर dotCMS कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? dotCMS जावा में लिखा एक ओपन सोर्स एंटरप्राइज ग्रेड कंटेंट मैनेजमेंट सिस्टम है। इसमें लगभग हर सुविधा आवश्यक टी होती है

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है

डेबियन पर सेटअप NFS शेयर

डेबियन पर सेटअप NFS शेयर

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

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है

Linux पर एक TeamTalk Server सेटअप करें

Linux पर एक TeamTalk Server सेटअप करें

टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed ​​का उपयोग करता है। क्या थी?

CentOS पर FFmpeg कैसे स्थापित करें

CentOS पर FFmpeg कैसे स्थापित करें

FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा

अपने Vultr VPS को कैसे एक्सेस करें

अपने Vultr VPS को कैसे एक्सेस करें

Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ