Linux-Zabbix

Posted 90500042陈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux-Zabbix相关的知识,希望对你有一定的参考价值。

 

 

 

###############################安装########################################

安装部分我写了文档,可能不是很完善 文档如下→→

 

[root@db01 ~]# cd /server/tools
[root@db01 tools]# wget -q http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm


[root@db01 tools]# rpm -ivh zabbix-release-2.4-1.el6.noarch.rpm 
warning: zabbix-release-2.4-1.el6.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID 79ea5ed4: NOKEY
Preparing...                ########################################### [100%]
   1:zabbix-release         ########################################### [100%]

[root@db01 tools]# sed -i \'s#keepcache=1#keepcache=0#g\' /etc/yum.conf
[root@db01 tools]# grep keepcache /etc/yum.conf
keepcache=0


yum -y install zabbix zabbix-server zabbix-server-mysql

yum -y install zabbix-web zabbix-web-mysql

yum -y install zabbix-agent 

yum -y install mysql-server mysql #

yum -y install zabbix-get 

\\cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
vi /etc/my.cnf

character-set-server = utf8

init-connect = \'SET NAMES utf8\'

collation-server = utf8_general_ci

character-set-server = utf8
init-connect = \'SET NAMES utf8\'
collation-server = utf8_general_ci

/etc/init.d/mysqld start
netstat -lntup|grep mysql
 

mysql -e \'create database zabbix character set utf8 collate utf8_bin;\'

mysql -e "grant all on zabbix.* to zabbix@localhost identified by \'zabbix\';"


[root@zabbix-202 tools]# cd /usr/share/doc/zabbix-server-mysql-2.4.8/create/

mysql zabbix<schema.sql
mysql zabbix<images.sql
mysql zabbix<data.sql
mysqladmin -uroot password 123456





sed -i \'s#\\# php_value date.timezone Europe/Riga#php_value date.timezone Asia/Shanghai#g\' /etc/httpd/conf.d/zabbix.conf

root@db01 create]# sed -i \'s#\\# php_value date.timezone Europe/Riga#php_value date.timezone Asia/Shanghai#g\' /etc/httpd/conf.d/zabbix.conf


root@db01 create]# grep Shanghai /etc/httpd/conf.d/zabbix.conf
        php_value date.timezone Asia/Shanghai

        
1  初始化zabbix

root@db01 create]# cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.oldboy.ori

root@db01 create]# sed -i \'s@# DBPassword=@DBPassword=zabbix@g\' /etc/zabbix/zabbix_server.conf

[root@db01 create]# grep DBPassword= /etc/zabbix/zabbix_server.conf


[root@db01 create]# sed -i \'s@# DBHost=localhost@DBHost=localhost@g\' /etc/zabbix/zabbix_server.conf



#grep DBHost= /etc/zabbix/zabbix_server.conf DBHost=localhost
这一步有报错  但是看似没什么影响        

[root@db01 create]#  /etc/init.d/zabbix-server start
Starting Zabbix server:                                    [  OK  ]


[root@db01 create]# lsof -i :10051|wc -l
55



[root@db01 create]# /etc/init.d/httpd start
Starting httpd: httpd: Could not reliably determine the server\'s fully qualified domain name, using 172.16.1.51 for ServerName
                                                           [  OK  ]

                                                           
                                                           
http://10.0.0.51/zabbix/setup.php




#####################监控端



wget -q http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm


rpm -ivh zabbix-release-2.4-1.el6.noarch.rpm

sed -i \'s#keepcache=1#keepcache=0#g\' /etc/yum.conf

grep keepcache /etc/yum.conf

yum -y install zabbix-agent
yum -y install zabbix-get 

grep Server= /etc/zabbix/zabbix_agentd.conf
sed -i \'s#Server=127.0.0.1#Server=10.0.0.202#g\' /etc/zabbix/zabbix_agentd.conf
grep Server= /etc/zabbix/zabbix_agentd.conf

/etc/init.d/zabbix-agent start

tailf /var/log/zabbix/zabbix_agentd.log
netstat -tunlp|grep 10050
                                                           
#检查通信

zabbix_get -s 10.0.0.203 -p10050 -k "system.hostname"

[root@zabbix-202 create]# zabbix_get -s 10.0.0.203 -p10050 -k "system.hostname"
zabbix-agent-203
View Code

 

##########################################################################

1第一个里程碑

测试发邮件的功能

系统环境centos 6.9

#配置发邮件
/etc/mail.rc中追加
set bsdcompat
set from=c4kaichen@163.com
set smtp=smtp.163.com
set smtp-auth-user=c4kaichen
set smtp-auth-password=####此处为授权码,需要在邮件服务端查看
set smtp-auth=login
"/etc/mail.rc" 71L, 2038C written 

配置完毕后测试发邮件的功能

 [root@zabbix-202 tools]# mail -s "check_info" 312051952@qq.com </etc/passwd

如果在邮箱内收到邮件的话说明邮件功能测试成功

 

2第二个里程碑 撰写发送邮件脚本sendmail.sh

#!/bin/sh
#!/bin/bash
messages=`echo $3 | tr \'\\r\\n\' \'\\n\'`
subject=`echo $2 | tr \'\\r\\n\' \'\\n\'`
echo "${messages}" | mail -s "${subject}" $1 >>/tmp/sendmail.log 2>&1
View Code

授权:

[root@zabbix-202 scripts]# chmod +x sendmail.sh
[root@zabbix-202 scripts]# chown zabbix.zabbix sendmail.sh

进行测试:

[root@zabbix-202 scripts]# sh sendmail.sh \'312051952@qq.com\' \'2103\' \'210301\'

如果邮箱收到该脚本说明部署完毕

 

3第三个里程碑  zabbix服务端部署

 在管理--示警媒介类型--类型为脚本,添加sendmail

 

 

创建动作:Action-mail

动作内容信息:

Action-Email
##############################
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
################################
告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}
######################################

恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
########################################
告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}
View Code

条件信息:

 

 

 操作:

 

 

 在用户配置下进行调整:

 

 

 许可权不要动;

 

 ######################################################################

agent部署

 如果客户端日志当中出现 [root@zabbix-agent-203 ~]# cat /var/log/zabbix/zabbix_agentd.log

active check configuration update from [127.0.0.1:10051] started to fail (cannot connect to [[127.0.0.1]:10051]: [111] Connection refused)

需要对配置文件进行修改:

进行修改此处后,重启客户端就不会报错了

客户配置文件附录:

# This is a config file for the Zabbix agent daemon (Unix)
# To get more information about Zabbix, visit http://www.zabbix.com

############ GENERAL PARAMETERS #################

### Option: PidFile
#    Name of PID file.
#
# Mandatory: no
# Default:
# PidFile=/tmp/zabbix_agentd.pid

PidFile=/var/run/zabbix/zabbix_agentd.pid

### Option: LogFile
#    Name of log file.
#    If not set, syslog is used.
#
# Mandatory: no
# Default:
# LogFile=

LogFile=/var/log/zabbix/zabbix_agentd.log

### Option: LogFileSize
#    Maximum size of log file in MB.
#    0 - disable automatic log rotation.
#
# Mandatory: no
# Range: 0-1024
# Default:
# LogFileSize=1

LogFileSize=0

### Option: DebugLevel
#    Specifies debug level
#    0 - basic information about starting and stopping of Zabbix processes
#    1 - critical information
#    2 - error information
#    3 - warnings
#    4 - for debugging (produces lots of information)
#
# Mandatory: no
# Range: 0-4
# Default:
# DebugLevel=3

### Option: SourceIP
#    Source IP address for outgoing connections.
#
# Mandatory: no
# Default:
# SourceIP=

### Option: EnableRemoteCommands
#    Whether remote commands from Zabbix server are allowed.
#    0 - not allowed
#    1 - allowed
#
# Mandatory: no
# Default:
# EnableRemoteCommands=0

### Option: LogRemoteCommands
#    Enable logging of executed shell commands as warnings.
#    0 - disabled
#    1 - enabled
#
# Mandatory: no
# Default:
# LogRemoteCommands=0

##### Passive checks related

### Option: Server
#    List of comma delimited IP addresses (or hostnames) of Zabbix servers.
#    Incoming connections will be accepted only from the hosts listed here.
#    If IPv6 support is enabled then \'127.0.0.1\', \'::127.0.0.1\', \'::ffff:127.0.0.1\' are treated equally.
#
# Mandatory: no
# Default:
# Server=

Server=10.0.0.202

### Option: ListenPort
#    Agent will listen on this port for connections from the server.
#
# Mandatory: no
# Range: 1024-32767
# Default:
# ListenPort=10050

### Option: ListenIP
#    List of comma delimited IP addresses that the agent should listen on.
#    First IP address is sent to Zabbix server if connecting to it to retrieve list of active checks.
#
# Mandatory: no
# Default:
# ListenIP=0.0.0.0

### Option: StartAgents
#    Number of pre-forked instances of zabbix_agentd that process passive checks.
#    If set to 0, disables passive checks and the agent will not listen on any TCP port.
#
# Mandatory: no
# Range: 0-100
# Default:
# StartAgents=3

##### Active checks related

### Option: ServerActive
#    List of comma delimited IP:port (or hostname:port) pairs of Zabbix servers for active checks.
#    If port is not specified, default port is used.
#    IPv6 addresses must be enclosed in square brackets if port for that host is specified.
#    If port is not specified, square brackets for IPv6 addresses are optional.
#    If this parameter is not specified, active checks are disabled.
#    Example: ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]
#
# Mandatory: no
# Default:
# ServerActive=

ServerActive=10.0.0.202

### Option: Hostname
#    Unique, case sensitive hostname.
#    Required for active checks and must match hostname as configured on the server.
#    Value is acquired from HostnameItem if undefined.
#
# Mandatory: no
# Default:
# Hostname=

Hostname=10.0.0.203

### Option: HostnameItem
#    Item used for generating Hostname if it is undefined. Ignored if Hostname is defined.
#    Does not support UserParameters or aliases.
#
# Mandatory: no
# Default:
# HostnameItem=system.hostname

### Option: HostMetadata
#    Optional parameter that defines host metadata.
#    Host metadata is used at host auto-registration process.
#    An agent will issue an error and not start if the value is over limit of 255 characters.
#    If not defined, value will be acquired from HostMetadataItem.
#
# Mandatory: no
# Range: 0-255 characters
# Default:
# HostMetadata=

### Option: HostMetadataItem
#    Optional parameter that defines an item used for getting host metadata.
#    Host metadata is used at host auto-registration process.
#    During an auto-registration request an agent will log a warning message if
#    the value returned by specified item is over limit of 255 characters.
#    This option is only used when HostMetadata is not defined.
#
# Mandatory: no
# Default:
# HostMetadataItem=

### Option: RefreshActiveChecks
#    How often list of active checks is refreshed, in seconds.
#
# Mandatory: no
# Range: 60-3600
# Default:
# RefreshActiveChecks=120

### Option: BufferSend
#    Do not keep data longer than N seconds in buffer.
#
# Mandatory: no
# Range: 1-3600
# Default:
# BufferSend=5

### Option: BufferSize
#    Maximum number of values in a memory buffer. The agent will send
#    all collected data to Zabbix Server or Proxy if the buffer is full.
#
# Mandatory: no
# Range: 2-65535
# Default:
# BufferSize=100

### Option: MaxLinesPerSecond
#    Maximum number of new lines the agent will send per second to Zabbix Server
#    or Proxy processing \'log\' and \'logrt\' active checks.
#    The provided value will be overridden by the parameter \'maxlines\',
#    provided in \'log\' or \'logrt\' item keys.
#
# Mandatory: no
# Range: 1-1000
# Default:
# MaxLinesPerSecond=100

############ ADVANCED PARAMETERS #################

### Option: Alias
#    Sets an alias for an item key. It can be used to substitute long and complex item key with a smaller and simpler one.
#    Multiple Alias parameters may be present. Multiple parameters with the same Alias key are not allowed.
#    Different Alias keys may reference the same item key.
#    For example, to retrieve the ID of user \'zabbix\':
#    Alias=zabbix.userid:vfs.file.regexp[/etc/passwd,^zabbix:.:([0-9]+),,,,\\1]
#    Now shorthand key zabbix.userid may be used to retrieve data.
#    Aliases can be used in HostMetadataItem but not in HostnameItem parameters.
#
# Mandatory: no
# Range:
# Default:

### Option: Timeout
#    Spend no more than Timeout seconds on processing
#
# Mandatory: no
# Range: 1-30
# Default:
# Timeout=3

### Option: AllowRoot
#    Allow the agent to run as \'root\'. If disabled and the agent is started by \'root\', the agent
#    will try to switch to the user specified by the User configuration option instead.
#    Has no effect if started under a regular user.
#    0 - do not allow
#    1 - allow
#
# Mandatory: no
# Default:
# AllowRoot=0

### Option: User
#    Drop privileges to a specific, existing user on the system.
#    Only has effect if run as \'root\' and AllowRoot is disabled.
#
# Mandatory: no
# Default:
# User=zabbix

### Option: Include
#    You may include individual files or all files in a directory in the configuration file.
#    Installing Zabbix will create include directory in /usr/local/etc, unless modified during the compile time.
#
# Mandatory: no
# Default:
# Include=

Include=/etc/zabbix/zabbix_agentd.d/

# Include=/usr/local/etc/zabbix_agentd.userparams.conf
# Include=/usr/local/etc/zabbix_agentd.conf.d/
# Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf

####### USER-DEFINED MONITORED PARAMETERS #######

### Option: UnsafeUserParameters
#    Allow all characters to be passed in arguments to user-defined parameters.
#    0 - do not allow
#    1 - allow
#
# Mandatory: no
# Range: 0-1
# Default:
# UnsafeUserParameters=0

### Option: UserParameter
#    User-defined parameter to monitor. There can be several user-defined parameters.
#    Format: UserParameter=<key>,<shell command>
#    See \'zabbix_agentd\' directory for examples.
#
# Mandatory: no
# Default:
# UserParameter=

####### LOADABLE MODULES #######

### Option: LoadModulePath
#    Full path to location of agent modules.
#    Default depends on compilation options.
#
# Mandatory: no
# Default:
# LoadModulePath=${libdir}/modules

### Option: LoadModule
#    Module to load at agent startup. Modules are used to extend functionality of the agent.
#    Format: LoadModule=<module.so>
#    The modules must be located in directory specified by LoadModulePath.
#    It is allowed to include multiple LoadModule parameters.
#
# Mandatory: no
# Default:
# LoadModule=
View Code

服务端配置文件附录:在配置文件当中参数叫DBuser & DBpassword比较关键

# This is a configuration file for Zabbix Server process
# To get more information about Zabbix,
# visit http://www.zabbix.com

############ GENERAL PARAMETERS #################

### Option: ListenPort
#    Listen port for trapper.
#
# Mandatory: no
# Range: 1024-32767
# Default:
# ListenPort=10051

### Option: SourceIP
#    Source IP address for outgoing connections.
#
# Mandatory: no
# Default:
# SourceIP=

### Option: LogFile
#    Name of log file.
#    If not set, syslog is used.
#
# Mandatory: no
# Default:
# LogFile=

LogFile=/var/log/zabbix/zabbix_server.log

### Option: LogFileSize
#    Maximum size of log file in MB.
#    0 - disable automatic log rotation.
#
# Mandatory: no
# Range: 0-1024
# Default:
# LogFileSize=1

LogFileSize=0

### Option: DebugLevel
#    Specifies debug level
#    0 - basic information about starting and stopping of Zabbix processes
#    1 - critical information
#    2 - error information
#    3 - warnings
#    4 - for debugging (produces lots of information)
#
# Mandatory: no
# Range: 0-4
# Default:
# DebugLevel=3

### Option: PidFile
#    Name of PID file.
#
# Mandatory: no
# Default:
# PidFile=/tmp/zabbix_server.pid

PidFile=/var/run/zabbix/zabbix_server.pid

### Option: DBHost
#    Database host name.
#    If set to localhost, socket is used for MySQL.
#    If set to empty string, socket is used for PostgreSQL.
#
# Mandatory: no
# Default:
DBHost=localhost

### Option: DBName
#    Database name.
#    For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored.
#
# Mandatory: yes
# Default:
# DBName=

DBName=zabbix

### Option: DBSchema
#    Schema name. Used for IBM DB2 and PostgreSQL.
#
# Mandatory: no
# Default:
# DBSchema=

### Option: DBUser
#    Database user. Ignored for SQLite.
#
# Mandatory: no
# Default:
# DBUser=

DBUser=zabbix

### Option: DBPassword
#    Database password. Ignored for SQLite.
#    Comment this line if no password is used.
#
# Mandatory: no
# Default:
DBPassword=zabbix

### Option: DBSocket
#    Path to MySQL socket.
#
# Mandatory: no
# Default:
# DBSocket=/tmp/mysql.sock

DBSocket=/var/lib/mysql/mysql.sock

### Option: DBPort
#    Database port when not using local socket. Ignored for SQLite.
#
# Mandatory: no
# Range: 1024-65535
# Default (for MySQL):
# DBPort=3306

############ ADVANCED PARAMETERS ################

### Option: StartPollers
#    Number of pre-forked instances of pollers.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartPollers=5

### Option: StartIPMIPollers
#    Number of pre-forked instances of IPMI pollers.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartIPMIPollers=0

### Option: StartPollersUnreachable
#    Number of pre-forked instances of pollers for unreachable hosts (including IPMI and Java).
#    At least one poller for unreachable hosts must be running if regular, IPMI or Java pollers
#    are started.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartPollersUnreachable=1

### Option: StartTrappers
#    Number of pre-forked instances of trappers.
#    Trappers accept incoming connections from Zabbix sender, active agents and active proxies.
#    At least one trapper process must be running to display server availability and view queue
#    in the frontend.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartTrappers=5

### Option: StartPingers
#    Number of pre-forked instances of ICMP pingers.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartPingers=1

### Option: StartDiscoverers
#    Number of pre-forked instances of discoverers.
#
# Mandatory: no
# Range: 0-250
# Default:
# StartDiscoverers=1

### Option: StartHTTPPollers
#    Number of pre-forked instances of HTTP pollers.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartHTTPPollers=1

### Option: StartTimers
#    Number of pre-forked instances of timers.
#    Timers process time-based trigger functions and maintenance periods.
#    Only the first timer process handles the maintenance periods.
#
#微信小程序代码片段

VSCode自定义代码片段——CSS选择器

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

VSCode自定义代码片段——.vue文件的模板

VSCode自定义代码片段6——CSS选择器