docker容器技术篇:集群管理实战mesos+zookeeper+marathon(二)

docker集群管理实战mesos+zookeeper+marathon(二)

一 实验环境

操作系统:centos7.9

二 基础环境配置以及安装mesos

安装过程请点击下面的链接查看:
容器集群管理实战mesos+zookeeper+marathon(一)

三 安装zookeeper

3.1 Zookeeper概述

ZooKeeper是用来给集群服务维护配置信息,提供分布式同步和提供组服务。所有这些类型的服务都使用某种形式的分布式应用程序,本实验中使用zk与mesos结合实现为mesos的master提供配置维护、分布式同步、组服务等,并保证其单点故障问题。Zk是Hadoop和Hbase的重要组件哦。

3.2 在所有master节点安装zookeeper

下载zookeeper

wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz

3.3 解压zookeeper安装包,配置环境变量


配置环境变量 vim /etc/profile

生效环境变量,输入zk按两次tab键能出来内容;这里还没有配置zk所以不能通过查看zk的版本验证zk的环境变量是否成功,因此才用tab键测试。

3.4 配置zk

3.4.1修改配置文件名



3.4.2 编辑配置文件


3.4.3 创建data目录和myid文件

在zk主目录中创建data目录并在data文件夹中创建myid文件同时写入当前节点id(可以这么理解当前节点的id就是zoo.cfg配置文件中IP地址所对应的server后面的数字)

3.4.4 将master1节点上面的配置拷贝到其他master节点


3.4.5 修改master2 和 master3 节点的zk配置,改myid里面的数据就行


3.4.6 配置master2 和 master3 节点的zk的环境变量,也可以从master1使用scp拷贝



3.4.7 启动zk



3.4.8 查看zk状态



zk成功启动,master2为leader

四 在slave节点上安装docker

安装过程参照:
Docker安装及私有镜像仓库搭建

五 启动mesos集群

5.1 启动mesos-master



由于截图较多,这里就不展示master2和master3节点了,请自行完成。

5.2 访问mesos-master主页

访问的是192.168.23.101这个节点,因为zk选出来的leader是192.168.23.102这个节点,所有现在处于active状态的是master2,三个节点都能访问,但最终都会转发到master2这个节点,当前状态下的所有计算任务的资源调度由master2来完成。

5.3 启动mesos-slave

mesos-master --work_dir=/home/mesos/data --log_dir=/home/mesos/logs --no-hostname_lookup --ip=0.0.0.0 --zk=zk://192.168.23.102:2181/mesos --quorum=2

启动Slave1:

启动slave2:

mesos-slave --containerizers="mesos,docker" --work_dir=/home/mesos/data --log_dir=/home/mesos/logs --no-hostname_lookup --ip=0.0.0.0 --master=zk://192.168.23.101:2181,192.168.23.102:2181,192.168.23.103:2181/mesos

5.4 刷新mesos-master主页,查看slave节点状态


六 后台运行mesos

先把启动是mesos-master 和 mesos-slave关掉

6.1 启动master,使用nohup命令将mesos-master作为后台程序运行

Master2 和 master3 自行完成

6.2 启动slave


6.3 刷新mesos主页,查看mesos状态

至此,mesos集群部署完毕,本实验针对教学环境,生产环境环境还需要考虑更多因素,如高可用和安全等,下个实验将分享docker mesos集群部署marathon。

希望对您有用,有不对的地方希望不吝赐教,欢迎在评论区留言,分享你的看法。

相关推荐
追风林3 小时前
mac 本地docker-mysql主从复制部署
mysql·macos·docker
城南vision5 小时前
Docker学习—Docker核心概念总结
java·学习·docker
wclass-zhengge5 小时前
Docker篇(Docker Compose)
运维·docker·容器
梦魇梦狸º9 小时前
腾讯轻量云服务器docker拉取不到镜像的问题:拉取超时
docker·容器·github
鬼才血脉9 小时前
docker+mysql配置
mysql·adb·docker
詹姆斯爱研究Java9 小时前
Docker 的基本概念和优势
docker
南猿北者11 小时前
docker镜像仓库常用命令
运维·docker·容器
杨浦老苏11 小时前
Docker可视化管理面板DPanel的安装
运维·docker·群晖
航月13 小时前
FTP、ISCSI、CHRONY、DNS、NFS、DOCKER、MARIADB、NGINX、PHP、CA各服务开启方法
nginx·docker·mariadb
微刻时光13 小时前
Docker镜像分成
java·运维·开发语言·docker·容器·镜像