############################################################################### # TEMPLATES.CFG - SAMPLE OBJECT TEMPLATES # # Last Modified: 10-03-2007 # # NOTES: This config file provides you with some example object definition # templates that are refered by other host, service, contact, etc. # definitions in other config files. # # You don't need to keep these definitions in a separate file from your # other object definitions. This has been done just to make things # easier to understand. # ############################################################################### ############################################################################### ############################################################################### # # CONTACT TEMPLATES # ############################################################################### ############################################################################### # Generic contact definition template - This is NOT a real contact, just a template! define contact{ name generic-contact ; The name of this contact template service_notification_period 24x7 ; service notifications can be sent anytime host_notification_period 24x7 ; host notifications can be sent anytime service_notification_options w,u,c,r,f,s ; send notifications for all service states, flapping events, and scheduled downtime events host_notification_options d,u,r,f,s ; send notifications for all host states, flapping events, and scheduled downtime events service_notification_commands notify-service-by-email ; send service notifications via email host_notification_commands notify-host-by-email ; send host notifications via email register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL CONTACT, JUST A TEMPLATE! } ############################################################################### ############################################################################### # # HOST TEMPLATES # ############################################################################### ############################################################################### # Generic host definition template - This is NOT a real host, just a template! define host{ name generic-host ; The name of this host template notifications_enabled 1 ; Host notifications are enabled event_handler_enabled 1 ; Host event handler is enabled flap_detection_enabled 1 ; Flap detection is enabled failure_prediction_enabled 1 ; Failure prediction is enabled process_perf_data 1 ; Process performance data retain_status_information 1 ; Retain status information across program restarts retain_nonstatus_information 1 ; Retain non-status information across program restarts notification_period 24x7 ; Send host notifications at any time register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE! } # Rack host definition template - This is NOT a real host, just a template! # 這個host 範本是為了只想監控實體主機 管理IP, 但是系統管理人不是自己的template define host{ name rack-host ; The name of this host template use generic-host ; This template inherits other values from the generic-host template check_period 24x7 ; By default, Linux hosts are checked round the clock check_interval 5 ; Actively check the host every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each Linux host 10 times (max) check_command check-host-alive ; Default command to check Linux hosts notification_period 24x7 ; Linux admins hate to be woken up, so we only notify during the day ; Note that the notification_period variable is being overridden from ; the value that is inherited from the generic-host template! notification_interval 120 ; Resend notifications every 2 hours notification_options d,u,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default hostgroups rack-group ; Host groups that Rack server should be a member of 這邊是額外加入的 ^__^ icon_image rack-server.gif icon_image_alt rack statusmap_image rack-server.gd2 register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE! } # Linux host definition template - This is NOT a real host, just a template! # 這邊有做了修改 讓Linux Server 會自動加入 linux server 的群組 define host{ name linux-server ; The name of this host template use generic-host ; This template inherits other values from the generic-host template check_period 24x7 ; By default, Linux hosts are checked round the clock check_interval 5 ; Actively check the host every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each Linux host 10 times (max) check_command check-host-alive ; Default command to check Linux hosts notification_period workhours ; Linux admins hate to be woken up, so we only notify during the day ; Note that the notification_period variable is being overridden from ; the value that is inherited from the generic-host template! notification_interval 120 ; Resend notifications every 2 hours notification_options d,u,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default hostgroups linux-servergroup ; Host groups that Linux servers should be a member of 這邊是額外加入的 ^__^ icon_image linux40.gif icon_image_alt linux statusmap_image linux40.gd2 register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE! } # Windows host definition template - This is NOT a real host, just a template! define host{ name windows-server ; The name of this host template use generic-host ; Inherit default values from the generic-host template check_period 24x7 ; By default, Windows servers are monitored round the clock check_interval 5 ; Actively check the server every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each server 10 times (max) check_command check-host-alive ; Default command to check if servers are "alive" notification_period 24x7 ; Send notification out at any time - day or night notification_interval 30 ; Resend notifications every 30 minutes notification_options d,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default hostgroups windows-servers ; Host groups that Windows servers should be a member of icon_image win40.gif icon_image_alt win statusmap_image win40.gd2 register 0 ; DONT REGISTER THIS - ITS JUST A TEMPLATE } # 這一段是新增的區段, 為了 Windows workstation 而設定---- start------------------------------------------------------------- # Windows host definition template - This is NOT a real host, just a template! define host{ name windows-pc ; The name of this host template 範本的名稱 use windows-server ; 繼承 windows-server 的所有設定 check_period workhours ; By default, Windows servers are monitored round the clock 檢查的時間 notification_period workhours ; Send notification out at any time - day or night hostgroups windows-pcgroup ; window-pc 主機預設會歸屬的群組 } # 這一段是新增的區段, 為了 Windows workstation 而設定---- end -------------------------------------------------------------- # 這一段是新增的區段, 為了 Windows PC 群組 而設定---- start------------------------------------------------------------- # Define host group for Windows PC define hostgroup{ hostgroup_name windows-pcgroup ; The name of the hostgroup alias Windows PC Group ; Long name of the group } # 這一段是新增的區段, 為了 Windows PC 群組 而設定---- end ------------------------------------------------------------- # 這一段是新增的區段, 為了 Windows Server 群組 而設定---- start------------------------------------------------------------- # 注意, 啟動這個群組設定必須註解 /etc/nagios/objects/windows.cfg 內的設定,不然群組名稱會重複 # Define a hostgroup for Windows machines # All hosts that use the windows-server template will automatically be a member of this group define hostgroup{ hostgroup_name windows-servers ; The name of the hostgroup alias Windows Servers ; Long name of the group } # 這一段是新增的區段, 為了 Windows Server 群組 而設定---- end ------------------------------------------------------------- # 這一段是新增的區段, 為了Linux Server 群組 而設定---- start------------------------------------------------------------- # Define host group for Linux Servers define hostgroup{ hostgroup_name linux-servergroup ; The name of the hostgroup alias Linux Server Group ; Long name of the group } # 這一段是新增的區段, 為了Linux Server 群組 而設定---- end ------------------------------------------------------------- # 這一段是新增的區段, 為了Rack Host 群組 而設定---- start------------------------------------------------------------- # Define host group for Rack hosts define hostgroup{ hostgroup_name rack-group ; The name of the hostgroup alias Rack Hosts Group ; Long name of the group } # 這一段是新增的區段, 為了Rack Host 群組 而設定---- end ------------------------------------------------------------- # 這一段是新增的區段, 為了Labs Host 群組 而設定---- start------------------------------------------------------------- # Define host group for Labs hosts define hostgroup{ hostgroup_name labs-group ; The name of the hostgroup alias Labs Hosts Group ; Long name of the group } # 這一段是新增的區段, 為了Labs Host 群組 而設定---- end ------------------------------------------------------------- # 這一段是新增的區段, 為了Project 群組 而設定---- start------------------------------------------------------------- # Define host group for Project hosts define hostgroup{ hostgroup_name project-group ; The name of the hostgroup alias Project Hosts Group ; Long name of the group } # 這一段是新增的區段, 為了Project Host 群組 而設定---- end ------------------------------------------------------------- # 這一段是新增的區段, 為了switch 群組 而設定---- start------------------------------------------------------------- define hostgroup{ hostgroup_name switch-group ; The name of the hostgroup alias Network Switches ; Long name of the group } # 這一段是新增的區段, 為了switch 群組 而設定---- end ------------------------------------------------------------- # We define a generic printer template that can be used for most printers we monitor define host{ name generic-printer ; The name of this host template use generic-host ; Inherit default values from the generic-host template check_period 24x7 ; By default, printers are monitored round the clock check_interval 5 ; Actively check the printer every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each printer 10 times (max) check_command check-host-alive ; Default command to check if printers are "alive" notification_period workhours ; Printers are only used during the workday notification_interval 30 ; Resend notifications every 30 minutes notification_options d,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default register 0 ; DONT REGISTER THIS - ITS JUST A TEMPLATE } # Define a template for switches that we can reuse define host{ name generic-switch ; The name of this host template use generic-host ; Inherit default values from the generic-host template check_period 24x7 ; By default, switches are monitored round the clock check_interval 5 ; Switches are checked every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each switch 10 times (max) check_command check-host-alive ; Default command to check if routers are "alive" notification_period 24x7 ; Send notifications at any time notification_interval 30 ; Resend notifications every 30 minutes notification_options d,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default icon_image switch.gif icon_image_alt switch statusmap_image switch.gd2 register 0 ; DONT REGISTER THIS - ITS JUST A TEMPLATE } ############################################################################### ############################################################################### # # SERVICE TEMPLATES # ############################################################################### ############################################################################### # Generic service definition template - This is NOT a real service, just a template! define service{ name generic-service ; The 'name' of this service template active_checks_enabled 1 ; Active service checks are enabled passive_checks_enabled 1 ; Passive service checks are enabled/accepted parallelize_check 1 ; Active service checks should be parallelized (disabling this can lead to major performance problems) obsess_over_service 1 ; We should obsess over this service (if necessary) check_freshness 0 ; Default is to NOT check service 'freshness' notifications_enabled 1 ; Service notifications are enabled event_handler_enabled 1 ; Service event handler is enabled flap_detection_enabled 1 ; Flap detection is enabled failure_prediction_enabled 1 ; Failure prediction is enabled process_perf_data 1 ; Process performance data retain_status_information 1 ; Retain status information across program restarts retain_nonstatus_information 1 ; Retain non-status information across program restarts is_volatile 0 ; The service is not volatile check_period 24x7 ; The service can be checked at any time of the day max_check_attempts 3 ; Re-check the service up to 3 times in order to determine its final (hard) state normal_check_interval 10 ; Check the service every 10 minutes under normal conditions retry_check_interval 2 ; Re-check the service every two minutes until a hard state can be determined contact_groups admins ; Notifications get sent out to everyone in the 'admins' group notification_options w,u,c,r ; Send notifications about warning, unknown, critical, and recovery events notification_interval 60 ; Re-notify about service problems every hour notification_period 24x7 ; Notifications can be sent out at any time register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE! } # 這一段是新增的區段, 為了 一般PC 工作 而設定---- start------------------------------------------------------------- define service{ name generic-pc-service ; The 'name' of this service template 名稱有修改過 use generic-service ; 繼承generic-service的設定 check_period workhours ; The service can be checked at any time of the day 重點是檢查時間是上班時間 notification_period workhours ; Notifications can be sent out at any time } # 這一段是新增的區段, 為了 一般PC 工作 而設定---- end ------------------------------------------------------------- # Local service definition template - This is NOT a real service, just a template! define service{ name local-service ; The name of this service template use generic-service ; Inherit default values from the generic-service definition max_check_attempts 4 ; Re-check the service up to 4 times in order to determine its final (hard) state normal_check_interval 5 ; Check the service every 5 minutes under normal conditions retry_check_interval 1 ; Re-check the service every minute until a hard state can be determined register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE! } #NRPE service template 這邊加入日後要使用的 NRPE 指令 define service{ name nrpe-check_users use generic-service service_description Online Users check_command check_nrpe!check_users } define service{ name nrpe-check_sda1 use generic-service service_description Check sda1 check_command check_nrpe!check_sda1 } define service{ name nrpe-check_sda2 use generic-service service_description Check sda2 check_command check_nrpe!check_sda2 } define service{ name nrpe-check_vda1 use generic-service service_description Check vda1 check_command check_nrpe!check_vda1 } define service{ name nrpe-check_vda2 use generic-service service_description Check vda2 check_command check_nrpe!check_vda2 } define service{ name nrpe-check_load use generic-service service_description Check Load check_command check_nrpe!check_load } define service{ name nrpe-check_total_procs use generic-service service_description Total_Procs check_command check_nrpe!check_total_procs } define service{ name nrpe-check_ssh use generic-service service_description Check SSH check_command check_nrpe!check_ssh } define service{ name nrpe-check_smtp use generic-service service_description Check SMTP check_command check_nrpe!check_smtp }