runningo 2020-05-01
@准备工作:
1.对于要求被监控的网站,将会安装zabbix-agent端
2.zabbix-server端,用于接收一些流量数据,用于方便管理员进行分析异常流量。
3. 安装数据库服务,apache服务(zabbix网页支持apache服务),安装php环境 LAMP环境详看https://www.cnblogs.com/smallpo1nt/p/12642473.html
一、zabbix-server部署:
1.安装包问题排查
$ rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm #出现警告密钥之类 key ID a14fe591: NOKEY即表明成功安装 $ yum -y install mariadb-server httpd php #安装mariadb-server httpd php基本服务 $ yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent 安装zabbix服务器,前端,代理服务 #当出现 No more mirrors to try.此时进行换源。 $ vim /etc/yum.repos.d/zabbix.repo-------------------------------------------------------------------------------------------------------- [zabbix] #将文件中阿里云部分的红色内容进行替换 name=Zabbix Official Repository - $basearch baseurl=https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/$basearch/ #阿里云 enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591 [zabbix-non-supported] name=Zabbix Official Repository non-supported - $basearch baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/$basearch/ #阿里云 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX gpgcheck=1 ~ ~----------------------------------------------------------------------------------------------------- $ yum clean all $ yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent #安装zabbix服务器,前端,代理服务
2.配置基本环境:
$ vim /etc/my.cnf.d/server.cnf #编辑数据库默认配置文件 ------ [mysqld] log-bin = master-log #开启二进制日志 skip_name_resolve = ON #跳过主机名解析 innodb_file_per_table = ON -------
3.创用户导入数据库
$mysql -uroot -p #登录安装配置好的数据库 >create database zabbix character set utf8 collate utf8_bin; >grant all privileges on zabbix.* to identified by ‘password‘; #创建zabbix数据库本地登录 添加账户zabbix密码为password >exit; $rpm -ql zabbix-server-mysql #查看create.sql.gz的真实位置 $zcat /usr/share/doc/zabbix-server-mysql-4.0.20/create.sql.gz | mysql -uzabbix -p zabbix #输入密码password后将执行导入数据库中,可切换zabbix数据库中是否已导入表中
4.配置zabbix-server相关内容
$ vi /etc/zabbix/zabbix_server.conf DBHost=127.0.0.1 #指定zabbix数据库的所在地 DBPassword=password #其余默认配置即可 $ ss -tnl |grep -w 10051 查看10051端口是否被监听 #修改httpd下的zabbix配置文件的时区 $ vi /etc/httpd/conf.d/zabbix.conf php_value date.timezone Asia/shanghai #修改配置文件中的时区 $ systemctl restart httpd 重启服务 $ ss -tnl |grep -w 80 检查监听端口
5.web进行安装
访问http://ip/zabbix将默认跳转安装页面进行配置,理论上正常情况直接在password上属于密码(当host为远端i数据库时设置远端ip,若配置是本地不需要修改)其余保持默认。最后出现
Congratulations! You have successfully installed Zabbix frontend.
Configuration file "/etc/zabbix/web/zabbix.conf.php" created.
即表示安装成功,可以开始访问了,默认账户密码为Admin,zabbix
二、zabbix-agent部署:
$ rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm $ yum -y install zabbix-agent zabbix-sender #安装zabbix客户端 $ vim /etc/zabbix/zabbix_agentd.conf #修改Server和ServerActive的值为zabbix的服务端ip地址 Server=11.11.11.123 ServerActive=11.11.11.123 #修改hostname(未来在web界面创建监控主机时所需要的hostname名字就需要一一对应) Hostname=ceshi.com #启动客户端并检测10050端口是否被监听,被监听表示服务地区启动成功 $systemctl start zabbix-agent.service11 $ss -tnl |grep -w 10050
三、尝试监控第一台服务器:
zabbix-agent端的配置
$ free | awk ‘/^Mem:/ {print $3}‘ #自定义key的监控,提取出内存的使用 $ cd /etc/zabbix/zabbix_agentd.d/ $ touch exe.conf UserParameter=memory.used, free | awk ‘/^Mem:/ {print $3}‘ $ vim /etc/zabbix/zabbix_agentd.conf Include=/etc/zabbix/zabbix_agentd.d/*.conf 8 # 修改“Option: Include”选项中的内容,其作用为是zabbix_agentd调用zabbix_agentd.conf.d路径下的conf文件 9 UnsafeUserParameters=1 10 $ systemctl restart zabbix-agent
zabbix-server端的配置:
$ yum -y install zabbix-get #用于查看接收反馈数据 $ zabbix_get -s 2**.1**.164.2 -p 10050 -k "memory.used" #命令格式:zabbix_get -s ip地址 -p 客户端 zabbix端口 -k "key值" 获得一串数字即可表明成功接收 $ iptables -L $ iptables -F #在服务端执行这两条命令执行成功后即可去web界面创建ithem对象
agent-server的 web端配置:
登录server页面,Configuration-Hosts-Host-Templates
Host name 此处与zabbix_agentd.conf中配置内容一致
Agent intertaces:客户端ip connect to: IP 其余自定义看需求
点击Apply
在下方监控列表中找到刚定义的监控服务器-ithems-Create ithem-
Name:memory.used [填写键值名]
Type:Zabbix agent(active)[监控类型]
Key: memory.used [填写键值名]
Units:K
其余默认即可
部署完成