为分布式微服务框架提供合适的PAAS平台,使用成熟的M(Mesos)Z(Zookeeper)M(Marathon)可以作为选择之一。本文将介绍一下如何在CentOS7下进行环境的搭建,同时将搭建的脚本放到了github上的Easypack项目中,使用这个脚本能够简化目前稍微繁琐的安装流程。

机器构成

6台机器构成:3主3从。详细信息如下:

项番 类别 hostname IP 需装软件
No.1 Master host32 192.168.32.32 MESOS+MARATHON+ZOOKEEPER
No.2 Master host33 192.168.32.33 MESOS+MARATHON+ZOOKEEPER
No.3 Master host34 192.168.32.34 MESOS+MARATHON+ZOOKEEPER
No.4 Slave host42 192.168.32.42 MESOS
No.5 Slave host43 192.168.32.43 MESOS
No.6 Slave host44 192.168.32.44 MESOS

准备事项

对上述6台机器,作如下准备:

项番 事项
No.1 OS: CentOS7(1511即可) 最小安装即可
No.2 关闭防火墙:systemctl stop firewalld && systemctl disable firewalld
No.3 清空iptables规则:iptables -F

安装

Master节点安装

各Master节点作如下安装

项番 详细
No.1 rpm -Uvh http://repos.mesosphere.com/el/7/noarch/RPMS/mesosphere-el-repo-7-1.noarch.rpm
No.2 yum install -y mesos
No.3 yum install -y marathon
No.4 yum install -y mesosphere-zookeeper

Slave节点安装

各Slave节点作如下安装

项番 详细
No.1 rpm -Uvh http://repos.mesosphere.com/el/7/noarch/RPMS/mesosphere-el-repo-7-1.noarch.rpm
No.2 yum install -y mesos

设定Master节点

Mesos相关设定

设定/etc/hosts
需要将hostname和IP的mapping加入到hosts中,本文情况设定内容如下:

# Mesos Master
192.168.32.32 host32
192.168.32.33 host33
192.168.32.34 host34# Mesos Slave
192.168.32.42 host42
192.168.32.43 host43
192.168.32.44 host44

设定Zookeeper

相关设定等详细信息在Zookeeper相关的介绍中已经说过,此处不再赘述。各机器的/etc/zookeeper/conf/zoo.cfg追加如下信息

[root@host32 log]# cat /etc/zookeeper/conf/zoo.cfg |tail -n3
server.1=192.168.32.32:2888:3888
server.2=192.168.32.33:2888:3888
server.3=192.168.32.34:2888:3888
[root@host32 log]#

/etc/mesos/zk

[root@host32 log]# cat /etc/mesos/zk
zk://192.168.32.32:2181,192.168.32.33:2181,192.168.32.34:2181/mesos
[root@host32 log]#

/etc/mesos-master/quorum
因为三台的机器,quorum为2,5台的话就是3了

[root@host32 log]# cat /etc/mesos-master/quorum
2
[root@host32 log]#

设定各机器唯一的ID和IP以及Hostname: 比如host32的Master1节点

[root@host32 log]# cat /var/lib/zookeeper/myid
1
[root@host32 log]# cat /etc/mesos-master/ip
192.168.32.32
[root@host32 log]# cat /etc/mesos-master/hostname
192.168.32.32
[root@host32 log]#

设定Marathon

/etc/marathon/conf/zk

[root@host32 log]# cat /etc/marathon/conf/zk
zk://192.168.32.32:2181,192.168.32.33:2181,192.168.32.34:2181/marathon
[root@host32 log]#

设定Slave节点

设定各机器IP以及Hostname: 比如host44的Slave3节点

[root@host44 ~]# cat /etc/mesos-slave/ip
192.168.32.44
[root@host44 ~]# cat /etc/mesos-slave/hostname
192.168.32.44
[root@host44 ~]#

/etc/mesos/zk

[root@host44 ~]# cat /etc/mesos/zk
zk://192.168.32.32:2181,192.168.32.33:2181,192.168.32.34:2181/mesos
[root@host44 ~]#

启动Master服务

各Master节点作如下操作,初期化服务设定以及启动服务

项番 详细
No.1 systemctl stop mesos-slave
No.2 systemctl disable mesos-slave
No.3 systemctl start zookeeper
No.4 systemctl start marathon
No.6 systemctl start mesos-master

启动Slave服务

各Slave节点作如下操作,初期化服务设定以及启动服务

项番 详细
No.1 systemctl stop mesos-master
No.2 systemctl disable mesos-master
No.3 systemctl enable mesos-slave
No.4 systemctl start mesos-slave

Mesos启动确认

Home

Frameworks

Agents

Offers

Marathon启动确认

Applications

Deployments

Easypack

在搭建的过程中顺手把脚本写下来了放到了github上:https://github.com/liumiaocn/easypack/blob/master/mesos/easypack_mesos.sh
有需要的可以自行参照。
使用这个把上面的步骤进行简化,每台机器只需要INSTALL和INIT两个步骤。

使用方法

[root@host33 tmp]# sh easypack_mesos.sh INSTALL MASTER
Usage: easypack_mesos.sh ACTION TYPE NODEACTION: INSTALL|INIT|UNINSTALL|STATUS|START|STOP|RESTARTTYPE  : MASTER|SLAVENODE  : 1|2|3|ALL
[root@host33 tmp]#      

Master节点

[root@host33 tmp]# sh easypack_mesos.sh INSTALL MASTER 2
## Intall Log file : /tmp/tmp_log_file.10340.log
## Install for Master Node:            :OK
## Config for Master Node: /etc/hosts  :OK
## Config   for Master Node:           :OK
[root@host33 tmp]#
[root@host33 tmp]# sh /tmp/easypack_mesos.sh INIT MASTER 1
## Intall Log file : /tmp/tmp_log_file.10753.log
## Init     for Master Node:           :OK
[root@host33 tmp]# 

Slave节点

root@host43 ~]# sh /tmp/easypack_mesos.sh INSTALL SLAVE 2
## Intall Log file : /tmp/tmp_log_file.1751.log
## Install for Slave   Node:             OK
## Config   for Slave   Node:            OK
[root@host43 ~]# sh /tmp/easypack_mesos.sh INIT SLAVE 3
## Intall Log file : /tmp/tmp_log_file.2011.log
## Init     for Slave   Node:            OK
[root@host43 ~]#

Mesos实践:基于MZM的PAAS的构建(4):环境搭建相关推荐

  1. Mesos实践:基于MZM的PAAS的构建(3):Marathon简介

    为分布式微服务框架提供合适的PAAS平台,使用成熟的M(Mesos)Z(Zookeeper)M(Marathon)可以作为选择之一.在本文中将会对Marathon进行简单的介绍. URL https: ...

  2. Mesos实践:基于MZM的PAAS的构建(1):Mesos简介

    前几天介绍了如何使用Spring Cloud搭建分布式的微服务框架,在接下来的这系列的文章中将会介绍如何构建简单的为微服务框架提供服务的PAAS平台.使用成熟的M(Mesos)Z(Zookeeper) ...

  3. Mesos实践:基于MZM的PAAS的构建(2):Zookeeper简介

    为分布式微服务框架提供合适的PAAS平台,使用成熟的M(Mesos)Z(Zookeeper)M(Marathon)可以作为选择之一.在本文中将会对Zookeeper进行简单的介绍. URL https ...

  4. Gitlab+Jenkins+Artifactory, CI/CD自动构建发布环境搭建使用实践

    CI/CD自动构建发布环境搭建使用实践 通过C/C++的cmake工程示例项目,构建Gitlab+Jenkins+Artifactory自动构建发布环境.其中 Gitlab提供源码仓库功能,通过web ...

  5. Ubuntu下基于 Cilium CNI 的 Kubernetus集群环境搭建

    Ubuntu下基于 Cilium CNI 的 Kubernetus集群环境搭建 1. 前言 2. 安装三个Ubuntu 2.1 三个机器都关闭防火墙 2.2 三个机器都关闭swap 2.3 三个机器都 ...

  6. 【Linux集群基础环境搭建】基于虚拟机的多节点Linux网络环境搭建(超详细)

    基于VMWare虚拟机的多节点Linux网络环境搭建 一.使用工具 二.方案设计 三.实现过程 1.安装VMWare虚拟机软件 2. 创建虚拟机节点controller并安装CentOS 3. 通过节 ...

  7. #大数据技术#基于python的hadoop(单机)环境搭建及使用

    基于python的hadoop(单机)环境搭建及使用 0.写在前面 1.虚拟机安装centos6.5 1.1安装流程 1.1.1系统安装 1.1.2修改静态ip(超级用户) 1.1.3更换可用源(超级 ...

  8. 基于Codeblock的LVGL模拟器Windows平台环境搭建[带源码]

    基于Codeblock的LVGL模拟器Windows平台环境搭建 文章目录 基于Codeblock的LVGL模拟器Windows平台环境搭建 概述 一.介绍 二.使用CodeBlock版本方法以及需要 ...

  9. 基于Eclipse平台的Android OpenCV开发环境搭建

    基于Eclipse平台的Android OpenCV开发环境搭建 作者:雨水, 日期:2016-1-31,CSDN博客:http://blog.csdn.net/gobitan 摘要:本文主要记录了如 ...

最新文章

  1. 【云图】如何制作附近实体店的地图?-微信微博支付宝
  2. mongo java client_mongodb java客户端的使用,即MongoClient
  3. Linux防火墙iptables学习
  4. Spring MVC HttpMessageConverter对象
  5. C#超市管理系统试题
  6. 如何让Element UI的Message消息提示每次只弹出一个
  7. find:查找文件或目录
  8. 【elasticsearch】elasticsearch 7 index.lifecycle.rollover_alias does not point to index
  9. ucdavis计算机科学专业,UCDavis的CS「加州大学戴维斯分校计算机科学专业」
  10. 苹果内购 订单验证 21002 坑
  11. Python机器学习个人总结
  12. ES7、ES8、ES9、ES10新特性大盘点
  13. 小米4c原版android哪个好,小米4c和小米4哪个好
  14. javascript 的七七八八
  15. Nature综述: 关键物种对于微生物菌群结构和功能的驱动作用
  16. java io流详解_一文带你看懂JAVA IO流,史上最全面的IO教学啦
  17. 【每天一个Python小知识】NumPy中的np.any
  18. ASEMI整流桥GBU1510参数,GBU1510规格,GBU1510封装
  19. 使用pyPdf分割pdf文档
  20. 【STM32F429开发板用户手册】第40章 STM32F429的LCD控制器LTDC基础知识和HAL库API

热门文章

  1. 【python量化】用Python获取基金历史净值数据
  2. 如何识别超高频电子标签的芯片型号
  3. jpg转换成pdf最有效的方法
  4. CAS单点登录-配置中心(三)
  5. windows下搭建permeate漏洞测试系统实战
  6. 【MFC】【vs2019】rc2135:file not found报错解决
  7. 讨论 | 新浪程序员因加班不在现场错失年会头奖,公司应该给吗?
  8. 160W有桥PFC+LLC电源设计
  9. 网络中的数据传输模式有哪些-镭速
  10. 一级 计算机应用的模块名称,最新全国计算机应用技术证书考试模块设置表