docker (七)-部署容器

实战开始:

1 docker 部署 kafka 集群,并验证

参考 Docker搭建Kafka集群 优秀文档

2 docker 部署 mysql

参考上一篇docker(六)

3.docker 部署 zabbix

参考 docker部署zabbix 优秀文档

BUG:根据这篇文章部署后,发现zabbix-server 图形时间与本地时间相差五个小时

参考优秀文档 思路修改

cpp 复制代码
docker exec -it zabbix-web-nginx-mysql  /bin/bash
cd /etc/php81/
cd php-fpm.d/
vim zabbix.conf
###修改时区###

我这里使用的docker restart, 重启容器后zabbix-web界面中时间正确

BUG:隔天关闭服务器后,再登录发现zabbix-web时间又错误,经过排查,发现宿主机没有做时间效验,根据 优秀文档 时间校对后,web界面时间和宿主机一致

这里有一个疑惑,为什么zabbix-agent的配置文件填写的是docker0上的ip?

这是因为docker0的ip就是设置的"bip",桥接网络是 Docker 容器使用的默认网络,当你创建一个新的容器时,它会被连接到这个桥接网络中。

在桥接网络模式下,Docker 容器的默认网络接口是 docker0,这个接口位于宿主机上,用于连接所有在同一宿主机上运行的容器,docker0 接口的 IP 地址作为 Zabbix Agent 的配置,这通常是合理的做法,特别是当 Zabbix Server 或者其他监控系统也运行在同一宿主机上时.

3.1 zabbix 监控 僵尸进程

僵尸进程 : 僵尸进程是已经结束执行但是其父进程尚未对其进行善后处理的进程。

较大的隐患 : 会导致系统特别卡,但是cpu使用率却不高,内存也不高。

参考以下文章配置:

查看zabbix-sever的ip(这步没有用)

docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' zabbix-server-mysql

10.233.0.5

cpp 复制代码
ip a 查看docker0的ip:

10.233.0.1

进入该容器内:
docker exec -it zabbix-server-mysql /bin/bash

使用zabbix-get测试(进行server容器后直接可以运行命令)

zabbix_get -s 10.233.0.1 -k proc.num[,,zomb,]
0

???为什么不能使用zabbix-server的ip去测试监控项?----上面已经解释了

进行实验模拟:在宿主机上模拟时,通过命令看得到僵尸进程由0变为1,但是zabbix-web界面上的僵尸进程还是还0,且使用zabbix-get命令

cpp 复制代码
b938ad938a17:/var/lib/zabbix$ zabbix_get -s 192.168.10.130 -k proc.num[,,zomb,]
0
b938ad938a17:/var/lib/zabbix$ zabbix_get -s 10.233.0.1 -k proc.num[,,zomb,]
0

这里修改了zabbix-agent的配置文件,还是无法正确返回僵尸进程数量

cpp 复制代码
b938ad938a17:/var/lib/zabbix$ zabbix_get -s 192.168.10.130  -k system.hostname
ddb3a9130c51

这里测试一下到底返回的是哪台服务器的数据?发现返回的是zabbix-agent容器的 id

考虑是返回zabbix-agent容器的数据,进入容器模拟僵尸进程,发现没有权限.....

---跳过----

3.2 zabbix 监控其他机器

agent: 1.容器部署(没有优势),2.二进制部署

上面就是使用容器部署,无法监控---暂时跳过

3.21 二进制部署

新建虚拟机:1. hostname:docker-132 ip:192.168.10.132

  1. 参考zabbix(一)部署 agent (修改Server=192.168.10.130)

根据 二进制部署 VS上面docker部署zabbix 发现docker部署server的配置文件中:DBHost未设置,后面发现不影响---

监控僵尸进程参考 zabbix监控僵尸进程_zabbix proc.num-CSDN博客

模拟并结束僵尸进程 https://blog.51cto.com/qiuyue/3800989

模拟测试,返回数据正确且在zabbix-web界面中显示正确

3.22 邮件告警,企业微信告警告警

难点:企业微信告警,要写python脚本,怎么解决?(要使用到python3,容器内没有)

邮件告警

相关推荐
vvw&4 分钟前
如何在 Ubuntu 22.04 上安装 Graylog 开源日志管理平台
linux·运维·服务器·ubuntu·开源·github·graylog
o(╥﹏╥)24 分钟前
在 Ubuntu 上安装 VS Code
linux·运维·vscode·ubuntu·vs
AI慧聚堂1 小时前
自动化 + 人工智能:投标行业的未来是什么样的?
运维·人工智能·自动化
不爱学英文的码字机器1 小时前
[Linux] Shell 命令及运行原理
linux·运维·服务器
cdut_suye1 小时前
Linux工具使用指南:从apt管理、gcc编译到makefile构建与gdb调试
java·linux·运维·服务器·c++·人工智能·python
qq_433618441 小时前
shell 编程(三)
linux·运维·服务器
苹果醋31 小时前
2020重新出发,MySql基础,MySql表数据操作
java·运维·spring boot·mysql·nginx
两张不够花1 小时前
Jenkins 持续集成部署
运维·jenkins
码农土豆2 小时前
PaddlePaddle飞桨Linux系统Docker版安装
linux·docker·paddlepaddle
Hacker_xingchen2 小时前
天融信Linux系统安全问题
linux·运维·系统安全