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,容器内没有)

邮件告警

相关推荐
芒果披萨2 分钟前
Linux文件类基础命令行1
linux·运维·服务器
杨云龙UP2 小时前
ODA服务器RAC节点2/u01分区在线扩容操作记录及后续处理流程(Linux LVM + ext4 文件系统在线扩容操作手册)_20260307
linux·运维·服务器·数据库·ubuntu·centos
欲买桂花同载酒5829 小时前
程序人生-Hello’s P2P
运维·服务器·数据库
NineData9 小时前
AI时代的数据对比:DBA还需要盯着屏幕看差异吗?
运维·数据库
jyfool9 小时前
Ubuntu 远程桌面配置踩坑实录:从 TightVNC 到 x11vnc 的折腾之旅
linux·运维·ubuntu
网硕互联的小客服9 小时前
服务器防火墙是如何区分正常流量和攻击流量?
运维·服务器·网络
安当加密9 小时前
基于 RADIUS 的 Linux 服务器双因子认证:从 FreeRADIUS 到轻量级 ASP 方案的演进
linux·运维·服务器
ai产品老杨10 小时前
打破异构算力壁垒:基于GB28181/RTSP与Docker容器化的企业级AI视频平台架构解析(附源码交付方案)
人工智能·docker·音视频
A-刘晨阳10 小时前
【Prometheus】Alertmanager配置钉钉告警
运维·云原生·钉钉·prometheus·监控
wangqiaowq10 小时前
llama.cpp 启动命令优化
运维·服务器