...
This tool is used to check the state of your Shinken Enterprise installation and configuration.
If launch on the arbiter daemon, will check all the daemons of your architecture (simulate shinken-global-healthcheck)
If launch from a distant server (scheduler, poller, etc...) only the local daemons will be check (simulate shinken-local-healthcheck)
Usage:
shinken-healthcheck
Options:
| Name | Description |
|---|---|
--version | Show program's version number and exit. |
-h, --help | Show this help message and exit. |
- |
f, -- |
file | Write output that can be send to the Shinken Solutions team. Support file is available at /root/shinken-healthcheck_date_hour |
Sample Output
| Code Block | ||
|---|---|---|
| ||
########################################################################################## This tool is used to check the state of your Shinken Enterprise (202.03.03.02U01) installation and configuration ######################################## [ ............ Note: Global check launch as launch from a arbiter server ################################################## Versions: Original installed version: 02.03.03.U01-137.fr Updated version : 02.03.03.U01-137.fr ################################################## [........................................................................................ ] 100% Architecture] 100% Architecture ------------ OK: |Realm All/| [/etc/shinken/synchronizers/synchronizer-master.cfg:13] connection to daemon is ------------ -------- |In All| OK-------- OK: - [/etc/shinken/schedulers/scheduler-master.cfg:14] connection to daemon is OK localhost (127.0.0.1): OK: ^^^^^^^^^^^^^^^^^^^^^^^^ [/etc/shinken/brokers/broker-master.cfg:15] connection to daemon is OK OK[receiver: receiver-1] [/etc/shinken/receivers/receiver-master.cfg:7] connection to daemon is OK OK: AT RISK: receiver-1 is defined with the [/etc/shinken/reactionners/reactionner-master.cfg:9] connection to daemon is OK OK: [/etc/shinken/pollers/poller-master.cfg:9] connection to daemon is OK OK:localhost address. It is a problem in distributed mode. Please configure it with the LAN IP/FQDN address instead [/etc/shinken/arbiters/arbiter-master.cfg:13] connection to OK: Connection to daemon is OK at port 7773 AT RISK: [/etc/shinken/synchronizers/synchronizer-master.cfg:13] is defined with OK: Daemon version localhost address, will be a problem in distributed mode. Please configure it is: 02.03.03.U01-137.fr [reactionner: reactionner-master] with the LAN IP/FQDN address instead AT RISK: [/etc/shinken/schedulers/schedulerreactionner-master.cfg:14] is defined with the localhost address. It is a problem in distributed mode. Please configure it with the LAN IP/FQDN address, instead will be a problem in distributed mode. Please configure it with the LAN OK: Connection to daemon is OK IP/FQDNat addressport instead7769 AT RISK: [/etc/shinken/brokers/broker-master.cfg:15] is defined with localhost address, OK: Daemon version is: will be a problem in distributed mode. Please configure it with the LAN IP/FQDN 02.03.03.U01-137.fr [broker: broker-master] address instead AT RISK: broker-master is [/etc/shinken/receivers/receiver-master.cfg:7] is defined with localhost address, will bedefined with the localhost address. It is a problem in distributed mode. Please configure it with the LAN IP/FQDN address instead IP/FQDN address instead AT RISKOK: [/etc/shinken/reactionners/reactionner-master.cfg:9] is defined with localhost Connection to daemon is OK at port 7772 address, will be a problemOK: in distributed mode. Please configure itDaemon withversion the LANis: 02.03.03.U01-137.fr IP/FQDN address insteadModules AT RISK: [/etc/shinken/pollers/poller-master.cfg:9] is defined with localhost address, OK: Name: Livestatus will be a problem in distributed mode. Please configure it with the LAN IP/FQDNType: livestatus address instead AT RISK: OK: [/etc/shinken/arbiters/arbiter-master.cfg:13] is defined with localhost address, Name: Simple-log Type: simple-log will be a problem in distributed mode. Please configure it with the LAN IP/FQDN OK: address instead Libs Name: WebUI OK: [lib check] pymongo is isType: availablewebui OK: [lib check] pycurl is is available OK: Name: Graphite-Perfdata [lib check] gevent is is availableType: graphite_perfdata OK: [lib check] ldap is is available OK: Name: sla [lib check] gevent is is available Licence key ERROR: The licence key isType: invalidsla ERROR: The key format is invalid.- 127.0.0.1 (127.0.0.1): ERROR: No licence key.^^^^^^^^^^^^^^^^^^^^^^^^ ERROR: The licence key is expired Modules OK: [poller: poller-central] [Synchronizer] auth_secret is a custom variable OK: Configuration seems valid [Synchronizer] master_key is a custom variable OK: OK: [WebUI] auth_secret is a custom variable Storage Connection to daemon is OK: at port 7771 [Synchronizer] mongodb server is available: mongodb://localhost/?safe=false OK: OK: [graphite] serverDaemon localhost:2003version is available: 02.03.03.U01-137.fr OK: [webui::mongodb module /etc/shinken/modules/mongodb.cfg:5] mongodb server is- localhost (192.168.56.101): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ available: mongodb://localhost/?safe=true [scheduler: scheduler-central] OK: [webui::graphite] server 127.0.0.1 is available with 10 top level elements |
Output parts
The healthcheck output is separated into several parts:
OK: Configuration seems valid
OK: Connection to daemon is OK at port 7768
OK: Daemon version is: 02.03.03.U01-137.fr
Modules
OK: Name: PickleRetentionFile Type: pickle_retention_file
------------------
|Realm All/Extra/|
------------------
----------
|In Extra|
----------
- 192.168.56.102 (192.168.56.102):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[poller: poller-distant]
AT RISK: Cannot get module details from your daemon (HTTP Error 404: Not Found). Please update it.
OK: Configuration seems valid
OK: Connection to daemon is OK at port 7771
-------------------------
|Realm All/Extra/Extra2/|
-------------------------
-----------
|In Extra2|
-----------
- 192.168.56.102 (192.168.56.102):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[scheduler: scheduler-distant]
AT RISK: Cannot get module details from your daemon (HTTP Error 404: Not Found). Please update it.
OK: Configuration seems valid
OK: Connection to daemon is OK at port 7768
- localhost (127.0.0.1):
^^^^^^^^^^^^^^^^^^^^^^^^
[arbiter: synchronizer-master]
AT RISK: synchronizer-master is defined with the localhost address. It is a problem in distributed mode. Please configure it with the LAN IP/FQDN address instead
OK: Connection to daemon is OK at port 7765
OK: Daemon version is: 02.03.03.U01-137.fr
Modules
OK: Name: Cfg_password Type: cfg_password_webui
OK: Name: syncui-import Type: syncui-import
OK: Name: cfg-file-shinken Type: cfg-file-import
OK: Name: active-dir Type: active-dir-import
OK: Name: sync-vmware Type: sync-vmware
OK: Name: cfg-file-nagios Type: cfg-file-import
OK: Name: discovery-import Type: discovery-import
OK: Name: ip-tag-dmz Type: sync_ip_tag
OK: Name: sync-regexp-tag Type: sync-regexp-tag
[arbiter: arbiter-master]
AT RISK: arbiter-master is defined with the localhost address. It is a problem in distributed mode. Please configure it with the LAN IP/FQDN address instead
OK: Connection to daemon is OK at port 7770
OK: Daemon version is: 02.03.03.U01-137.fr
Modules
OK: Name: synchronizer-import Type: synchronizer-import
Licence key
ERROR: The licence key is invalid
ERROR: No licence key. Trial mode Node limits : 20
Local libraries
[gevent]
OK: Library gevent is available. Version: 0.13.8
[pycurl]
OK: Library pycurl is available. Version: libcurl/7.19.7 NSS/3.16.2.3 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
[pymongo]
OK: Library pymongo is available. Version: 2.9.2
[ldap]
OK: Library ldap is available. Version: 2.3.10
Modules
[WebUI]
OK: Auth_secret is a custom variable
OK: Mongodb server is available at: mongodb://localhost/?safe=true
[Synchronizer]
OK: Mongodb server is available at: mongodb://localhost/?safe=false
OK: Auth_secret is a custom variable
OK: The master_key is a custom variable
Storage
[graphite]
OK: Graphite server 127.0.0.1 is available with 1 top level elements
OK: Graphite server localhost:2003 is available
|
Output parts
The healthcheck output is separated into several parts:
- Architecture: about Architecture: about your daemons configuration
- Libs: about installed librairies need by Shinken Enterprise
- Licence key: all about your licence key
- Modules: information about UIs
- Storage: information about the mongodb and graphite storage system
There are 3 level for output:
- OK: all is valid
- At Risk: it works, but something can go wrong in the future if you don't fix something
- Error: this part is in error and must be fix now
Common issues and Error:
Outdated or invalid licence key
If you are using a invalid or an outdated licence key, you will have ERRORS on the Licence key part. You will also have a At Risk level near the end of the key validity date.
localhost address on the daemon configuration
The installation is installing the default daemons with the localhost address. If you are setuping for a distributed setup, you MUST set the IP/FQDN address instead.
The mongodb database is stopped
If you see such errors messages:
| Code Block |
|---|
ERROR: [Synchronizer] cannot connect to mongodb server: mongodb://localhost/?safe=false (could not connect to localhost:27017: [Errno 111] Connection refused)
ERROR: [webui::mongodb module /etc/shinken/modules/mongodb.cfg:5] cannot connect to mongodb server: mongodb://localhost/?safe=true (could not connect to localhost:27017: [Errno 111] Connection refused) |
It means that the mongodb database is stopped. You an try to restart it with the command:
| Code Block | ||
|---|---|---|
| ||
/etc/init.d/mongodb start |
And if it stil fail, you can look at the mongodb database logs available in /var/log/mongodb/mongod.log
The Graphite servers are not available
If you see such errors:
| Code Block |
|---|
ERROR: [webui::graphite backend] cannot request graphite server at 127.0.0.1 (<urlopen error [Errno 111] Connection refused>) |
It means that the Graphite services are stopped.
You can try to restart them:
| Code Block | ||
|---|---|---|
| ||
/etc/init.d/httpd start
/etc/init.d/carbon-carche start |
One of your Shinken daemon is stopped:
If you see such an error:
| Code Block |
|---|
ERROR: [/etc/shinken/synchronizers/synchronizer-master.cfg:13] cannot contact daemon (<urlopen error [Errno 111] Connection refused>) |
It means that one of your Shinken daemons is stopped. You can try to restart it on its server:
...
shinken-local-healthcheck
This tool is used to check the state of your local Shinken Enterprise installation and configuration.
With this command, only the local installation and daemons will be checked.
Usage:
shinken-local-healthcheckOptions:
| Name | Description |
|---|---|
--version | Show program's version number and exit. |
-h, --help | Show this help message and exit. |
-f, --file | Write output that can be send to the Shinken Solutions team. Support file is available at /root/shinken-healthcheck_date_hour |
Output parts
The healthcheck output is separated into several parts:
- Architecture: about your daemons configuration
- Libs: about installed librairies need by Shinken Enterprise
- Licence key: all about your licence key
- Modules: information about UIs, if launch on a broker daemon
- Storage: information about the mongodb and graphite storage system, if need by daemons
There are 3 level for output:
- OK: all is valid
- At Risk: it works, but something can go wrong in the future if you don't fix something
- Error: this part is in error and must be fix now
shinken-global-healthcheck
This tool is used to check the state of your local Shinken Enterprise installation and configuration.
With this command, all the local and distant daemons will be checked. This should be launched only for the central (synchronizer/arbiter) daemon.
Usage:
shinken-global-healthcheckOptions:
| Name | Description |
|---|---|
--version | Show program's version number and exit. |
-h, --help | Show this help message and exit. |
-f, --file | Write output that can be send to the Shinken Solutions team. Support file is available at /root/shinken-healthcheck_date_hour |
Output parts
The healthcheck output is separated into several parts:
- Architecture: about your daemons configuration
- Libs: about installed librairies need by Shinken Enterprise
- Licence key: all about your licence key
- Modules: information about UIs, if launch on a broker daemon
- Storage: information about the mongodb and graphite storage system, if need by daemons
There are 3 level for output:
- OK: all is valid
- At Risk: it works, but something can go wrong in the future if you don't fix something
- Error: this part is in error and must be fix now