涛子 - 简单就是美

成单纯魁增,永继振国兴,克复宗清政,广开家必升

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/

install

yum -y install nagios-4.1.0rc1-2.el6.x86_64.rpm
yum -y install nagios-plugins-icmp

htpasswd -c /etc/nagios/htpasswd.users nagiosadmin

/etc/nagios/nagios.cfg

# nagios.cfg
cfg_dir=/etc/nagios/config

object_cache_file=/var/nagios/objects.cache
precached_object_file=/var/nagios/objects.precache
resource_file=/etc/nagios/resource.cfg

status_file=/var/nagios/status.dat
status_update_interval=10

nagios_user=nagios
nagios_group=nagios
check_external_commands=1

command_file=/var/nagios/rw/nagios.cmd
lock_file=/var/nagios/nagios.pid
temp_file=/var/nagios/nagios.tmp
temp_path=/tmp
event_broker_options=-1

log_rotation_method=d
log_file=/var/log/nagios/nagios.log
log_archive_path=/var/log/nagios/archives
use_syslog=1
log_notifications=1
log_service_retries=1
log_host_retries=1
log_event_handlers=1
log_initial_states=0
log_current_states=1
log_external_commands=1
log_passive_checks=1

service_inter_check_delay_method=s
max_service_check_spread=30
service_interleave_factor=s
host_inter_check_delay_method=s
max_host_check_spread=30
max_concurrent_checks=0
check_result_reaper_frequency=10
max_check_result_reaper_time=30
check_result_path=/var/nagios/spool/checkresults
max_check_result_file_age=3600
cached_host_check_horizon=15
cached_service_check_horizon=15
enable_predictive_host_dependency_checks=1
enable_predictive_service_dependency_checks=1
soft_state_dependencies=0
auto_reschedule_checks=0
auto_rescheduling_interval=30
auto_rescheduling_window=180
service_check_timeout=60
host_check_timeout=30
event_handler_timeout=30
notification_timeout=30
ocsp_timeout=5
perfdata_timeout=5
retain_state_information=1
state_retention_file=/var/nagios/retention.dat
retention_update_interval=60
use_retained_program_state=1
use_retained_scheduling_info=1
retained_host_attribute_mask=0
retained_service_attribute_mask=0
retained_process_host_attribute_mask=0
retained_process_service_attribute_mask=0
retained_contact_host_attribute_mask=0
retained_contact_service_attribute_mask=0
interval_length=60
check_for_updates=1
bare_update_check=0
use_aggressive_host_checking=0
execute_service_checks=1
accept_passive_service_checks=1
execute_host_checks=1
accept_passive_host_checks=1
enable_notifications=1
enable_event_handlers=1
process_performance_data=0
obsess_over_services=0
obsess_over_hosts=0
translate_passive_host_checks=0
passive_host_checks_are_soft=0
check_for_orphaned_services=1
check_for_orphaned_hosts=1
check_service_freshness=1
service_freshness_check_interval=60
service_check_timeout_state=c
check_host_freshness=0
host_freshness_check_interval=60
additional_freshness_latency=15
enable_flap_detection=1
low_service_flap_threshold=5.0
high_service_flap_threshold=20.0
low_host_flap_threshold=5.0
high_host_flap_threshold=20.0
date_format=us
illegal_object_name_chars=`~!$%^&*|'"<>?,()=
illegal_macro_output_chars=`~$&|'"<>
use_regexp_matching=0
use_true_regexp_matching=0
admin_email=nagios@localhost
admin_pager=pagenagios@localhost
daemon_dumps_core=0
use_large_installation_tweaks=0
enable_environment_macros=0
debug_level=0
debug_verbosity=1
debug_file=/var/log/nagios/nagios.debug
max_debug_file_size=1000000
allow_empty_hostgroup_assignment=0

/etc/nagios/config/commands.cfg

# commands.cfg

define command  {
    command_name    notify-host-by-email
    command_line    /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$
}

define command  {
    command_name    notify-service-by-email
    command_line    /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$
}

define command  {
    command_name    process-host-perfdata
    command_line    /usr/bin/printf "%b" "$LASTHOSTCHECK$\t$HOSTNAME$\t$HOSTSTATE$\t$HOSTATTEMPT$\t$HOSTSTATETYPE$\t$HOSTEXECUTIONTIME$\t$HOSTOUTPUT$\t$HOSTPERFDATA$\n" >> /var/nagios/host-perfdata.out
}

define command  {
    command_name    process-service-perfdata
    command_line    /usr/bin/printf "%b" "$LASTSERVICECHECK$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICESTATE$\t$SERVICEATTEMPT$\t$SERVICESTATETYPE$\t$SERVICEEXECUTIONTIME$\t$SERVICELATENCY$\t$SERVICEOUTPUT$\t$SERVICEPERFDATA$\n" >> /var/nagios/service-perfdata.out
}

define command {
    command_name    check-host-alive
    command_line    $USER1$/check_icmp -H $HOSTADDRESS$ -w 500.000ms,80% -c 500.000ms,80% -n 3
}

define command {
    command_name    check_icmp
    command_line    $USER1$/check_icmp -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -n 3
}

/etc/nagios/config/timeperiods.cfg

# timeperiods.cfg

define timeperiod {
    timeperiod_name workday
    alias           workday
    monday          9:00-18:00     
    tuesday         9:00-18:00
    wednesday       9:00-18:00
    thursday        9:00-18:00
    friday          9:00-18:00
}

define timeperiod {
    timeperiod_name weekend
    alias           weekend
    saturday        0:00-24:00
    sunday          0:00-24:00
}

define timeperiod {
    timeperiod_name 7x24
    alias           7x24
    monday          0:00-24:00
    tuesday         0:00-24:00
    wednesday       0:00-24:00
    thursday        0:00-24:00
    friday          0:00-24:00
    saturday        0:00-24:00
    sunday          0:00-24:00
}

/etc/nagios/config/contacts.cfg

# contacts.cfg

define contact {
    contact_name                    admin
    alias                           admin
    email                           admin@local
    contactgroups                   admin
    host_notification_period        7x24
    service_notification_period     7x24
    host_notification_options       d,r
    service_notification_options    c,r
    host_notification_commands      notify-host-by-email
    service_notification_commands   notify-service-by-email
}

define contact {
    contact_name                    monitor
    alias                           monitor
    email                           monitor@local
    contactgroups                   admin
    host_notification_period        7x24
    service_notification_period     7x24
    host_notification_options       d,r
    service_notification_options    c,r
    host_notification_commands      notify-host-by-email
    service_notification_commands   notify-service-by-email
}

/etc/nagios/config/contactgroups.cfg

# contactgroups.cfg

define contactgroup {
    contactgroup_name   admin
    alias               admin
    members             admin,monitor
}

/etc/nagios/config/templates.cfg

# templates.cfg

define host {
    name                    generic-host
    check_command           check-host-alive
    check_interval          1
    retry_interval          1
    max_check_attempts      2
    check_period            7x24
    contacts                admin
    contact_groups          admin
    register                0
}

define service {
    name                    generic-service
    check_interval          1
    retry_interval          1
    max_check_attempts      2
    check_period            7x24
    contacts                admin
    contact_groups          admin
    register                0
}

define host {
    name                    host-notice-off
    notifications_enabled   0
    register                0
}

define host {
    name                    host-notice-on
    notifications_enabled   1
    notification_interval   10 
    notification_period     7x24
    notification_options    d,r
    register                0
}

define service {
    name                    service-notice-off
    notifications_enabled   0
    register                0
}

define service {
    name                    service-notice-on
    notifications_enabled   1
    notification_interval   10 
    notification_period     7x24
    notification_options    c,r
    register                0
}

define service {
    name                    icmp
    service_description     icmp
    check_command           check_icmp!500.000ms,80%!500.000ms,80%
    register                0
    use                     generic-service
}

/etc/nagios/config/hosts.cfg

# hosts.cfg

define host {
    host_name   bjyh-48-82
    alias       bjyh-48-82
    address     192.168.48.82
    use         generic-host,host-notice-off
}

define host {
    host_name   bjyh-48-83
    alias       bjyh-48-83
    address     192.168.48.83
    use         generic-host,host-notice-on
}

/etc/nagios/config/services.cfg

# services.cfg

define service {
    host_name               bjyh-48-82
    service_description     icmp
    use                     icmp,service-notice-off
}

define service {
    host_name               bjyh-48-83
    service_description     icmp
    use                     icmp,service-notice-on
}

/etc/nagios/config/hostgroups.cfg

# hostgroups.cfg

define hostgroup {
    hostgroup_name  bjyh
    alias           bjyh
    members         bjyh-48-82,bjyh-48-83 
}

dependencies

escalations

flpping

posted on 2015-04-03 12:12  北京涛子  阅读(403)  评论(0编辑  收藏  举报