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。

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

相关推荐
longxibo5 小时前
飞牛系统安装DataEase自定义Docker包
运维·docker·容器
先生沉默先6 小时前
Docker常用命令详解:以Nginx为例
nginx·docker
胡耀超8 小时前
基于Docker的GPU版本飞桨PaddleOCR部署深度指南(国内镜像)2025年7月底测试好用:从理论到实践的完整技术方案
运维·python·docker·容器·ocr·paddlepaddle·gpu
YXWik611 小时前
Linux(centos7)安装 docker + ollama+ deepseek-r1:7b + Open WebUI(内含一键安装脚本)
linux·docker·ai
鹿先森AI探索之路19 小时前
本地部署Dify教程
人工智能·docker·ai
贺贺丿21 小时前
Docker4-容器化企业级应用
linux·nginx·docker·云原生·eureka·tomcat·ssh
NorthCastle1 天前
Dockerfile 文件及指令详解
docker·指令·dockerfile
Linux运维技术栈1 天前
从零构建 Node20+pnpm+pm2 环境镜像:基于 Dockerfile 的两种方案及持久化配置指南
运维·docker·容器
chen1108____1 天前
用 Docker 一键部署 Flask + Redis 微服务
redis·docker·flask
菜鸟是大神1 天前
【已解决】docker: Error response from daemon: Get “https://registry-1.docker.io/v2/“: net/http: request c
http·docker·容器