SourceURL:file:///home/student/Documents/zabbix.doc

  • zabbix服务器配置

1. 拷贝zabbix软件包到pubserver

#在此之前先从真机拷贝安装包

[root@server1 ~]# scp /linux-soft/s2/zzg/zabbix_soft/*.rpm 192.168.88.5:/root/

#然后拷贝到pubserver

[root@zabbixserver ~]# scp /linux-soft/s2/zzg/zabbix_soft/*.rpm 192.168.88.240:/var/ftp/rpms

  1.  编写剧本,通过pubserver,在zabbixserver上安装相应软件包

[root@pubserver zabbix]# vim 01_zabbixinstall.yml

---

- name: install zabbix

  hosts: zabbix

  tasks:

    - name: install zabbix    # 安装软件包

      yum:

        name:

          - zabbix-server-mysql

          - zabbix-web-mysql

          - zabbix-nginx-conf

          - zabbix-sql-scripts

          - zabbix-selinux-policy

          - zabbix-agent

          - mysql-server

          - langpacks-zh_CN

        state: present

[root@pubserver zabbix]# ansible-playbook 01_zabbixinstall.yml

3. 编写剧本,启动mysqld服务

[root@pubserver zabbix]# vim 02_start_mysqld.yml

---

- name: config mysqld

  hosts: zabbix

  tasks:

    - name: start mysqld      # 启动mysqld服务

      service:

        name: mysqld

        state: started

        enabled: yes

[root@pubserver zabbix]# ansible-playbook 02-start-mysqld.yml

4. 在zabbix上创建连接数据库的用户

[root@zabbixserver ~]# mysql

mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;

# 在binlog日志开启的情况下,打开函数生成器

mysql> set global log_bin_trust_function_creators = 1;

mysql> create user zabbix@localhost identified by 'zabbix';

mysql> grant all privileges on zabbix.* to zabbix@localhost;

mysql> quit;

5. 验证数据库配置,如果登陆不到数据库表示上一步配置不正确

[root@zabbixserver ~]# mysql -uzabbix -pzabbix -hlocalhost zabbix

mysql> quit;

6. 在数据库中创建表并导入数据

[root@zabbixserver ~]# cp /usr/share/zabbix-sql-scripts/mysql/server.sql.gz .

[root@zabbixserver ~]# gzip -d server.sql.gz

#比较慢

[root@zabbixserver ~]# mysql -uzabbix -pzabbix zabbix < server.sql

7. 修改zabbix_server配置文件,设置密码

[root@zabbixserver ~]# vim +129 /etc/zabbix/zabbix_server.conf

129: DBPassword=zabbix

8. 配修改zabbix_agent配置文件

[root@zabbixserver ~]# vim /etc/zabbix/zabbix_agentd.conf

182 Hostname=zabbixserver

9. 配置nginx展示zabbix

[root@zabbixserver ~]# vim /etc/nginx/conf.d/zabbix.conf

# 打开第2、3行的注释,结果如下所示:

server {

        listen          8080;

        server_name     example.com;

...以下省略...

10. ansible服务器使用剧本启动相关服务

[root@pubserver zabbix]# vim 03_start_zabbix.yml

---

- name: config zabbix

  hosts: zabbix

  tasks:

    - name: start service    # 循环启动多个服务

      service:

        name: "{{item}}"

        state: started

        enabled: yes

      loop:

        - zabbix-server

        - zabbix-agent

        - nginx

        - php-fpm

[root@pubserver zabbix]# ansible-playbook 03_start_zabbix.yml

  1. 访问zabbixserver的8080端口,进行初始化

浏览器操作:http://192.168.88.5:8080

Dafault language 选择中文(zh_CN)

——> 下一步

——> 下一步

用户:zabbix

密码:zabbix

——> 下一步

Zabbix主机名称:zabbixserver

Defualt time zone:(UTC+08:00)Asia/Shanghai

——> 下一步

——> 下一步

——> 完成

用户登录

用户名称:Admin

密码:zabbix

看数据操作:

配置-主机

监测-最新数据

四、配置zabbix监控web1服务器

1、在web1上安装agent

[root@pubserver zabbix]# vim 04_inst_agent.yml

---

- name: install agent

  hosts: webservers

  tasks:

    - name: install agent    # 安装agent

      yum:

        name: zabbix-agent

        state: present

[root@pubserver zabbix]# ansible-playbook 04_inst_agent.yml

2. 修改web1配置文件

[root@web1 ~]# vim /etc/zabbix/zabbix_agentd.conf

117 Server=127.0.0.1,192.168.88.5

182 Hostname=web1

3. 启动服务

[root@pubserver zabbix]# vim 05_start_agent.yml

---

- name: config agent

  hosts: web1

  tasks:

    - name: start agent      # 启动服务

      service:

        name: zabbix-agent

        state: started

        enabled: yes

[root@pubserver zabbix]# ansible-playbook 05_start_agent.yml

4、在web页面中添加对web1的监控

主机:安装了agent,被监控的主机

主机组:根据需求,将多台主机加入到一个主机组中,方便管理。系统默认已经创建了一些主机组。

模板:是监控项的集合。将模板应用到主机,主机就可以直接拥有模板中的所有监控项。系统中默认已经创建了一些模板。

配置——主机——创建主机——添加agent(web1)

常用监控指标
  • Space utilization:以百分比显示的磁盘利用率
  • Used space:已用磁盘空间
  • Available memory:可用内存
  • CPU idle time:CPU空闲时间。不宜过低。
  • Load average (1m avg)、Load average (5m avg)、Load average (15m avg):CPU1分钟、5分钟、15分钟的平均负载。这个值不应长期大于核心数。
  • Interface eth0: Bits received:网卡接收到的数据量
  • Interface eth0: Bits sent:网卡发送的数据量
  • Number of processes:系统运行的进程数
  • Number of logged in users:已登陆的用户数
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐