Mesos实践:基于MZM的PAAS的构建(4):环境搭建
为分布式微服务框架提供合适的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):环境搭建相关推荐
- Mesos实践:基于MZM的PAAS的构建(3):Marathon简介
为分布式微服务框架提供合适的PAAS平台,使用成熟的M(Mesos)Z(Zookeeper)M(Marathon)可以作为选择之一.在本文中将会对Marathon进行简单的介绍. URL https: ...
- Mesos实践:基于MZM的PAAS的构建(1):Mesos简介
前几天介绍了如何使用Spring Cloud搭建分布式的微服务框架,在接下来的这系列的文章中将会介绍如何构建简单的为微服务框架提供服务的PAAS平台.使用成熟的M(Mesos)Z(Zookeeper) ...
- Mesos实践:基于MZM的PAAS的构建(2):Zookeeper简介
为分布式微服务框架提供合适的PAAS平台,使用成熟的M(Mesos)Z(Zookeeper)M(Marathon)可以作为选择之一.在本文中将会对Zookeeper进行简单的介绍. URL https ...
- Gitlab+Jenkins+Artifactory, CI/CD自动构建发布环境搭建使用实践
CI/CD自动构建发布环境搭建使用实践 通过C/C++的cmake工程示例项目,构建Gitlab+Jenkins+Artifactory自动构建发布环境.其中 Gitlab提供源码仓库功能,通过web ...
- Ubuntu下基于 Cilium CNI 的 Kubernetus集群环境搭建
Ubuntu下基于 Cilium CNI 的 Kubernetus集群环境搭建 1. 前言 2. 安装三个Ubuntu 2.1 三个机器都关闭防火墙 2.2 三个机器都关闭swap 2.3 三个机器都 ...
- 【Linux集群基础环境搭建】基于虚拟机的多节点Linux网络环境搭建(超详细)
基于VMWare虚拟机的多节点Linux网络环境搭建 一.使用工具 二.方案设计 三.实现过程 1.安装VMWare虚拟机软件 2. 创建虚拟机节点controller并安装CentOS 3. 通过节 ...
- #大数据技术#基于python的hadoop(单机)环境搭建及使用
基于python的hadoop(单机)环境搭建及使用 0.写在前面 1.虚拟机安装centos6.5 1.1安装流程 1.1.1系统安装 1.1.2修改静态ip(超级用户) 1.1.3更换可用源(超级 ...
- 基于Codeblock的LVGL模拟器Windows平台环境搭建[带源码]
基于Codeblock的LVGL模拟器Windows平台环境搭建 文章目录 基于Codeblock的LVGL模拟器Windows平台环境搭建 概述 一.介绍 二.使用CodeBlock版本方法以及需要 ...
- 基于Eclipse平台的Android OpenCV开发环境搭建
基于Eclipse平台的Android OpenCV开发环境搭建 作者:雨水, 日期:2016-1-31,CSDN博客:http://blog.csdn.net/gobitan 摘要:本文主要记录了如 ...
最新文章
- 【云图】如何制作附近实体店的地图?-微信微博支付宝
- mongo java client_mongodb java客户端的使用,即MongoClient
- Linux防火墙iptables学习
- Spring MVC HttpMessageConverter对象
- C#超市管理系统试题
- 如何让Element UI的Message消息提示每次只弹出一个
- find:查找文件或目录
- 【elasticsearch】elasticsearch 7 index.lifecycle.rollover_alias does not point to index
- ucdavis计算机科学专业,UCDavis的CS「加州大学戴维斯分校计算机科学专业」
- 苹果内购 订单验证 21002 坑
- Python机器学习个人总结
- ES7、ES8、ES9、ES10新特性大盘点
- 小米4c原版android哪个好,小米4c和小米4哪个好
- javascript 的七七八八
- Nature综述: 关键物种对于微生物菌群结构和功能的驱动作用
- java io流详解_一文带你看懂JAVA IO流,史上最全面的IO教学啦
- 【每天一个Python小知识】NumPy中的np.any
- ASEMI整流桥GBU1510参数,GBU1510规格,GBU1510封装
- 使用pyPdf分割pdf文档
- 【STM32F429开发板用户手册】第40章 STM32F429的LCD控制器LTDC基础知识和HAL库API