联网Liunx7.5用docker安装zabblix5.2.6

目录

前言

一、docker是什么?

二、安装docker

1.yum安装

2.安装docker

3 docker的基本命令、

三  zabbix是什么

四  安装zabbix server

五 docker问题所在

5.1 网络问题 WARNING: IPv4 forwarding is disabled. Networking will not work.

六 安装zabbix-agent

​​​​​​​ 6.1 启动、停止、检查 zabbix_ agentd

 ​​​​​​​​​​​​​​6.2 设置开机自启动

 6.3 问题没有conf文件

总结


​​​​​​​


前言

使用docer部署zabblix环境:联网+centos7.5+docker


提示:以下是本篇文章正文内容,下面案例可供参考

一、docker是什么?

 Docker是一个开源的容器引擎,它有助于更快地交付应用。Docker可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。

使用Docker可更快地打包、测试以及部署应用程序,并可以缩短从编写到部署运行代码的周期。

参考链接https://www.cnblogs.com/stormlong/p/10863061.html

二、安装docker

1.yum安装

代码如下(示例):

1、Docker要求 CentOS 系统的内核版本高于3.10

# uname -r

查看操作系统版本

# cat /etc/redhat-release

2、卸载旧版本(如果安装过旧版本的话)

# yum remove docker  docker-common docker-selinux docker-engine

3、查看 yum 源地址

# yum repolist

4、设置yum源,并更新 yum 的包索引

# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# yum makecache fast

5、可以查看所有仓库中所有docker版本,并选择特定版本安装

# yum list docker-ce --showduplicates | sort -r

2.安装docker

1、安装docker

# yum install docker-ce  #由于repo中默认只开启stable仓库,故这里安装的是稳定版18.03.1

# yum install <FQPN>  # 例如:

# yum -y install docker-ce-18.03.1.ce

2、启动并加入开机启动

# systemctl start docker 

# systemctl enable docker

3、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)

# docker version

4、卸载docker

# yum -y remove docker-engine

3 docker的基本命令、

3.1查看运行进程

[root@ansible ~]# docker ps -a 
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS              PORTS                               NAMES
576a07b39f81        zabbix-web-nginx-mysql:v1       "docker-entrypoint.sh"   19 minutes ago      Up 19 minutes       8443/tcp, 0.0.0.0:8888->8080/tcp    zabbix-web-nginx-mysql
be12ba2787c5        zabbix-server-mysql-centos:v1   "/sbin/tini -- /usr/…"   19 minutes ago      Up 19 minutes       0.0.0.0:10051->10051/tcp            zabbix-server-mysql
a0f0b92f453d        zabbix-java-gateway:v1          "docker-entrypoint.s…"   19 minutes ago      Up 19 minutes       10052/tcp                           zabbix-java-gateway
ac5e2efe817a        zabbix-mysql57:v1               "docker-entrypoint.s…"   19 minutes ago      Up 19 minutes       33060/tcp, 0.0.0.0:3307->3306/tcp   zabbix-mysql

3.2 停止运行中的进程

[root@ansible ~]#  docker stop 576a07b39f81 

3.3  删除 承载改进程的容器了

[root@ansible ~]# docker rmi mysql:8.0.24

3.4 查看日志

[root@ansible ~]# docker logs --since 30m  zabbix-mysql 
2021-08-08T13:16:16.449714Z 0 [Note] InnoDB: page_cleaner: 1000ms intended loop took 14642ms. The settings might not be optimal. (flushed=0 and evicted=0, during the time.)
2021-08-08T13:17:11.206146Z 0 [Note] InnoDB: page_cleaner: 1000ms intended loop took 35741ms. The settings might not be optimal. (flushed=0 and evicted=0, during the time.)
2021-08-08T13:17:51.103945Z 0 [Note] InnoDB: page_cleaner: 1000ms intended loop took 27887ms. The settings might not be optimal. (flushed=0 and evicted=0, during the time.)

3.5 清理默认情况下,docker image prune 命令只会清理 虚无镜像(没被标记且没被其它任何镜像引用的镜像) 后面慎用!!!清理一切不别用的卷和镜像

root@instance-o70no2nw:~# docker images -a
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
<none>              <none>              867c2dc0031b        12 hours ago        465MB
mytomcat            8.5.0               34c8c864d046        12 hours ago        465MB
ubuntu              16.04               a3551444fc85        2 days ago          119MB
mysql               8.0.16              d72169616e20        4 days ago          443MB
mysql               latest              d72169616e20        4 days ago          443MB
tomcat              latest              5a069ba3df4d        2 weeks ago         465MB

root@instance-o70no2nw:~# docker image prune
WARNING! This will remove all dangling images.
Are you sure you want to continue? [y/N] y
Total reclaimed space: 0B

$ docker system prune --volumes

WARNING! This will remove:
        - all stopped containers
        - all networks not used by at least one container
        - all volumes not used by at least one container
        - all dangling images
        - all build cache
Are you sure you want to continue? [y/N] y

三  zabbix是什么

zabbix是开源的监控系统,多的不说,学习大哥的docker脚本部署

四  安装zabbix server

1  永久关闭SELiunx和防火墙

[root@localhost ~]# sed -i '7c \SELINUX=disabled'  /etc/selinux/config
[root@localhost ~]# setenforce 0
[root@localhost ~]# getenforce
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl status firewalld
[root@localhost ~]# systemctl disable firewalld

2  vim docker_pull_image.sh

#!/bin/bash

# 删除旧的zabbix容器和镜像
docker stop $(docker ps -a)
sleep 3
docker rm -f $(docker ps -a)
docker rmi -f $(docker images | grep "zabbix")


# 拉取zabbix所需镜像
docker pull mysql:5.7 && docker pull zabbix/zabbix-server-mysql:centos-latest && docker pull zabbix/zabbix-web-nginx-mysql:latest && docker pull zabbix/zabbix-java-gateway:latest
docker pull mysql:8.0.24

# 重命名
docker tag mysql:8.0.24 zabbix-mysq8024:v1
docker tag mysql:5.7 zabbix-mysql57:v1
docker tag zabbix/zabbix-server-mysql:centos-latest zabbix-server-mysql-centos:v1
docker tag zabbix/zabbix-web-nginx-mysql:latest zabbix-web-nginx-mysql:v1
docker tag zabbix/zabbix-java-gateway:latest zabbix-java-gateway:v1

# 删除原有镜像
docker rmi mysql:8.0.24
docker rmi -f mysql:5.7
docker rmi -f zabbix/zabbix-server-mysql:centos-latest
docker rmi -f zabbix/zabbix-web-nginx-mysql:latest
docker rmi -f zabbix/zabbix-java-gateway:latest

# 删除原有数据卷挂载
rm -rf /usr/lib/zabbix/alertscripts

#删除无用的的
docker system prune
docker volume prune

3 vim install_zabbix_server.sh

#!/bin/bash

# 创建docker双向通信共享网络
docker network create -d bridge zabbix-net

# 创建数据卷
docker volume create zabbix-mysql-data
docker volume create zabbix-server-vol

docker run -it -p 3307:3306 \
--name zabbix-mysql \
--network zabbix-net \
--mount source=zabbix-mysql-data,target=/var/lib/mysql \
--restart=always \
-v /etc/localtime:/etc/localtime \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix123" \
-e MYSQL_ROOT_PASSWORD="root123" \
-d zabbix-mysql57:v1


docker run -it -v /etc/localtime:/etc/localtime \
--restart=always \
--name=zabbix-java-gateway \
--network zabbix-net \
-d zabbix-java-gateway:v1


docker run -it -p 10051:10051 \
--mount source=zabbix-server-vol,target=/etc/zabbix \
-v /etc/localtime:/etc/localtime \
-v /usr/lib/zabbix/alertscripts:/usr/lib/zabbix/alertscripts \
--name=zabbix-server-mysql \
--restart=always \
--network zabbix-net \
-e DB_SERVER_HOST="zabbix-mysql" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix123" \
-e MYSQL_ROOT_PASSWORD="root123" \
-e ZBX_JAVAGATEWAY="zabbix-java-gateway" \
-d zabbix-server-mysql-centos:v1


docker run -it -p 8888:8080 \
-v /etc/localtime:/etc/localtime \
--name zabbix-web-nginx-mysql \
--restart=always \
--network zabbix-net \
-e DB_SERVER_HOST="zabbix-mysql" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix123" \
-e MYSQL_ROOT_PASSWORD="root123" \
-e ZBX_SERVER_HOST="zabbix-server-mysql" \
-d zabbix-web-nginx-mysql:v1

4、执行脚本

./docker_pull_image.sh
./install_zabbix_server.sh 等docker_pull_image.sh脚本执行成功后再执行

5、查看镜像和容器

[root@ansible ~]# docker images | grep zabbix
zabbix-web-nginx-mysql       v1                  59c46117948b        2 days ago          166MB
zabbix-java-gateway          v1                  2f5a909494f0        2 days ago          84.4MB
zabbix-mysql57               v1                  8cf625070931        2 weeks ago         448MB
zabbix-server-mysql-centos   v1                  20d866692cd9        2 months ago        356MB
zabbix-mysq8024              v1                  0627ec6901db        3 months ago        556MB


[root@ansible ~]# docker ps | grep zabbix
576a07b39f81        zabbix-web-nginx-mysql:v1       "docker-entrypoint.sh"   About an hour ago   Up About an hour    8443/tcp, 0.0.0.0:8888->8080/tcp    zabbix-web-nginx-mysql
be12ba2787c5        zabbix-server-mysql-centos:v1   "/sbin/tini -- /usr/…"   About an hour ago   Up About an hour    0.0.0.0:10051->10051/tcp            zabbix-server-mysql
a0f0b92f453d        zabbix-java-gateway:v1          "docker-entrypoint.s…"   About an hour ago   Up About an hour    10052/tcp                           zabbix-java-gateway
ac5e2efe817a        zabbix-mysql57:v1               "docker-entrypoint.s…"   About an hour ago   Up About an hour    33060/tcp, 0.0.0.0:3307->3306/tcp   zabbix-mysql

6、浏览器访问:

http://本机ip:8888

默认账号:Admin

默认密码:zabbix

五 docker问题所在

5.1 网络问题 WARNING: IPv4 forwarding is disabled. Networking will not work.

Error response from daemon: network with name zabbix-net already exists
zabbix-mysql-data
zabbix-server-vol
WARNING: IPv4 forwarding is disabled. Networking will not work.
e3033491e246352a50b5273b8045830bcf524db11de1ca3ef330c7171f7eeb01
WARNING: IPv4 forwarding is disabled. Networking will not work.
f7d207202068395c6aac73fbffea8ac76f270c6561eeebbe7dff1bba6b2df3fd
WARNING: IPv4 forwarding is disabled. Networking will not work.
d4dba67b9ff5134f1070c83e5fd7836fb2cc8b6d81e6ee4c5cb2f4812c748466
WARNING: IPv4 forwarding is disabled. Networking will not work.
e46516bb9630e1c3f3ecee5e58df040fb031770675508c0eae902de6cfb51c7d

追加 net.ipv4.ip_forward=1

[root@ansible ~]# vim /usr/lib/sysctl.d/00-system.conf
[root@ansible ~]#  systemctl restart network

六 安装zabbix-agent

yum install zabbix-agent -y

cd /etc/zabbix/
mv /etc/zabbix/zabbix_agentd.conf  /etc/zabbix/zabbix_agentd.confbak ##备份配置
cat /etc/zabbix/zabbix_agentd.confbak | egrep -v '^$|#'> zabbix_agentd.conf  ##过滤一下空白行和注释
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
Include=/etc/zabbix/zabbix_agentd.d/*.conf

​​​​​​​ 6.1 启动、停止、检查 zabbix_ agentd

systemctl start zabbix-agent.service  ###启动zabbix_agentd
systemctl stop zabbix-agent.service  ###停止zabbix_agentd
systemctl status zabbix-agent.service   ###查看zabbix_agentd状态

 ​​​​​​​​​​​​​​6.2 设置开机自启动

systemctl enable zabbix-agent.service  

 6.3 问题没有conf文件

[root@ansible zabbix]# systemctl restart zabbix-agent.service 
Job for zabbix-agent.service failed because the control process exited with error code. See "systemctl status zabbix-agent.service" and "journalctl -xe" for details.
[root@ansible zabbix]# systemctl status zabbix-agent.service 
● zabbix-agent.service - LSB: Start and stop Zabbix agent
   Loaded: loaded (/etc/rc.d/init.d/zabbix-agent; bad; vendor preset: disabled)
   Active: failed (Result: exit-code) since 六 2021-08-21 09:25:08 CST; 15s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 2911 ExecStop=/etc/rc.d/init.d/zabbix-agent stop (code=exited, status=0/SUCCESS)
  Process: 3885 ExecStart=/etc/rc.d/init.d/zabbix-agent start (code=exited, status=1/FAILURE)
    Tasks: 6
   Memory: 5.8M
   CGroup: /system.slice/zabbix-agent.service
           ├─2819 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
           ├─2821 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
           ├─2822 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
           ├─2823 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
           ├─2824 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
           └─2825 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]

8月 21 09:25:08 ansible systemd[1]: Starting LSB: Start and stop Zabbix agent...
8月 21 09:25:08 ansible zabbix-agent[3885]: grep: /etc/zabbix/zabbix_agentd.conf: 没有那个文件或目录
8月 21 09:25:08 ansible zabbix-agent[3885]: Starting Zabbix agent: zabbix_agentd [3894]: cannot open config file "/etc/zabbix/zabbix_agentd.conf": [2] No such file or directory
8月 21 09:25:08 ansible zabbix-agent[3885]: [失败]
8月 21 09:25:08 ansible systemd[1]: zabbix-agent.service: control process exited, code=exited status=1
8月 21 09:25:08 ansible systemd[1]: Failed to start LSB: Start and stop Zabbix agent.
8月 21 09:25:08 ansible systemd[1]: Unit zabbix-agent.service entered failed state.
8月 21 09:25:08 ansible systemd[1]: zabbix-agent.service failed.
[root@ansible zabbix]# ^C

 检查/etc/zabbix/zabbix_agentd.conf: 没有那个文件或目录 是否丢失,丢失返回6.1获取备份


总结

 参考链接https://blog.csdn.net/qq_43205778/article/details/117039160

 参考链接:https://www.cnblogs.com/stormlong/p/10863061.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值