由于zabbix服务是依赖LAMP或LNMP的,所以需要搭建依赖环境,这里选用LAMP,添加依赖环境和安装zabbix最好使用root用户或者sudo用户安装
1.1 MySQL的安装
在Ubuntu16.04下安装zabbix服务,需要自己事先独立安装MySQL,再安装其它,否则会导致无法使用zabbix,zabbix服务无法连接MySQL数据库;
安装MySQL可以根据业务使用的版本安装,尽量不使用Ubuntu16.04自带的MySQL5.7,这里使用MySQL5.5,MySQL的安装可以使用编译安装,也可以使用包管理工具安装,只有能正常使用即可
1.11 添加MySQL5.5的apt源
更改 /etc/apt/sources.list
文件的权限
sudo chmod +w /etc/apt/sources.list
在文件末尾插入MySQL5.5的apt源
deb http://archive.ubuntu.com/ubuntu trusty main universe
更新apt 源
sudo apt update
1.12 安装MySQL5.5
查看本机可用MySQL源的版本,不出意外可以看到MySQL5.5与MySQL5.7
apt-cache search mysql | grep mysql-server
安装aptitude,可以帮助自动安装一些依赖
sudo apt-get install aptitude -y
安装MySQL5.5
sudo aptitude install mysql-server-5.5
弹出选项,前两个选项输入n,后面的输入y,等待安装,弹出紫色的密码设置页面后设置密码和确认密码,等待MySQL5.5安装完毕即可
1.13 启动MySQL,添加进自启动
启动MySQL服务,输入设置的密码即可进入MySQL
启动服务: sudo service mysql start
停止服务:sudo service mysql stop
重启服务:sudo service mysql restart
将MySQL添加到自启动:systemctl enable mysql.service
MySQL安装完毕,现在可以安装其他的依赖与Zabbix
1.2 安装Zabbix需要的几个PHP模块
apt-get install php7.0-bcmath php7.0-xml php7.0-mbstring
1.3 下载存储库包和安装Zabbix
下载存储库包:
wget http://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-1+xenial_all.deb
使用dpkg安装包:
dpkg -i zabbix-release_4.0-1+xenial_all.deb
更新apt源:
sudo apt update
安装具有MySQL支持的服务端与PHP前端模块
apt-get install zabbix-server-mysql zabbix-frontend-php
安装客户端:
apt-get install zabbix-agent
安装中文语言包:
apt-get install language-pack-zh-hant language-pack-zh-hans
1.4 创建MySQL的zabbix用户、数据库,导入初始模板
进入数据库:
mysql -u root -p
输入密码进入
创建一个zabbix的数据库,用于存储数据:
CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
授予zabbix用户zabbix数据库的所有权限,zabbix用户会在此语句执行后创建:
GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@'%' IDENTIFIED BY '123456';
此语句授权zabbix用户对数据库zabbix的所有权限,zabbix用户的密码是123456
刷新权限表:
FLUSH PRIVILEGES;
退出数据库:
EXIT
退出MySQL后,导入初始模板,输入zabbix用户的密码完成导入(需要一点时间):
zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
1.5 修改配置文件
1.51 修改zabbix_server.conf
进入/etc/zabbix/zabbix_server.conf
,找到DBPassword=,取消注释并输入zabbix用户的密码,这里为123456;找到DBHost=localhost,取消其注释;保存并退出,如果你在之后连接不上MySQL,试着将DBSocket=注释并写入正确的socket文件路径;
一些可能用到的修改:
ListenPort=10051 :服务端监听的端口
SourceIP= :指定服务端的源IP,当服务端有多个网卡,存在多个IP时,使用此参数指定固定的IP作为与agent端通信的IP
LogType=file :指定记录日志的方式,共有system、file、console三种,system表示日志发往syslog,file表示使用指定的文件作为日志文件(Logfile参数所设置的),console表示将日志发往控制台,默认file即可
LogFile=/var/log/zabbix/zabbix_server.log :当LogType为file时,此为日志文件
LogFileSize=0 :默认为0,表示所有日志保存在一个文件中,如有设置值,则表示到达该值后日志滚动,如设置100,则日志大小到达100M时日志滚动
DebugLevel=3 :日志的详细程度,日志的级别
DBHost=localhost :zabbix数据库所在的服务器IP,由于安装的zabbix服务端和数据库在同一台机器上,此处默认localhost即可
DBName=zabbix :连接的数据库名称
DBUser=zabbix :连接的数据库用户
DBPassword=123456 :连接的数据库用户的密码
DBPort=3306 :连接的数据库服务监听的端口号
DBSocket= :连接的数据库服务的套接字文件,数据库和服务端在同一主机可不配置
1.52 修改PHP时区
进入文件/etc/zabbix/apache.conf
,找到php7.c下的php_value date.timezone Europe/Rome这一行,将其时区更改为亚洲/上海(Asia/Shanghai )并取消注释:
1.53 重启服务并将服务加入自启动
修改配置文件并保存后,重启各服务:
systemctl restart zabbix-server zabbix-agent apache2
查看是否启动成功:
netstat -ntlp
将zabbix-server zabbix-agent apache2 服务加入自启动:
systemctl enable zabbix-server zabbix-agent apache2
1.6 网页验证安装并进入zabbix仪表板
浏览器输入你的服务器IP地址加/zabbix/ :我这里是192.168.200.118/zabbix/
点击下一步:
保证全部都是OK后,点击下一步,否则需要检查安装的依赖或安装是否出错:
输入zabbix用户的密码,如果更改过MySQL的端口,将0改为该端口,点击下一步:
可输入zabbix仪表板的名称,如XX公司zabbix监控,点击下一步:
检查是否正确,正确后点下一步:
完成,配置的内容保存在下图提示的/usr/share/zabbix/conf/zabbix.conf.php文件中,可查看修改:
Username输入Admin,Password输入zabbix,点击登录:
登录之后可以看到是一个全英文的面板,点击右上角小人,进入设置显示语言:
点击下拉,选择语言并更新:
还可以在此页面选择主题:
退出浏览器或者退出仪表板后,想进入zabbix仪表板,在浏览器输入:IP地址/zabbix/index.php
来登录或进入仪表板
就此,zabbix服务的第一步便完成了,有这一步的成功才有之后的各种功能的应用