Ansible单yaml文件部署Zabbix5.0监控平台

news2024/11/17 7:24:29

文章目录

  • Ansible单yaml文件部署Zabbix5.0监控平台
    • 节点规划
    • 案例实施
      • 基础环境准备
      • 编写剧本文件
      • ZabbixWeb界面
        • (1)改中文
        • (2)添加监控主机

Ansible单yaml文件部署Zabbix5.0监控平台

节点规划

IP主机名节点
192.168.200.10ansibleAnsible节点
192.168.200.20zabbix-serverZabbix-server节点
192.168.200.30zabbix-agentAgent 节点

使用Ansible部署一个zabbix监控平台并监控192.168.200.30主机

案例实施

基础环境准备

(1)修改主机名

[root@localhost ~]# hostnamectl set-hostname ansible
[root@localhost ~]# hostnamectl set-hostname zabbix-server
[root@localhost ~]# hostnamectl set-hostname zabbix-agent

(2)安装ansible

[root@ansible ~]# yum install -y epel-release
[root@ansible ~]# yum install -y ansible

(3)配置Ansible节点和远程主机的连接

[root@ansible ~]# ssh-keygen
[root@zabbix-server ~]# ssh-keygen
[root@zabbix-agent ~]# ssh-keygen
[root@ansible ~]# ssh-copy-id 192.168.200.20
[root@ansible ~]# ssh-copy-id 192.168.200.30

(4)配置主机组

[root@ansible ~]# vim /etc/ansible/hosts 
[yum]
192.168.200.20
192.168.200.30
[zabbix]
192.168.200.20
[agent]
192.168.200.30

(5)测试连通性

[root@ansible ~]# ansible zabbix -m ping
192.168.200.30 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": false, 
    "ping": "pong"
}
192.168.200.20 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": false, 
    "ping": "pong"
}

编写剧本文件

[root@ansible ~]# vim install_zabbix.yaml 
- hosts: yum
  remote_user: root

  tasks:
  - name: stop firewalld setenforce 0
    shell: systemctl stop firewalld && systemctl disable firewalld && setenforce 0
  - name: download zabbix-repo
    yum:  
      name: https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
      state: installed
  - name: modify zabbix-repo
    shell: sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
  - name: enable zabbix-frontend
    shell: sed -i '11s/enabled=0/enabled=1/g' /etc/yum.repos.d/zabbix.repo
  - name: install cangku
    yum: 
      name:
        - centos-release-scl
        - epel-release 
      state: installed

- hosts: zabbix
  remote_user: root
   
  tasks:
  - name: install zabbix
    yum: 
      name: 
        - zabbix-server-mysql
        - zabbix-agent
        - zabbix-web-mysql-scl
        - zabbix-apache-conf-scl
      state: installed
  - name: install mariadb
    yum: name=mariadb-server state=installed


  - name: start enable mariadb
    service: name=mariadb.service enabled=yes state=started
  - name: mariadb password
    shell: mysqladmin -uroot password '000000'
  - name: create zabbix database
    shell: mysql -uroot -p000000 -e "create database zabbix character set utf8 collate utf8_bin";
  - name: create zabbix user
    shell: mysql -uroot -p000000 -e "create user zabbix@localhost identified by '000000'";
  - name: shouquan
    shell: mysql -uroot -p000000 -e "grant all privileges on zabbix.* to 'zabbix'@'localhost';" 
  - name: import db information
    shell:  zcat /usr/share/doc/zabbix-server-mysql-5.0.36/create.sql.gz | mysql -u zabbix -p000000 zabbix
  - name: DBPassword
    lineinfile: 
      path: "/etc/zabbix/zabbix_server.conf"
      regexp: "DBPassword"
      line: "DBPassword=000000"
  - name: modify time zone
    lineinfile:
      path: "/etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf"
      regexp: "^;php_value[date.timezone]"
      line: "php_value[date.timezone] = Asia/Shanghai"
  - name: restart zabbix-server
    shell: systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm && systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
  - name: luanma install ziti
    yum: name=wqy-microhei-fonts state=installed
  - name: copy ziti
    shell: cp -rf /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

- hosts: agent
  remote_user: root

  tasks:
  - name: install zabbix-agent
    yum: name=zabbix-agent state=installed
  - name: modify zabbix-agent.config 被动监控
    lineinfile:
      path: "/etc/zabbix/zabbix_agentd.conf"
      regexp: "^Server=127.0.0.1"
      line: "Server=192.168.200.20"
  - name: modify zabbix-agent.conf 主动监控
    lineinfile:
      path: "/etc/zabbix/zabbix_agentd.conf"
      regexp: "^ServerActive=127.0.0.1"
      line: "ServerActive=192.168.200.20"
  - name: modify zabbix-agent.conf 被监控的主机名
    lineinfile:
      path: "/etc/zabbix/zabbix_agentd.conf"
      regexp: "^Hostname=Zabbix server"
      line: "Hostname=zabbix-agent"

  - name: restart zabbix-agent enable
    service: name=zabbix-agent state=restarted enabled=yes

执行剧本

[root@ansible ~]# ansible-playbook  install_zabbix.yaml 

PLAY [yum] ***********************************************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************************************
ok: [192.168.200.20]
ok: [192.168.200.30]

TASK [stop firewalld setenforce 0] ***********************************************************************************************************************
changed: [192.168.200.20]
changed: [192.168.200.30]

TASK [download zabbix-repo] ******************************************************************************************************************************
changed: [192.168.200.20]
changed: [192.168.200.30]

TASK [modify zabbix-repo] ********************************************************************************************************************************
[WARNING]: Consider using the replace, lineinfile or template module rather than running 'sed'.  If you need to use command because replace, lineinfile
or template is insufficient you can add 'warn: false' to this command task or set 'command_warnings=False' in ansible.cfg to get rid of this message.
changed: [192.168.200.20]
changed: [192.168.200.30]

TASK [enable zabbix-frontend] ****************************************************************************************************************************
changed: [192.168.200.20]
changed: [192.168.200.30]

TASK [install cangku] ************************************************************************************************************************************
changed: [192.168.200.20]
changed: [192.168.200.30]

PLAY [zabbix] ********************************************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************************************
ok: [192.168.200.20]

TASK [install zabbix] ************************************************************************************************************************************
changed: [192.168.200.20]

TASK [install mariadb] ***********************************************************************************************************************************
changed: [192.168.200.20]

TASK [start enable mariadb] ******************************************************************************************************************************
changed: [192.168.200.20]

TASK [mariadb password] **********************************************************************************************************************************
changed: [192.168.200.20]

TASK [create zabbix database] ****************************************************************************************************************************
changed: [192.168.200.20]

TASK [create zabbix user] ********************************************************************************************************************************
changed: [192.168.200.20]

TASK [shouquan] ******************************************************************************************************************************************
changed: [192.168.200.20]

TASK [import db information] *****************************************************************************************************************************
changed: [192.168.200.20]

TASK [DBPassword] ****************************************************************************************************************************************
changed: [192.168.200.20]

TASK [modify time zone] **********************************************************************************************************************************
changed: [192.168.200.20]

TASK [restart zabbix-server] *****************************************************************************************************************************
changed: [192.168.200.20]

TASK [luanma install ziti] *******************************************************************************************************************************
changed: [192.168.200.20]

TASK [copy ziti] *****************************************************************************************************************************************
changed: [192.168.200.20]

PLAY [agent] *********************************************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************************************
ok: [192.168.200.30]

TASK [install zabbix-agent] ******************************************************************************************************************************
changed: [192.168.200.30]

TASK [modify zabbix-agent.config 被动监控] *******************************************************************************************************************
changed: [192.168.200.30]

TASK [modify zabbix-agent.conf 主动监控] *********************************************************************************************************************
changed: [192.168.200.30]

TASK [modify zabbix-agent.conf 被监控的主机名] ******************************************************************************************************************
changed: [192.168.200.30]

TASK [restart zabbix-agent enable] ***********************************************************************************************************************
changed: [192.168.200.30]

PLAY RECAP ***********************************************************************************************************************************************
192.168.200.20             : ok=20   changed=18   unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
192.168.200.30             : ok=12   changed=10   unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

ZabbixWeb界面

浏览器访问192.168.200.20/zabbix

image-20230728232359308

点击Next step

image-20230728232532796

设置完信息,继续点击Next step

image-20230728232617868

设置完信息,继续点击Next step

image-20230728232630692

继续点击Next step

image-20230728232644116

安装成功点击 Finish 登录

image-20230723121719356

进入登录界面,使用默认的用户名和密码 Admin/zabbix 登录

image-20230728232947164

zabbix界面

image-20230729003307550

(1)改中文

点击user settings

image-20230728233154797

如果你想的话,设置中文可以改登录密码 点击左下角用户设置即可更改密码

(2)添加监控主机

点击配置→主机→创建主机

image-20230729003419663

点击模板

image-20230729003517901

查看日志文件

[root@zabbix-server ~]# tail -f /var/log/zabbix/zabbix_server.log 

 7371:20230729:003919.818 enabling Zabbix agent checks on host "zabbix-agent": host became available
# 当出现了这条信息说明已经开启成功了

image-20230729004206402
查看监控图表
image-20230729004307066

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/805590.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

5、Kubernetes核心技术 - Controller控制器工作负载

目录 一、Deployments - 控制器应用 二、Deployment升级回滚和弹性收缩 2.1、创建一个 1.14 版本的 pod 2.2、应用升级 2.3、查看升级状态 2.4、查看历史版本 2.5、应用回滚 2.6、弹性伸缩 三、StatefulSet - 有状态应用 四、DaemonSet - 守护进程 五、Job - 单次任…

使用低代码开发,需要注意哪些?

低代码平台的历史相对较短,大约始于 2000 年初,源于快速应用程序开发工具。随着低代码平台和工具的日益普及和优势,它不断发展以满足各种领域和角色的需求。 本文将研究各种低代码和无代码应用程序开发方法、业务用例、挑战和未来预测等。 一…

2022前端开发实习总结报告

2022前端开发实习总结报告1 一、顶岗实习目的 根据所学课程的理论知识,结合企业的运营实际,掌握软件开发的一般过程,软件的生命周期和作为一个开发人员就应具备的基本潜力,并撰写顶岗实习报告。使学生进一步巩固所学理论知识&am…

判断是否是二叉对称树(两种方法:递归+迭代)

给你一个二叉树的根节点 root , 检查它是否轴对称。 输入:root [1,2,2,3,4,4,3] 输出:true 源代码如下: //递归 class Solution { public:bool dfs(TreeNode* p,TreeNode* q){if(pnullptr && qnullptr) return true;//同…

redis的如何使用

1、redis的使用 1.1windows安装 安装包下载地址:Releases dmajkic/redis GitHub 1.2 redis中常使用的几个文件 1.3 redis中运行 双击redis-server,既可以运行。 1.4使用redis客户单来连接redis 1.5redis的常用指标 redis-serve 服务端,端口号&am…

【嵌入式学习笔记】嵌入式基础10——STM32时钟配置

1.认识时钟树 简单来说,时钟是具有周期性的脉冲信号,最常用的是占空比50%的方波 1.1.F1的时钟树 1.2.F4的时钟树(407为例) 1.3.F7的时钟树 1.4.H7的时钟树 2.配置系统时钟(F1为例) 2.1.系统时钟配置步骤 配置HSE VALUE:告诉HAL库外部晶振…

软件测试技能大赛任务二单元测试试题

任务二 单元测试 执行代码测试 本部分按照要求,执行单元测试,编写java应用程序,按照要求的覆盖方法设计测试数据,使用JUnit框架编写测试类对程序代码进行测试,对测试执行结果进行截图,将相关代码和相关截…

浅谈深度神经网络

Deep neural networks are completely flexible by design, and there really are no fixed rules when it comes to model architecture. -- David Foster 前言 神经网络 (neural network) 受到人脑的启发,可模仿生物神经元相互传递信号。神经网络就是由神经元组成…

JMeter 怎么查看 TPS 数据教程,简单易懂

TPS 是软件测试结果的测量单位。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数。在 JMeter 中,我们可以使用以下方法查看 T…

1300*C. Slay the Dragon

Example input 4 3 6 2 3 5 3 12 7 9 4 14 1 10 8 7 output 1 2 4 0 2 解析: 题意是选一个人去攻击龙,其余人防守龙,可以花费 x 块钱让某英雄能力 x,问最少的花费是多少。 贪心,选择大于龙的防御力并且最小的那个英…

mac版窗口管理 Magnet for mac中文最新

magnet mac版是一款运行在苹果电脑上的一款优秀的窗口大小控制工具,拖拽窗口到屏幕边缘可以自动半屏,全屏或者四分之一屏幕,还可以设定快捷键完成分屏。这款专业的窗口管理工具当您每次将内容从一个应用移动到另一应用时,当您需要…

ROS->ROS2, ROS2的安装与测试

本文参考古月居 – ROS2教程做了摘要,以便后用。 ROS1目前有三个版本可以选择,但未来ROS2才是应用领域的主流。 ROS的发展: ROS2的发展: 有关ROS2和ROS1的对比

第五章:Spring下

第五章&#xff1a;Spring下 5.1&#xff1a;AOP 场景模拟 创建一个新的模块&#xff0c;spring_proxy_10&#xff0c;并引入下面的jar包。 <packaging>jar</packaging><dependencies><dependency><groupId>junit</groupId><artifactI…

[CrackMe]Chafe.2.exe的逆向及注册机编写

1. 逆向分析过程 先上手把玩一下, 从外观上看感觉和Chafe.1.exe差不了多少, 还是那个界面 找到RegisterClassEx从而找到其对应的窗口过程 找到对应的WM_COMMAND分支 首先其修改了代码中的4个字节, 将其修改成0x00584554, 然后通过GetDlgItemInt获取了serial值 这里其实原本…

笔记20230727

1. http2.0&#xff0c;概念就不说了&#xff0c;查看是否使用&#xff1a;network调试&#xff0c;查看请求的header-view source&#xff0c;可以查看http版本&#xff1b;后端&#xff0c;如nginx&#xff0c;配置&#xff0c;http2表示开启。后端开启、浏览器支持&#xff…

利用小波包对一维信号进行降噪或压缩(MATLAB)

function [ output_args ] example4_12( input_args ) %EXAMPLE4_12 Summary of this function goes here % Detailed explanation goes here clc; clear; % 设置信噪比和随机数的初始值 snr 3; init 2055615866; % 生成一个原始信号xref和含高斯白噪声的信号x [xref,x] …

nginx配置auth_basic认证

nginx配置auth_basic认证 windows 1、下载 httpd 下载地址: https://www.apachelounge.com/download/ 2、生成密码&#xff1a;打开cmd&#xff0c;进入到 Apache24\bin后 html htpasswd.exe -c G:\nginx\nginx-1.14.2\conf\.htpasswd user 其中: G:\nginx\nginx-1.14.2\conf…

【微服务】springboot 多模块打包使用详解

目录 一、前言 1.1 为什么需要掌握多模块打包 二、工程模块概述 2.1 前后端不分离 2.2 部署方式多样化 2.3 单模块向多模块演进 三、单模块打包构建 3.1 环境准备 3.1.1 创建测试用的单模块工程 3.1.2 多环境配置文件 3.1.3 新增测试接口 3.2 pom配置详解 3.2.1 添…

Git代码管理

目录&#xff1a; git环境配置 git工作流程git常用命令gitlab实战gitlog分析与检索分支管理策略git合并与冲突 1.git环境配置 Git 简介&#xff1a; Git 是目前世界上最先进的分布式版本控制系统。Git 优点&#xff1a; 适合分布式开发&#xff0c;强调个体…

搭建自己第一个golang程序

概念&#xff1a; golang 和 java有些类似&#xff0c;配置好环境就可以直接编写运行了&#xff1b;这里分两种&#xff1a; 一.shell模式 创建一个go类型的文件 往里面编写代码 二.开发工具模式 这里的开发工具 我选用goland package mainimport "fmt"func mai…