Zabbix安装与配置(二)

2023年 7月 15日 57.5k 0

参考 zabbix概述http://www.linuxea.com/index.php/archives/896.html

Zabbix进程描述:

Poller:此进程可能会被启动多个,应对更多请求

Httppoller:监控web页面专用poller

Discoverer:发现进程 占用资源较大

Alerter:警报工作

Housekeeper:指明数据保存时间,清理数据

Watchdog:监控主机进程是否关闭,并激活

Escalator:报警生成器

Timer:时间,计时器

Nodewatchel:监控节点

Pinger:ping操作监控节点是否在线的独特机制

Db_config_syncer:同步配置,分布式场景

Db_data_syncer: 同步时间,分布式场景

 

 

安装和部署:

在安装zabbix之前,需要部署database,在部署lap平台

Hardware Examples官方说明:

20台机器:PII350MHZ+256MB+sqlite

500台:AMD Athion3200+2GB+mysqlinnodb

小于1000台:Intel Core 6300 +4GB+RAUD 10 Mysql innodb or postgressql

小于10000台:xeon 2xcpu+8GB +Fast RAID 10 Mysql innodb or postgressql

 

Zabbix产生的数据主要由四部分组成:

1,  配置数据

2,  历史数据:50bytes

3,  历史趋势数据 :128bytes

4,  事件数据:130bytes

Zabbix支持众多数据库,一般而言预留多少存储数据,每一次的数据收集有 50字节,历史趋势数据128字节,事件数据130字节,假设5分钟收集一次,保存时间,相乘计算出存储数据的预留空间

 

1,安装mysql

下载mariadb-5.5.44.tar.gz

[root@[node108] ~]# yum groupinstall"Development Tools" "Server Platform Development" –y

[root@[node108] ~]#yum   -y install   cmake

[root@[node108] ~]# groupadd -r -g 306mysql

[root@[node108] ~]# useradd -r -g 306 -u306 mysql

[root@[node108] ~]# cd mariadb-5.5.44

[root@[node108] ~]# tar xf mariadb-5.5.44.tar.gz

[root@[node108] ~]# cd mariadb-5.5.44

[root@[node108] ~]# cmake  

-DCMAKE_INSTALL_PREFIX=/usr/local/Nmariadb-5.5.44

-DMYSQL_DATADIR=/mydata/data

-DSYSCONFDIR=/etc

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_READLINE=1

-DWITH_SSL=system

-DWITH_ZLIB=system

-DWITH_LIBWRAP=0

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock

-DDEFAULT_CHARSET=utf8

-DDEFAULT_COLLATION=utf8_general_ci

[root@[node108] ~]# make

[root@[node108] ~]# make install

[root@[node108] ~]#mkdir  /mydata

[root@[node108] mariadb-5.5.44]# cd/usr/local/ Nmariadb-5.5.44/

[root@[node108] Nmariadb-5.5.44]#scripts/mysql_install_db --user=mysql --datadir=/mydata

[root@[node108] Nmariadb-5.5.44]# cpsupport-files/my-large.cnf /etc/mysql/my.cnf

[root@[node108] Nmariadb-5.5.44]# vim/etc/mysql/my.cnf

在[mysqld]里面添加如下

datadir =/mydata/data   安装目录指定

innodb_file_per_table= NO

skip_name_resolve =NO     跳过名称解析的

[root@[node108] Nmariadb-5.5.44]# cpsupport-files/mysql.server /etc/rc.d/init.d/mysqld

[root@[node108] Nmariadb-5.5.44]# chmod +x/etc/rc.d/init.d/mysqld

[root@[node108] Nmariadb-5.5.44]# chkconfig--add mysqld

[root@[node108] Nmariadb-5.5.44]# chkconfigmysqld on        

[root@[node108] Nmariadb-5.5.44]# servicemysqld start

Starting MySQL.......                                      [  OK  ]

[root@[node108] Nmariadb-5.5.44]# ss -tlp|grep :mysql

LISTEN    0      50                      *:mysql                    *:*        users:(("mysqld",43871,14))

[root@[node108] Nmariadb-5.5.44]#

给root用户添加密码,并且删除用户

[root@localhostmysql]# /usr/local/mysql/bin/mysql_secure_installation

[root@[node108] profile.d]# vim/etc/profile.d/mysqld.sh

exportPATH=/usr/local/Nmariadb-5.5.44/bin/:$PATH

[root@[node108] profile.d]# ./etc/profile.d/mysqld.sh

[root@[node108] profile.d]# mysql

Welcome to the MariaDB monitor.  Commands end with ; or g.

Your MariaDB connection id is 3

Server version: 5.5.44-MariaDB-log Sourcedistribution

 

Copyright (c) 2000, 2015, Oracle, MariaDBCorporation Ab and others.

 

Type 'help;' or 'h' for help. Type 'c' toclear the current input statement.

 

创建数据库zabbix

MariaDB [(none)]> CREATE DATABASE zabbixCHARACTER SET utf8;

Query OK, 1 row affected (0.00 sec)

创建zbuser用户,授权此用用户可以通过172.16.x.x访问zabbix库,密码zbuser

请注意:这里由于是作用在一台主机,所有授权是localhost,如果不是同一个主机授权的可能是主机名

 

MariaDB [(none)]> GRANT ALL on zabbix.*TO 'zbuser'@'172.16.%.%' IDENTIFIED BY 'zbuser';

Query OK, 0 rows affected (0.01 sec)

 

MariaDB [(none)]> GRANT ALL on zabbix.*TO 'zbuser'@'localhost' IDENTIFIED BY 'zbuser';

Query OK, 0 rows affected (0.00 sec)

 

MariaDB [(none)]> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.00 sec)

 

MariaDB [(none)]> q

Bye

[root@[node108] ~]#

使用本机测试下授权

[root@[node108] ~]# mysql -uzbuser-h172.16.249.22 -p

Enter password:

Welcome to the MariaDB monitor.  Commands end with ; or g.

Your MariaDB connection id is 5

Server version: 5.5.44-MariaDB-log Sourcedistribution

 

Copyright (c) 2000, 2015, Oracle, MariaDBCorporation Ab and others.

 

Type 'help;' or 'h' for help. Type 'c' toclear the current input statement.

 

MariaDB [(none)]>q

Bye

 

2,下载zabbix安装

指定官方yum源,www.zabbix.com

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

下载zabbix-release-2.4-1.e16.noarch.rpm包,就会自动创建本地yum源

如果不装把链接也到repo中即可

 

编译安装server和agent,并支持将数据放入mysql数据中,可使用类似如下配置命令:

./configure --enable-server ---enable-agent  --with-mysql   --enable-ipv6   --with-net-snmp   --with-libcurl   --with-ssh2

如果仅安装server,并支持将数据库放入mysql数据库中,可使用类似如下配置命令:

./configure --enable-server  --with-mysql    --with-net-snmp     --with-libcurl

如果仅安装proxy,并支持将数据放入mysql数据库中,可使用类似如下配置命令:

./configure   --profix=/usr    --enable-proxy   --with-net-snmp   --with-mysql     --with-ssh2

如果仅安装agent,可使用类似如下配置命令:

./configure --enable-agent

而后编译安装zabbix即可:

#make

#make install

 

 

 

服务端安装:

[root@[node108] zabbix-2.4.5]yum installzabbix-server-2.4.5-1.el6.x86_64.rpmzabbix-server-mysql-2.4.5-1.el6.x86_64.rpm zabbix-get-2.4.5-1.el6.x86_64.rpm zabbix-2.4.5-1.el6.x86_64.rpmzabbix-web-2.4.5-1.el6.noarch.rpm zabbix-web-mysql-2.4.5-1.el6.noarch.rpmzabbix-agent-2.4.5-1.el6.x86_64.rpm zabbix-sender-2.4.5-1.el6.x86_64.rpm

 

 

在/etc/httpd/conf.d目录下由zabbix.conf文件,所以每次配置完成后必须重载httpd

启动zabbix之前需要导入数据到mysql

[root@[node108] zabbix]# cd  /usr/share/doc/zabbix-server-mysql-2.4.5/ create/

[root@[node108] create]#ls

data.sql images.sql  schema.sql

导入顺序从右到左

[root@localhost create]# mysql zabbix-uroot < schema.sql

[root@localhost create]# mysql zabbix-uroot < images.sql

[root@localhost create]# mysql zabbix -uroot< data.sql

 

 

配置文件:

LogFileSize=0  日志滚动选项,0为不滚动

默认为Debuglevel=3级别

DBHost=localhost 指定数据库

DBUser=zbuser        用户

DBPassword=zbuser         密码

DBSocket=/tmp/mysql.sock sock位置

# StartPollers=5  进程启动5个

# StartDiscoverers=1启动发现

# StartTimers=1 计时器进程

# MaxHousekeeperDelete=500最多删除个数

# StartDBSyncers=4报警

# StartDBSyncers=4同步进程

# HistoryCacheSize=8M历史数据缓存

# TrendCacheSize=4M历史文本缓存

AlertScriptsPath=/usr/lib/zabbix/alertscripts 报警脚本存放路径

ExternalScripts=/usr/lib/zabbix/externalscripts外部脚本存放路径

# SSHKeyLocation= ssh监控

其他是proxy

[root@localhost zabbix]# servicezabbix-server start

Starting Zabbix server:                                    [  OK  ]

[root@localhost zabbix]# ss -tnl |grep:10051

LISTEN    0      128                      :::10051                   :::*    

LISTEN    0      128                       *:10051                    *:*    

[root@localhost zabbix]#ss  -tnlp可以看到zabbix启动了很多进程

在浏览器中输入ip地址/zabbix即可看到安装界面

在下一步之前需要修改时区

[root@localhost zabbix]# vim /etc/php.ini

date.timezone = Asia/Shanghai

Reloading httpd:

[root@localhost zabbix]# service httpdrestart

Stopping httpd:                                           [  OK  ]

Starting httpd:                                            [  OK  ]

[root@localhost zabbix]#

如果这里报错如下

Error connecting to database: Can't connectto local MySQL server through socket '/var/lib/mysql/mysql.sock

可su 到mysql用户下

[root@localhost mysql]# su mysql

bash-4.1$ ln -s /tmp/mysql.sock/var/lib/mysql/mysql.sock

 

而后下一步

默认管理员账户密码:admin   zabbix

让zabbix监控自己,包已经安装过了

[root@localhost mysql]# vim/etc/zabbix/zabbix_agentd.conf

授权IP地址

Server=127.0.0.1,172.16.249.22

主动发送server   ip(如果监控的是自己,127.0.0.1是不可以去掉的)

ServerActive=127.0.0.1,172.16.249.22

自动联系,推送数据,这里的hostname必须全局唯一

Hostname=Zabbix server

[root@localhost mysql]# servicezabbix-agent start

Starting Zabbix agent:                                     [  OK  ]

[root@localhost mysql]#

 

 

 

添加一台主机监控

安装以下包

[root@PC1 zabbix-2.4.5]# yum installzabbix-2.4.5-1.el6.x86_64.rpm zabbix-agent-2.4.5-1.el6.x86_64.rpmzabbix-sender-2.4.5-1.el6.x86_64.rpm

修改配置文件

[root@PC1 zabbix-2.4.5]# cp/etc/zabbix/zabbix_agentd.conf{,.bak}

[root@PC1 zabbix-2.4.5]# vim/etc/zabbix/zabbix_agentd.conf

ServerActive=172.16.249.22  指向zabbix监控主机

Hostname=PC1                           设置主机名

Server=172.16.249.22              指向zabbix监控主机

[root@PC1 zabbix-2.4.5]# servicezabbix-agent start

Starting Zabbix agent:                                     [  OK  ]

[root@PC1 zabbix-2.4.5]#

 

PS:如果这里有iptables,这里需要放行zabbix

在web_gui界面添加主机

Templates:模板

Macros:主机宏,一次修改多次有效的哟

Host inventory:资产清单

 

这里已经定义完毕!

如何定义详细情况,下章在看

相关文章

对接alertmanager创建钉钉卡片(1)
手把手教你搭建OpenFalcon监控系统
无需任何魔法即可使用 Ansible 的神奇变量“hostvars”
openobseve HA本地单集群模式
基于k8s上loggie/vector/openobserve日志收集
openobseve单节点和查询语法

发布评论