docker安装zabbix

z

zabbix离线部署安装

1. 推荐系统版本

centos7

2.所需jar包

请添加图片描述
请添加图片描述

3. 安装docker

参考⽂档

1.解压

tar -xvf docker-18.06.1-ce.tgz

2、将解压出来的docker⽂件内容移动到 /usr/bin/ ⽬录下

cp docker/* /usr/bin/

3.将docker注册为service

vim /etc/systemd/system/docker.service

将下列配置加到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 --graph /home/docker
ExecReload=/bin/kill -s HUP $MAINPID 
# Having non-zero Limit*s causes performance 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 prematurely 
Restart=on-failure 
StartLimitBurst=3 
StartLimitInterval=60s 
[Install] 
WantedBy=multi-user.target

4.启动

chmod +x /etc/systemd/system/docker.service #添加⽂件权限并启动docker
systemctl daemon-reload #重载unit配置⽂件
systemctl start docker #启动Docker
systemctl enable docker.service #设置开机⾃启

5.验证

systemctl status docker #查看Docker状态
docker version #查看Docker版本

4.安装docker-compose

​ 将docker-compose拷⻉到⽬标主机后,放⼊相应⽬录中,并修改权限

cp docker-compose /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

5.把server端所需jar包导入docker成为镜像

请添加图片描述

6.在docker-compose目录下新建文件夹,放入docker-compose.yml

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aSf8alil-1650695652470)(C:\Users\47337\AppData\Roaming\Typora\typora-user-images\image-20210319185902897.png)]

注意: 此⽂件对格式要求⾮常严格,必须要缩进对⻬好

根据选⽤的镜像进⾏改写

需要修改的地⽅主要是 environment、image、volumes,如果默认端⼝被占⽤,可以修改端⼝。

如果使⽤https镜像,需要将ports 80:8080 改成 443:8443

version: "3.7"
services:
 mysql:
   container_name: mysql-server
   image: mysql:8.0
   networks:
    - zabbix-demo
   security_opt:
    - seccomp:unconfined
   environment:
     MYSQL_USER: zabbix
     MYSQL_PASSWORD: AH_5G_nms@2020
     MYSQL_ROOT_PASSWORD: AH_5G_dpi@2020 
     MYSQL_DATABASE: zabbix
   command: --character-set-server=utf8 --collation-server=utf8_bin --default-authentication-plugin=mysql_native_password
   volumes:
    - /home/docker/mysql:/var/lib/mysql
 server:
   container_name: zabbix-server-mysql
   image: server-mysql-base:v1
   networks:
    - zabbix-demo
   environment:
     DB_SERVER_HOST: mysql-server
     MYSQL_DATABASE: zabbix
     MYSQL_USER: zabbix
     MYSQL_PASSWORD: AH_5G_nms@2020
     MYSQL_ROOT_PASSWORD: AH_5G_dpi@2020
   volumes:
     - /home/docker/ExternalScripts:/usr/lib/zabbix/externalscripts
   ports:
     - "10051:10051"
   depends_on:
     - mysql
 web:
   container_name: zabbix-web-nginx-mysql
   image:  web-nginx-mysql-sino-https:v2
   networks:
     - zabbix-demo
   environment:
     ZBX_SERVER_HOST: zabbix-server-mysql
     DB_SERVER_HOST: mysql-server
     MYSQL_DATABASE: zabbix
     MYSQL_USER: zabbix
     MYSQL_PASSWORD: AH_5G_nms@2020
     MYSQL_ROOT_PASSWORD: AH_5G_dpi@2020
     ZBX_SERVER_NAME: NMS8000
   ports:
     - "443:8443"
   depends_on:
     - server
networks:
 zabbix-demo:

7.启动服务

# 到docker-compose.yml所在的⽬录,运⾏
docker-compose up -d
# 查看容器启动情况
docker ps -a

8.页面访问

在这里插入图片描述

9.安装agent

​ 1.所需包
在这里插入图片描述

​ 2.下载安装好包

在这里插入图片描述

​ 4.修改配置文件/etc/zabbix/zabbix/zabbix_agentd.conf
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

​ 5.重启服务

systemctl restart zabbix-agent

10.告警配置

(1)安装mailx工具 yum -y install mailx

(2)配置zabbix服务器外部邮箱

​ vim /etc/mail.rc 打开文件

         ```javascript

set bsdcompat
set from=1136145321@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=1136145321@qq.com
set smtp-auth-password=drripjdxvotibaae
set smtp-auth=login

         ```

(3)测试发送邮件

    ```javascript

echo “this is test mail” | mail -s “text_mail” 473379613@qq.com

    ```

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VCET0TEW-1650695652484)(C:\Users\47337\AppData\Roaming\Typora\typora-user-images\image-20210222132614697.png)]

(补充知识)

重点

zabbix启动:

在这里插入图片描述

zabbix+docker (上面有)

zabbix 重要的几个部分

zabbix-server zabbix_server.conf

zabbix-agent zabbix_agent.conf

zabbix -proxy zabbix_agent.conf

11.ansible

学习链接:https://www.cnblogs.com/keerya/p/7987886.html

步骤1:

安装ansible

​ 1.安装epel-release

      ```javascript

yum install epel-release

      ```

​ 2.安装ansible

yum install ansible

步骤2:

在server端生成密钥对 ssh-keygen -t rsa -f /root/.ssh/id_rsa -N ‘’

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XLSn0mXl-1650695652486)(C:\Users\47337\AppData\Roaming\Typora\typora-user-images\image-20210226104304777.png)]

将公钥传输到被管理节点,建立信用关系

ssh-copy-id +主机ip或主机名

步骤3:

ping模块测试主机间的连通性

 ```javascript

ansible 192.168.91.142 -m ping (方法一)
ansible 192.168.91.142, -m ping 或 ansible 192.168.91.142,IP地址 -m ping (方法二)可多个ip测试ping

(在主机清单中需要配置该IP)

 ```
192.168.91.142 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    }, 
    "changed": false, 
    "ping": "pong"
}

copy模块

touch /tmp/a.conf -- 创建一个文件
ansible 192.168.91.142 -m copy -a "src=/tmp/a.conf dest=/tem/a.conf"    --执行将主机文件copy到指定主机ip的文件目录下            

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XSidV2Cm-1650695652487)(C:\Users\47337\AppData\Roaming\Typora\typora-user-images\image-20210226112436159.png)]

主机清单

​ 1. 作用:一、用于读取主机ip或主机名称,二、实现主机分组

​ 2.配置(vim /etc/ansible/hosts):

​ (1)主机清单文件中添加ip或主机名

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ygIs5m0j-1650695652488)(C:\Users\47337\AppData\Roaming\Typora\typora-user-images\image-20210225112651459.png)]

​ (2)在主机清单文件中添加一个分组,然后再添加ip或主机名到分组中

​           [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5z63vzIn-1650695652489)(C:\Users\47337\AppData\Roaming\Typora\typora-user-images\image-20210225112612380.png)]

--列出所有清单ip
ansible all -i  /etc/ansible/hosts --list-hosts
--列出组ip清单
ansible 组名 -i  /etc/ansible/hosts --list-hosts


command 和 shell
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fpiTFiIn-1650695652490)(C:\Users\47337\AppData\Roaming\Typora\typora-user-images\image-20210226143618100.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JihBVj9F-1650695652491)(C:\Users\47337\新建文件夹\image-20210225153136056.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LDJ4Esel-1650695652492)(C:\Users\47337\AppData\Roaming\Typora\typora-user-images\image-20210319120903119.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Udcapoev-1650695652492)(C:\Users\47337\AppData\Roaming\Typora\typora-user-images\image-20210319120913068.png)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值