Hi all,
We're migrating over to XI from Groundworks/Nagios. My query is related to services. I've created several services using check_xi_by_ssh (Which uses check_by_ssh) within CCM/services to monitor various things like disk space or processes etc. In each of these created services you can assign to either hosts or host groups. So say I assign a created service to 10 servers to monitor disk space for /opt (check_disk /opt -w 10% -c 5%)and they are monitoring fine. In groundworks/Nagios you can customise each servers warning and critical alert ranges. However in XI you can only change it for all 10 servers. I've not used the wizards BTW as it's easier to do it manually. However if I do use a wizard it creates a single service for that particular server with the server name as the service instead of the service check like check_disk_opt (which is confusing as it does use check_disk_opt as the description?), but I am able to change the values of the thresholds for just that server.
We have a service group with 100 servers in it so creating one service and assigning to the group is much easier. I just can't change individual server service thresholds?
Am I going about this the wrong way?
Cheers, a XI newbie...
changing service arguments for a specific service
-
benjaminsmith
- Posts: 5324
- Joined: Wed Aug 22, 2018 4:39 pm
- Location: saint paul
Re: changing service arguments for a specific service
Hello @wisgb,
It really depends on how the check command is defined, if those values are arguments in the command you can change individual service thresholds.
If you have the enterprise edition of Nagios XI, I would recommend taking a look at the Bulk Mods Tool as this is a real time saver for mananging a large network. You can change a single config option or change the check command and its arguments across services or groups of services.
Nagios XI - Core Config Manager - Bulk Modification Tool
Hope that helps and let me know if you have further questions.
It really depends on how the check command is defined, if those values are arguments in the command you can change individual service thresholds.
If you have the enterprise edition of Nagios XI, I would recommend taking a look at the Bulk Mods Tool as this is a real time saver for mananging a large network. You can change a single config option or change the check command and its arguments across services or groups of services.
Nagios XI - Core Config Manager - Bulk Modification Tool
Hope that helps and let me know if you have further questions.
As of May 25th, 2018, all communications with Nagios Enterprises and its employees are covered under our new Privacy Policy.
Be sure to check out our Knowledgebase for helpful articles and solutions!
Be sure to check out our Knowledgebase for helpful articles and solutions!
Re: changing service arguments for a specific service
HI Ben
Yes we do indeed have Enterprise. I have also used the bulk mod tool. However, perhaps I dodn;t explain the prob very clearly. Here's an example of a service I created in CCM --> Services --> New Service.
Check_disk_opt:
It uses the check command "check_xi_by_ssh" (Which I know just calls check_by_ssh under the covers)
Command View: $USER1$/check_by_ssh -H $HOSTADDRESS$ $ARG1$ $ARG2$
$ARG1$ = -C "./libexec/check_disk /opt -w 10% -c 5%"
$ARG2$ is left blank so not used
I can then deploy this to a range of servers using the bulk mod tool to either multiple single servers or 1 or more host groups. However, once deployed to a server you can't change these thresholds for a particular server. The only option I can see using this method is to copy this service, use a sloightly diff name say check_disk_opt_W20_C10, change the thresholds and deploy to the relevant servers?
Hope that's clearer?
If there's a better of doing this so there's only one service called check_disk_opt?
Cheers
Steve
Yes we do indeed have Enterprise. I have also used the bulk mod tool. However, perhaps I dodn;t explain the prob very clearly. Here's an example of a service I created in CCM --> Services --> New Service.
Check_disk_opt:
It uses the check command "check_xi_by_ssh" (Which I know just calls check_by_ssh under the covers)
Command View: $USER1$/check_by_ssh -H $HOSTADDRESS$ $ARG1$ $ARG2$
$ARG1$ = -C "./libexec/check_disk /opt -w 10% -c 5%"
$ARG2$ is left blank so not used
I can then deploy this to a range of servers using the bulk mod tool to either multiple single servers or 1 or more host groups. However, once deployed to a server you can't change these thresholds for a particular server. The only option I can see using this method is to copy this service, use a sloightly diff name say check_disk_opt_W20_C10, change the thresholds and deploy to the relevant servers?
Hope that's clearer?
If there's a better of doing this so there's only one service called check_disk_opt?
Cheers
Steve
-
benjaminsmith
- Posts: 5324
- Joined: Wed Aug 22, 2018 4:39 pm
- Location: saint paul
Re: changing service arguments for a specific service
Hi Steve,
Thanks for the clarification. I believe I have a better understanding of question. Getting back to your initial post, it sounds like you were on the right path. The best approached is to create hostgroups for and then add the hostgroup to the service.
This will make things easier to manage as if you want to add/remove the service from the host, you'll just need to edit the hostgroup.
In this case, you would create a hostgroup called Check_Disk and add all the hosts to this group that will require this check. Then you'll run the wizard to create the service and add the hostgroup to the service.
You can also define macros to use in your check commands to help manage the settings.
Thanks for the clarification. I believe I have a better understanding of question. Getting back to your initial post, it sounds like you were on the right path. The best approached is to create hostgroups for and then add the hostgroup to the service.
This will make things easier to manage as if you want to add/remove the service from the host, you'll just need to edit the hostgroup.
In this case, you would create a hostgroup called Check_Disk and add all the hosts to this group that will require this check. Then you'll run the wizard to create the service and add the hostgroup to the service.
You can also define macros to use in your check commands to help manage the settings.
You do not have the required permissions to view the files attached to this post.
As of May 25th, 2018, all communications with Nagios Enterprises and its employees are covered under our new Privacy Policy.
Be sure to check out our Knowledgebase for helpful articles and solutions!
Be sure to check out our Knowledgebase for helpful articles and solutions!
Re: changing service arguments for a specific service
Hi Ben
Thanks for you update. In your last update you are essentially doing exactly what I'm doing, creating a service, using the wizard in your case, then adding a relationship to a hostgroup that has all the servers in it. This means a disk check for /opt with a warning of 10% and critical value of 5% will be deployed to all servers in that hostgroup. But say that there are 100 centos servers in that hostgroup but one of those servers need a different warning and critical threshold value. In your example how would you change the threshold for just that one server?
The only way I can see to do this using the GUI interface is to create a separate service with the modified values, remove that server from main hostgroup and then add the service just to that server?
I may investigate changing the physical config files and see if that's possible. But the whole reason for using just the GUI is so a server team can look after monitoring when I'm not available.
Thoughts?
Thanks for you update. In your last update you are essentially doing exactly what I'm doing, creating a service, using the wizard in your case, then adding a relationship to a hostgroup that has all the servers in it. This means a disk check for /opt with a warning of 10% and critical value of 5% will be deployed to all servers in that hostgroup. But say that there are 100 centos servers in that hostgroup but one of those servers need a different warning and critical threshold value. In your example how would you change the threshold for just that one server?
The only way I can see to do this using the GUI interface is to create a separate service with the modified values, remove that server from main hostgroup and then add the service just to that server?
I may investigate changing the physical config files and see if that's possible. But the whole reason for using just the GUI is so a server team can look after monitoring when I'm not available.
Thoughts?
-
benjaminsmith
- Posts: 5324
- Joined: Wed Aug 22, 2018 4:39 pm
- Location: saint paul
Re: changing service arguments for a specific service
Hello @wisgb,
Let me know if you have any other questions.
That's what I would recommend. You would create a new service for any modifications.The only way I can see to do this using the GUI interface is to create a separate service with the modified values, remove that server from main hostgroup and then add the service just to that server?
Let me know if you have any other questions.
As of May 25th, 2018, all communications with Nagios Enterprises and its employees are covered under our new Privacy Policy.
Be sure to check out our Knowledgebase for helpful articles and solutions!
Be sure to check out our Knowledgebase for helpful articles and solutions!