qq524061227 发表于 2019-1-18 10:51:35

基于Docker搭建zabbix服务

基于Docker搭建zabbix监控服务
环境
  操作系统:centos6.5   
  Docker version 1.7.1
  Docker的安装以及pull镜像这里暂且不介绍
# docker images
REPOSITORY         TAG               IMAGE ID            CREATED             VIRTUAL SIZE
centos6-lamp       latest             601481552a9d      4 minutesago       1.498 GB
centos6-ssh-mysqllatest             8fe2459b59e5      16 hoursago      464 MB
tomcat             latest             430e8c6b6fad      6 days ago          357.3 MB
nginx            latest             c0e6aba9c87a      6 daysago          182.6 MB
centos7            latest             0e0217391d41      7 weeksago         196.6 MB
consol/tomcat-7.0latest            1439b1fbf911      10 months ago       601.2 MB
centos6-ssh      latest             b78c71c001db      20 monthsago       296.9 MB
  
我们将用centos6-lamp镜像构建zabbix镜像,注意docker pull镜像时推荐pull centos6的镜像,不要pull默认的centos,因为那是centos7,对于centos7,本人感觉和centos6有好多出入,并不是简简单单的升级,所以推荐docker search centos6
  本人是拿pull下来的centos6一键yum安装的lamp环境然后commit为一个新的镜像
Yum安装lamp命令
yum -y install gcc gcc-c++ autoconfhttpd php mysql mysql-server php-mysqlhttpd-manual mod_ssl
mod_perl mod_auth_mysql php-gd php-xml php-mbstring php-ldapphp-pear php-xmlrpc php-bcmath
mysql-connector-odbc mysql-devel libdbi-dbd-mysqlnet-snmp-devel curl-devel unixODBC-devel OpenIPMI-devel java-devel
  
创建zabbix容器,创建后docker ps可以查看容器的一些基本信息
# docker run -itd --name zabbix -v /mnt/:/mnt/ -p10050:10050 -p 10051:10051 centos6-lamp
fae23d1c5f1c64670ea50bc91f5a444c54ffd823b194187deff279a5ba4ea469
# docker ps
CONTAINER ID       IMAGE               COMMAND                CREATED             STATUS            PORTS                                          NAMES
fae23d1c5f1c       centos6-lamp      "/bin/sh-c '/usr/sb   14 seconds ago      Up 11 seconds       22/tcp, 0.0.0.0:10050-10051->10050-10051/tcp   zabbix
  
拷贝宿主主机的zabbix安装包到创建容器时所挂载的数据卷目录
# cp zabbix-2.0.15.tar.gz /mnt/
# docker exec -it zabbix /bin/bash   //进入docker容器
bash-4.1# cp /mnt/zabbix-2.0.15.tar.gz /root/   
bash-4.1# cd root/
bash-4.1# ls
zabbix-2.0.15.tar.gz
bash-4.1# tar -xzvf zabbix-2.0.15.tar.gz
  
创建zabbix账户,用户组,yum安装编译安装时需要的依赖包
并编译安装zabbix
bash-4.1# groupadd zabbix -g 201
bash-4.1# useradd -g zabbix -u 201 -m zabbix
bash-4.1# yum install php-pecl-ssh2.x86_64libssh2-devel.x86_64 openldap openldap-devel
bash-4.1# tar -xzvf zabbix-2.0.15.tar.gz
bash-4.1#./configure --prefix=/usr --sysconfdir=/etc/zabbix--enable-server --enable-proxy --enable-agent
--enable-ipv6 --with-mysql=/usr/bin/mysql_config--with-net-snmp --with-libcurl --with-openipmi
--with-unixodbc --with-ldap --with-ssh2 --enable-java    //配置
bash-4.1# make && make install                      //编译&安装
  
运行mysql服务,配置root用户密码
bash-4.1# mysqladmin -uroot password "root"
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket'/var/lib/mysql/mysql.sock' (111)'
Check that mysqld is running and that the socket:'/var/lib/mysql/mysql.sock' exists!             //这个错误提示mysql服务是否启动
bash-4.1# service mysqld status
mysqld dead but pid file exists                  //说mysql服务已死,重启就行了
bash-4.1# service mysqld restart
Stopping mysqld:                                          
Starting mysqld:                                          
bash-4.1# service mysqld status
mysqld (pid8224) isrunning...
bash-4.1# mysqladmin -uroot password "root"   //更改root密码
  
创建zabbix数据库,并创建zabbix数据库用户以及授权
bash-4.1# mysql -uroot -proot
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. Allrights reserved.

Oracle is a registered trademark of Oracle Corporation and/orits
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the currentinput statement.

mysql> create database zabbix character set utf8;
Query OK, 1 row affected (0.00 sec)

mysql> grant all privileges on zabbix.* tozabbix@localhost identified by "zabbix";
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

  
导入zabbix数据库到mysql
bash-4.1# mysql -uzabbix -pzabbix zabbix
页: [1]
查看完整版本: 基于Docker搭建zabbix服务