1. 首页 > 电脑知识

kylin10-arm 下用docker-27 安装ZABBIX server 7 kylin教程

作者:admin 更新时间:2025-06-08
摘要:kylin10-arm64下用docker-27 安装ZABBIX server 7 文章目录 kylin10-arm64下用docker-27 安装ZABBIX server 7 1、环境介绍 2、下载离线安装包 3、安装docker 3.1 配置服务 3.2 启动服务 3.3配置daemon.json 3.5 重新加载 4.安装zabbix server 4.1 拉取镜像 自定义镜像 4.2,kylin10-arm 下用docker-27 安装ZABBIX server 7 kylin教程

 

kylin10-arm 下用docker-27 安装ZABBIX server 7

文章目录

kylin10-arm 下用docker-27 安装ZABBIX server 7

1、环境介绍 2、下载离线安装包 3、安装docker

3.1 配置服务 3.2 启动服务 3.3配置daemon.json 3.5 重新加载

4.安装zabbix server

4.1 拉取镜像

自定义镜像

4.2 创建专用于 Zabbix 组件容器的网络 4.3 启动 Zabbix Java 实例:docker pull zabbix/zabbix-server-mysql:alpine-7.0-latest 4.4 启动 MySQL 服务器实例: 4.5 启动 Zabbix server 实例,并将其关联到已创建的 MySQL server 实例 4.6 启动 Zabbix Web 界面,并将其关联到已创建的 MySQL server 和 Zabbix server 实例 通用命令

5.启动页面 http://ip/

1、环境介绍

# hostnamectl Static hostname: ecs-7kw0hn02xbd1m8 Icon name: computer-vm Chassis: vm Machine ID: 3f0f3bc29f155997acf0f3a356a5531e Boot ID: ce9e7f873bed4f74bccc6eef37492db8 Virtualization: kvm Operating System: Kylin Linux Advanced Server V10 (Lance) Kernel: Linux 4.19.90-52.42.v2207.ky10.aarch Architecture: arm

2、下载离线安装包

下载地址: https://mirrors.aliyun.com/docker-ce/linux/static/stable/aarch /?spm=a2c6h.256038 .0.0.654c4ccaPxer04

选择自己需要的版本并下载。

3、安装docker

# tar -zxvf docker-27.4.0.tgz docker/ docker/containerd docker/docker-proxy docker/dockerd docker/docker-init docker/runc docker/docker docker/ctr docker/containerd-shim docker/containerd-shim-runc-v2 # cp docker/* /usr/bin/
3.1 配置服务

创建文件:/etc/systemd/system/docker.service,并填充如下内容:

# vi /etc/systemd/system/docker.service [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewalld.service Wants=network-online.target [Service] Type=notify # the default is not to use systemd for cgroups because the delegate issues still # exists and systemd currently does not support the cgroup feature set required # for containers run by docker ExecStart=/usr/bin/dockerd --config-file /etc/docker/daemon.json ExecReload=/bin/kill -s HUP $MAINPID # Having non-zero Limit*s causes perfor nce problems due to accounting overhead # in the kernel. We recommend using cgroups to do container-local accounting. LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity # Uncomment TasksMax if your systemd version supports it. # Only systemd 226 and above support this version. #TasksMax=infinity TimeoutStartSec=0 # set delegate yes so that systemd does not reset the cgroups of docker containers Delegate=yes # kill only the docker process, not all processes in the cgroup KillMode=process # restart the docker process if it exits pre turely Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target
3.2 启动服务
chmod +x /etc/systemd/system/docker.service systemctl daemon-reload systemctl start docker.service systemctl enable docker.service Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /etc/systemd/system/docker.service. docker ps -a
3.3配置daemon.json

/etc/docker/damon.json

{ "registry-mirrors": [ "https://dockerhub.icu", "https://docker.ckyl.me", "https://docker.awsl9527.cn", "https://docker.m.daocloud.io", "https://docker.laoex.link" ] }
3.5 重新加载
systemctl daemon-reload systemctl restart docker

4.安装zabbix server

下面内容仓库在 Docker Hub 中可用:

组件 Docker 仓库
Zabbix agent zabbix/zabbix-agent
Zabbix server
支持 MySQL zabbix/zabbix-server-mysql
支持 PostgreSQL zabbix/zabbix-server-pgsql
Zabbix Web 界面
基于 Apache2 Web 服务器,支持 MySQL zabbix/zabbix-web-apache-mysql
基于 Apache2 Web 服务器,支持 PostgreSQL zabbix/zabbix-web-apache-pgsql
基于 Nginx Web 服务器,支持 MySQL zabbix/zabbix-web-nginx-mysql
基于 Nginx Web 服务器,支持 PostgreSQL zabbix/zabbix-web-nginx-pgsql
Zabbix proxy
支持 SQLite3 zabbix/zabbix-proxy-sqlite3
支持 MySQL zabbix/zabbix-proxy-mysql
Zabbix Java zabbix/zabbix-java-gateway
4.1 拉取镜像
1. 拉取镜像-zabbix server 服务 # docker pull zabbix/zabbix-server-mysql:alpine-7.0-latest # echo $? `验证是否执行成功,如果是0,成功,否是是失败` 2. zabbix gateway # docker pull zabbix/zabbix-java-gateway:alpine-7.0-latest 3.数据库 8.0 # docker pull mysql:8.0 4.zabbix 界面,nginx # docker pull zabbix/zabbix-web-nginx-mysql:alpine-7.0-latest 5.zabbix agent 代理 # docker pull zabbix/zabbix-agent 6.zabbix snmp 协议监控,用来监控硬件,存储,网络设备 # docker pull zabbix/zabbix-snmptraps 7. 查看镜像 # docker i ges

自定义镜像

cat Dockerfile-snmp

# 基于 zabbix 官方镜像 FROM zabbix/zabbix-server-mysql:alpine-7.0-latest #镜像名称 zabbix7-server-snmptrap # 切换到 root 用户,确保有权限执行安装命令 USER root # 更新 APK 并安装 Python 3 和 pip RUN apk update && apk add net-snmp net-snmp-tools curl # 将 Python 脚本 到容器中 COPY send_snmp_trap.sh /usr/lib/zabbix/alertscripts/send_snmp_trap.sh # 设置 职业目录 WORKDIR /root

生成新的镜像

docker build -t zabbix7-server-snmptrap -f Dockerfile-snmp .docker
4.2 创建专用于 Zabbix 组件容器的网络
docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net
4.3 启动 Zabbix Java 实例:docker pull zabbix/zabbix-server-mysql:alpine-7.0-latest
# docker run --name zabbix-java-gateway -t --network=zabbix-net --restart unless-stopped -d zabbix/zabbix-java-gateway:alpine-7.0-latest
4.4 启动 MySQL 服务器实例:
创建卷 # mkdir -p /zabbix7/mysql/data # mkdir -p /zabbix7/mysql/config # mkdir -p /zabbix7/mysql/log # docker run --name mysql-zabbix7-server -t -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="Root_123!" -e MYSQL_ROOT_PASSWORD="Root_123!" --network=zabbix-net -p 3306:3306 -v /zabbix7/mysql/data:/var/lib/mysql -v /zabbix7/mysql/config:/etc/mysql/conf.d -v /zabbix7/mysql/log:/var/log/mysql -d mysql:8.0 --character-set-server=utf8 --collation-server=utf8_bin --default-authentication-plugin=mysql_native_password
4.5 启动 Zabbix server 实例,并将其关联到已创建的 MySQL server 实例
# docker run --name zabbix7-server-mysql -t -e DB_SERVER_HOST="mysql-zabbix7-server" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="Root_123!" -e MYSQL_ROOT_PASSWORD="Root_123!" -e ZBX_J AGATEWAY="zabbix-java-gateway" --network=zabbix-net -p 10061:10051 -d zabbix/zabbix-server-mysql:alpine-7.0-latest

-e DB_SERVER_HOST=“mysql-zabbix7-server” 是上面创建的数据库容器的名称

4.6 启动 Zabbix Web 界面,并将其关联到已创建的 MySQL server 和 Zabbix server 实例
# docker run --name zabbix7-web-nginx-mysql -t -e ZBX_SERVER_HOST="zabbix7-server-mysql" -e DB_SERVER_HOST="mysql-zabbix7-server" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="Root_123!" -e MYSQL_ROOT_PASSWORD="Root_123!" --network=zabbix-net -p 80:8080 --restart unless-stopped -d zabbix/zabbix-web-nginx-mysql:alpine-7.0-latest

-e ZBX_SERVER_HOST=“zabbix7-server-mysql” 是上面创建zabbix server容器的名称 -e DB_SERVER_HOST=“mysql-zabbix7-server” 是上面创建的数据库容器的名称

通用命令
查看镜像的历史 docker history portainer/portainer-ce:latest 删除容器 docker rm -f <CONTAINER ID> docker rm <names> # docker rm -f zabbix-web-nginx-mysql 删除镜像 # docker rmi <i ge id> 进入容器 docker exec -it <CONTAINER ID> /bin/bash 查看日志 docker logs <CONTAINER ID> 查看容器详情 docker inspect <CONTAINER ID> 打包镜像 docker commit zabbix-server-mysql my-zabbix-server-mysql:1.0

5.启动页面 http://ip/

默认登录账号密码:Admin zabbix

OCI runtime create failed: container_linux.go:318: starting container process caused “permission denied”: unknown 缘故分析: docker:来自守护程序的错误响应:无法创建填充码任务:OCI 运行时创建失败:container_linux.go:318:启动容器进程导致“权限被拒绝”:未知。

解决方案: 卸载Kylin Linux Advanced Server release V10 (Lance) 自带的Pod n, 执行: yum remove pod n 之后再次进行docker run