目录
zabbix部署
安装源
[root@server1 zabbix]# cd /etc/yum.repos.d/
[root@server1 yum.repos.d]# vim zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/$basearch/
enabled=1
gpgcheck=0
[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/$basearch/frontend
enabled=1
gpgcheck=0
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgcheck=0
安装server和agent
[root@server1 yum.repos.d]# yum install zabbix-server-mysql zabbix-agent
安装前端
[root@server1 ~]# yum install -y centos-release-scl-2-3.el7.centos.noarch.rpm centos-release-scl-rh-2-3.el7.centos.noarch.rpm
[root@server1 ~]# yum install zabbix-web-mysql-scl zabbix-apache-conf-scl
安装mysql数据库并初始化
[root@server1 ~]# tar xf mysql-5.7.33-1.el7.x86_64.rpm-bundle.tar
[root@server1 ~]# yum install -y mysql-community-client-5.7.33-1.el7.x86_64.rpm mysql-community-common-5.7.33-1.el7.x86_64.rpm mysql-community-libs-5.7.33-1.el7.x86_64.rpm mysql-community-libs-compat-5.7.33-1.el7.x86_64.rpm mysql-community-server-5.7.33-1.el7.x86_64.rpm
[root@server1 ~]# systemctl enable --now mysqld
[root@server1 ~]# grep 'temporary password' /var/log/mysqld.log
[root@server1 ~]# mysql_secure_installation
创建zabbix数据库
[root@server1 ~]# mysql -p
mysql> create user zabbix@localhost identified by 'Westos+007';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;
导入数据
[root@server1 ~]# zcat /usr/share/doc/zabbix-server-mysql-5.0.38/create.sql.gz | mysql -uzabbix -pWestos+007 zabbix
导入后再禁用数据库参数
[root@server1 ~]# mysql -p
mysql> set global log_bin_trust_function_creators = 0;
配置zabbix server(修改数据库密码)、zabbix前端(修改时区)
[root@server1 ~]# vim /etc/zabbix/zabbix_server.conf
DBPassword=Westos+007
[root@server1 zabbix]# vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai
启动服务
[root@server1 zabbix]# systemctl enable --now zabbix-server zabbix-agent httpd rh-php72-php-fpm
访问192.168.81.15/zabbix
、
登录前端的用户密码是
Admin/zabbix
修改字体文件
cp simkai.ttf /usr/share/zabbix/assets/fonts
cd /usr/share/zabbix/assets/fonts
rm -f graphfont.ttf
ln -s simkai.ttf graphfont.ttf
添加agent
从server1拷贝
[root@server1 yum.repos.d]# scp zabbix.repo server2:/etc/yum.repos.d/
[root@server2 yum.repos.d]# yum install -y zabbix-agent
[root@server2 ~]# vim /etc/zabbix/zabbix_agentd.conf
...
Server=192.168.81.15 //监控机的IP
ServerActive=192.168.81.15
Hostname=server2
[root@server2 zabbix]# systemctl enable --now zabbix-agent.service
变为绿色表示添加成功
自动发现
[root@server1 yum.repos.d]# scp zabbix.repo server3:/etc/yum.repos.d/
[root@server3 yum.repos.d]# yum install -y zabbix-agent
[root@server3 ~]# vim /etc/zabbix/zabbix_agentd.conf
...
Server=192.168.81.15
ServerActive=192.168.81.15
Hostname=server3
[root@server3 zabbix]# systemctl enable --now zabbix-agent.service
server端配置
选择发现动作,并激活
选择自动发现,修改实际的网络地址段,并激活
自动注册
先删除server3
停用自动发现规则
创建自动注册动作
agent端重启服务
[root@server3 ~]# systemctl restart zabbix-agent.service
zabbix api
获取token
curl -s -X POST http://192.168.81.15/zabbix/api_jsonrpc.php -H 'Content-Type: application/json-rpc' -d '
{
"jsonrpc": "2.0",
"method": "user.login",
"params": {
"user": "Admin",
"password": "zabbix"
},
"id": 1,
"auth": null
}' | python -m json.tool
token值为bb790376388f6576074d74078df76511
检索主机
curl -s -X POST http://192.168.81.15/zabbix/api_jsonrpc.php -H 'Content-Type: application/json-rpc' -d '
{
"jsonrpc": "2.0",
"method": "host.get",
"params": {
"output": [
"hostid",
"host"
],
"selectInterfaces": [
"interfaceid",
"ip"
]
},
"id": 2,
"auth": "bb790376388f6576074d74078df76511"
}' | python -m json.tool
获取的主机列表
删除主机
curl -s -X POST http://192.168.81.15/zabbix/api_jsonrpc.php -H 'Content-Type: application/json-rpc' -d '
{
"jsonrpc": "2.0",
"method": "host.delete",
"params": [
"10449"
],
"id": 2,
"auth": "bb790376388f6576074d74078df76511"
}' | python -m json.tool
删除server3
创建主机
curl -s -X POST http://192.168.81.15/zabbix/api_jsonrpc.php -H 'Content-Type: application/json-rpc' -d '
{
"jsonrpc": "2.0",
"method": "host.create",
"params": {
"host": "server3",
"interfaces": [
{
"type": 1,
"main": 1,
"useip": 1,
"ip": "192.168.81.17",
"dns": "",
"port": "10050"
}
],
"groups": [
{
"groupid": "2"
}
],
"tags": [
{
"tag": "Host name",
"value": "server3"
}
],
"templates": [
{
"templateid": "10001"
}
]
},
"id": 2,
"auth": "bb790376388f6576074d74078df76511"
}' | python -m json.tool
添加server3