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。

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

相关推荐
TechStack 创行者12 分钟前
Docker+Flask 实战:打造高并发微服务架构
运维·docker·微服务·容器·架构
SaebaRyo1 小时前
MySQL常见写法
后端·mysql·docker
a_j581 小时前
k8s面试题总结(十四)
docker·容器·kubernetes
思考的Joey2 小时前
Docker入门:手把手教你前端容器化部署全流程
前端·docker·devops
精致懒洋洋4 小时前
安装Docker环境并实战应用Docker部署nginx服务(详细教程)
docker
矛取矛求4 小时前
Docker 实践与应用举例
docker
奔跑中的小象5 小时前
Deepin通过二进制方式升级部署高版本 Docker
docker·容器·eureka·deepin
obboda19 小时前
Docker基础入门
运维·docker·云原生·容器·eureka
me83219 小时前
【Linux docker】关于docker启动出错的解决方法。
java·linux·docker
cooldream200919 小时前
Docker Desktop 安装与使用详解
运维·docker·容器