zabbix 安装指导手册

前言

   在安全监控领域有很多的开源监控软件,例如zabbix,nagios,open-falcon,prometheus等众多软件。这些软件各有各的特点,基本上都能够满足日常的运维工作需要。同时在大的互联网公司一般都会根据自己的实际业务需求进行定制的监控系统开发,例如open-falcon就是小米公司自己的开源的监控系统。而且,在集群规模达到一定的数量级之后,一套监控系统应该已经不能满足生产需要,通常都会有多套监控系统一起协作来完成日常监控工作。
   今天主要介绍的就是zabbix的安装和使用。接下来会向大家介绍,如何安装zabbix以及如何对zabbix进行初始化设置。

下载

   百度搜索zabbix,就可以进入到zabbix的官方网站。进入到下载目录,可以看到这里有很多的版本可以下载。

zabbix-download

   我们选择最新的版本进行下载,点击链接进入列表页。这里列举了非常多的下载项,并且提供了很多的版本。对于初学者来说,需要下载哪些内容,并不是容易确定下来,但是却可以通过这个列表了解到,如果想要完整的运行zabbix都需要依赖哪些模块。
   很幸运的是,zabbix提供一个非常好的安装方式,我们只下载箭头指向的那一个rpm安装包就可以。

zabbix-download2

   使用rpm命令安装一下下载的安装包。然后使用 rpm -ql zabbix-release 命令查看一下安装的文件。

[root@localhost ]# rpm -ql zabbix-release
/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
/etc/yum.repos.d/zabbix.repo
/usr/share/doc/zabbix-release-3.4
/usr/share/doc/zabbix-release-3.4/GPL

   我们看到安装了一个repo文件,这说明,我们接下来可以使用yum 来安装我们所需要的模块。
   接下来我们就开始准备安装zabbix了。安装开始之前,请先关闭掉SELinux,以及iptables。

安装Mariadb

   zabbix采集的数据需要存储在数据库中,同时zabbix 的成功运行也需要数据库的支持,所以我们需要先安装mysql数据库。

yum install mariadb mariadb-server

   修改mysql的配置文件,编辑 /etc/my.cnf.d/server.cnf。在server 模块下加入下面一些配置。具体配置的含义,可以查阅mysql的相关资料进行了解。

[server]
skip_name_resolve = ON
innodb_file_per_table = ON
innodb_buffer_pool_size = 256M
max_connections = 2000

# 启用二进制日志
log-bin = master-log

   数据库安装成功之后,可以执行一下mysql_secure_installation 来对数据库进行安装初始化。然后使用 systemctl start mariadb.service 来启动MySQL。

   接下来,我们在mysql中创建用于zabbix 使用的数据库。

 CREATE DATABASE zbxdb CHARACTER SET 'utf8';

 GRANT ALL PRIVILEGES ON zbxdb.* TO 'zbxuser'@'192.168.0.%' IDENTIFIED BY 'zbxpass';

 FLUSH PRIVILEGES;

安装zabbix 相关组件

   zabbix 是基于C/S架构的一款监控软件。同时提供了web端的监控界面。也就是说,在被监控主机上,agent端能够主动地向server端send数据,而server端也可以主动向agent端去get数据,因此我们需要安装下面一些基本组件。

 yum install zabbix-server-mysql zabbix-web zabbix-web-mysql zabbix-agent zabbix-get zabbix-sender

   使用rpm 命令 rpm -ql zabbix-server-mysql查看一下 zabbix-server-mysql 的安装文件。

... ...

/usr/share/doc/zabbix-server-mysql-3.4.5/create.sql.gz  

... ...

   将这个压缩包进行解压,我们可以使用head 命令来查看文件中内容。

[root@localhost ~]# gzip -d create.sql.gz 

[root@localhost ~]# head -20 create.sql 
CREATE TABLE `users` (
        `userid`                 bigint unsigned                           NOT NULL,
        `alias`                  varchar(100)    DEFAULT ''                NOT NULL,
        `name`                   varchar(100)    DEFAULT ''                NOT NULL,
        `surname`                varchar(100)    DEFAULT ''                NOT NULL,
        `passwd`                 char(32)        DEFAULT ''                NOT NULL,
        `url`                    varchar(255)    DEFAULT ''                NOT NULL,
        `autologin`              integer         DEFAULT '0'               NOT NULL,
        `autologout`             varchar(32)     DEFAULT '15m'             NOT NULL,
        `lang`                   varchar(5)      DEFAULT 'en_GB'           NOT NULL,
        `refresh`                varchar(32)     DEFAULT '30s'             NOT NULL,
        `type`                   integer         DEFAULT '1'               NOT NULL,
        `theme`                  varchar(128)    DEFAULT 'default'         NOT NULL,
        `attempt_failed`         integer         DEFAULT 0                 NOT NULL,
        `attempt_ip`             varchar(39)     DEFAULT ''                NOT NULL,
        `attempt_clock`          integer         DEFAULT 0                 NOT NULL,
        `rows_per_page`          integer         DEFAULT 50                NOT NULL,
        PRIMARY KEY (userid)
) ENGINE=InnoDB;
CREATE UNIQUE INDEX `users_1` ON `users` (`alias`); 

   可以看出这是zabbix的建表语句。所以我们直接在之前创建的数据库中创建zabbix运行所需要的数据库表就可以。

mysql -uzbxuser -h192.168.0.19 -pzbxpass  zbxdb < create.sql  

修改zabbix配置文件

   进入到 /etc/zabbix目录下,编辑zabbix-server.conf文件。将与数据库相关的内容都进行修改一下。


# 发起数据采集请求的主机ip地址
SourceIP=192.168.0.19

# 这一点很重要 需要根据创建数据库时指定的权限来指定
DBHost=192.168.0.19

DBName=zbxdb

DBUser=zbxuer

DBPassword=zbxpass

   可以通过相关的命令来查看 zabbix 的配置文件中一共有哪些配置,以便对zabbix有一个全面的了解。


[root@localhost zabbix]# grep -i "^###" zabbix_server.conf
############ GENERAL PARAMETERS #################
### Option: ListenPort
### Option: SourceIP
### Option: LogType
### Option: LogFile
### Option: LogFileSize
### Option: DebugLevel
### Option: PidFile
### Option: SocketDir
### Option: DBHost
### Option: DBName
### Option: DBSchema
### Option: DBUser
### Option: DBPassword
### Option: DBSocket
### Option: DBPort
### Option: HistoryStorageURL
### Option: HistoryStorageTypes
############ ADVANCED PARAMETERS ################
### Option: StartPollers
### Option: StartIPMIPollers
### Option: StartPreprocessors
### Option: StartPollersUnreachable
### Option: StartTrappers
### Option: StartPingers
### Option: StartDiscoverers
### Option: StartHTTPPollers
### Option: StartTimers
### Option: StartEscalators
### Option: StartAlerters
### Option: JavaGateway
### Option: JavaGatewayPort
### Option: StartJavaPollers
### Option: StartVMwareCollectors
### Option: VMwareFrequency
### Option: VMwarePerfFrequency
### Option: VMwareCacheSize
### Option: VMwareTimeout
### Option: SNMPTrapperFile
### Option: StartSNMPTrapper
### Option: ListenIP
### Option: HousekeepingFrequency
### Option: MaxHousekeeperDelete
### Option: CacheSize
### Option: CacheUpdateFrequency
### Option: StartDBSyncers
### Option: HistoryCacheSize
### Option: HistoryIndexCacheSize
### Option: TrendCacheSize
### Option: ValueCacheSize
### Option: Timeout
### Option: TrapperTimeout
### Option: UnreachablePeriod
### Option: UnavailableDelay
### Option: UnreachableDelay
### Option: AlertScriptsPath
### Option: ExternalScripts
### Option: FpingLocation
### Option: Fping6Location
### Option: SSHKeyLocation
### Option: LogSlowQueries
### Option: TmpDir
### Option: StartProxyPollers
### Option: ProxyConfigFrequency
### Option: ProxyDataFrequency
### Option: AllowRoot
### Option: User
### Option: Include
### Option: SSLCertLocation
### Option: SSLKeyLocation
### Option: SSLCALocation
####### LOADABLE MODULES #######
### Option: LoadModulePath
### Option: LoadModule
####### TLS-RELATED PARAMETERS #######
### Option: TLSCAFile
### Option: TLSCRLFile
### Option: TLSCertFile
### Option: TLSKeyFile

   接下来就可以直接启动zabbix,使用 systemctl start zabbix-server.service

   剩下的还有一个非常重要的关键点。通过rpm -ql zabbix-web命令可以查看到web界面的安装文件。我们需要对zabbix-web设置时区。我们可以在zabbix-web的配置文件中进行设定,/etc/httpd/conf.d/zabbix.conf,这样设置的时区仅仅对zabbix的应用有效。当然也可以在PHP的配置文件中进行设定,这样的话,对于所有的PHP程序都有效。我们就在php的配置文件/etc/php.ini中进行设置。

date.timezone = Asia/Shanghai 

初始化zabbix-web

   zabbix-web的运行需要http服务的支持。所以在安装zabbix的时候,如果没有安装httpd的话,会自动进行安装。所以我还需要启动httpd。

systemctl start httpd.service

   启动浏览器,在地址栏输入http://192.168.0.19/zabbix/就可以看到下面的界面。

zabbix-welcome

   接下来就是检查zabbix安装过程中的需要的检查项,尤其是时区,这里最容易出现问题。

zabbix-check

   然后就是这只zabbix数据库的相关内容,这里的设置一定要与zabbix的配置文件中数据库信息一致。

zabbix-db

   接下来就是zabbix服务的相关信息。然后一路安装就可以了。

zabbix-server-detials

pre-summary

install.

   这样就zabbix就安装成功了。接下来使用admin/zabbix 就可以成功登陆zabbix的web管理界面了。

dashboard

总结

   这里只是介绍了zabbix的安装。详细记录了安装过程中的每一步操作,以及应该注意的细节。可以将此博客作为zabbix的安装手册来进行使用。在以后的文章中,会介绍zabbix的详细使用。

转载于:https://blog.51cto.com/xiaoshuaigege/2056295

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
简介 提供关于当前Zabbix软件的常用信息。阅读本章节将为您选择使用Zabbix提供一些好的理由。 Zabbix 概念 解释了Zabbix中使用的术语,并且提供了Zabbix组件的详细信息。 安装 和 快速入门章节可以帮助您开始使用ZabbixZabbix 应用 是一个替代的方案,通过本章节,可以快速的使用Zabbix应用,并了解Zabbix应用是什么。 配置 是本手册中内容最多最重要的章节之一。它包含一些重要的建议,关于如何设置Zabbix来监控您的环境、如何从主机设置到获取必要的数据、如何查看数据、如何配置告警通知和在出现问题时执行远程命令等。 IT 服务 IT服务章节详细的说明了如何利用Zabbix提升监控环境的高稳定性。 Web 监控 可以帮助您学会怎么样去监控Web网站的可用性。 虚拟机监控提供了如何配置VMware虚拟机环境监控的方法。 维护, 正则表达式, 事件确认 and XML 导出/导入 这些章节进一步说明了如何全面的使用Zabbix软件的功能。 发现 功能包含网络设备自动发现的指令,主动监控的指令,文件系统自动发现的指令,网络接口自动发现的指令等。 分布式监控 可以使用Zabbix系统支撑更庞大更复杂的环境。 加密 功能可以实现Zabbix组件之间的通讯加密。 Web 界面 包含Zabbix Web界面使用的特定信息。 API 章节详细的说明了Zabbix API的使用。 详细的技术细节表包含在附录中。附录也包含常见问题的详细解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值