企业运维实战--saltstack部署zabbix监控


前言

saltstack,自动化运维工具,详细介绍与安装可参考本人博客:

企业运维实战–自动化运维Saltstack(上)之saltstack的安装部署、远程执行、grains和pillar详解以及Jinja模板的使用

企业运维实战–自动化运维Saltstack(下)之 saltstack配置keepalived、salt-job、salt-syndic、salt-api

zabbix,企业级监控平台,详细介绍与安装可参考本人博客:

企业运维实战–Zabbix教程之zabbix安装与server+web+agent搭建

本章我们将通过自动化运维saltstack的方式安装部署zabbix监控,包括zabbix-server + zabbix-agent + zabbix-web的搭建。


操作

配置saltstack操作环境

实验环境介绍:

两台rhel7.6的虚拟机server1、server2,其中server1为saltstack的master端,server2为saltstack的minion端,在server2上配置zabbix的所有东西,火墙和selinux全部关掉。

首先server1、server2配置saltstack,

server1:
配置软件仓库:
在这里插入图片描述

安装salt-master服务并开启

yum install -y salt-master.noarch
systemctl enable --now salt-master.service

在这里插入图片描述
server2安装salt-minion服务并开启

yum install -y salt-minion.noarch

修改配置文件指向master

vim /etc/salt/minion
master: 172.25.9.1

开启服务,在server1端添加到信任清单

salt-key -A
salt-key -L

在这里插入图片描述
测试saltstack是否配置完成:

salt server2 test.ping

在这里插入图片描述
配置好saltstack后开始在server2端进行zabbix配置.

server2端:

配置软件仓库
vim /etc/yum.repos.d/zabbix.repo
在这里插入图片描述
分别对zabbix-server,zabbix-db,zabbix-agent,zabbix-web进行使用saltstack进行安装配置。

在这里插入图片描述

使用satlstack配置zabbix

安装包下载

先安装所有需要的包,包括zabbix-server-mysql,zabbix-agent,zabbix-web-mysql,mariadb-server,MySQL-python

vim /srv/salt/zabbix-repo/init.sls

all-install:
  pkg.installed:
    - pkgs:
      - zabbix-server-mysql
      - zabbix-agent
      - zabbix-web-mysql
      - mariadb-server
      - MySQL-python

测试,执行:

salt server2 state.sls zabbix-repo

在这里插入图片描述

所有包安装完成,查看/usr/share/doc/zabbix-server-mysql-4.0.5中create.sql.gz是否存在,为zabbix-db配置做准备。
在这里插入图片描述

将数据包传到server1的zabbix-db中为修改后续数据库配置作准备。

在这里插入图片描述

数据库配置

创建库,授权用户,导入数据
在这里插入图片描述

db-running:
  service.running:
    - name: mariadb

db-configure:
  mysql_database.present:
    - name: zabbix
    - character_set: utf8
    - collate: utf8_bin
    - connection_user: root
    - connection_pass: 

  mysql_user.present:
    - name: zabbix
    - host: localhost
    - password: westos
    - connection_user: root
    - connection_pass: 

  mysql_grants.present:
    - grant: all privileges
    - database: zabbix.*
    - user: zabbix
    - connection_user: root
    - connection_pass:  

  file.managed:
    - name: /usr/share/doc/zabbix-server-mysql-4.0.5/create.sql.gz
    - source: salt://zabbix-db/create.sql.gz 

# cmd.wait:当watch中的内容发生变化时才执行,cmd.run为一直执行
# 此处如果使用cmd.run 会一直导入数据,导致报错
  cmd.wait:
    - name: zcat /usr/share/doc/zabbix-server-mysql-4.0.5/create.sql.gz | mysql -uroot zabbix
    - watch:
      - mysql_database: db-configure

将之前的文件create.sql.gz准备好
在这里插入图片描述

执行

salt server2 state.sls zabbix-db

在这里插入图片描述

在这里插入图片描述

进入server2数据库中查看导入结果

在这里插入图片描述

配置zabbix文件并启动服务

将server2中已经zabbix-server主配置文件传给server1中

在这里插入图片描述

server1中修改配置文件

在这里插入图片描述

vim init.sls

zabbix-server:
  file.managed:
  - name: /etc/zabbix/zabbix_server.conf
  - source: salt://zabbix-server/zabbix_server.conf

  service.running:
    - name: zabbix-server
    - enable: true
    - reload: true
    - watch:
      - file: zabbix-server

测试执行:

salt server2 state.sls zabbix-server
在这里插入图片描述

检查server2中文件是否修改,服务是否启动
在这里插入图片描述

进程显示zabbix-server已经开启,配置zabbix-server成功。

agent端开启服务

vim /srv/salt/zabbix-agent/init.sls

zabbix-agent:
  service.running:
    - name: zabbix-agent
    - enable: true

执行,

salt server2 state.sls zabbix-agent

在这里插入图片描述

server2中查看进程ps ax
在这里插入图片描述

zabbix-web配置并开启服务

server2中将apache虚拟机主机zabbix文件拷贝到server1中

在这里插入图片描述

修改文件中的时区

在这里插入图片描述

vim init.sls

zabbix-web:
  file.managed:
    - name: /etc/httpd/conf.d/zabbix.conf
    - source: salt://zabbix-web/zabbix.conf
  service.running:
    - name: httpd
    - enable: true
    - watch:
      - file: zabbix-web

执行:
salt server2 state.sls zabbix-web
在这里插入图片描述

测试:firefox: http://http://172.25.9.2/zabbix/
在这里插入图片描述

highstate调用

vim /srv/salt/top.sls

base:
  'server2':
    - zabbix-repo
    - zabbix-db
    - zabbix-server
    - zabbix-agent
    - zabbix-web

highstate调用top

salt server2 state.highstate

在这里插入图片描述执行成功,进入网页测试:
firefox:172.25.9.2/zabbix/
在这里插入图片描述

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值