你好,游客 登录 注册 搜索
背景:
阅读新闻

CentOS 7中Mesos+Zookeeper+Marathon安装部署全程详解

[日期:2017-03-07] 来源:Linux社区  作者:鸢沫是只猫 [字体: ]

注意,以下安装过程均是在CentOS 7中root下完成,如果是普通用户,用sudo提权的方式安装。

一、环境

1、配置三台服务器,三个mesos-master节点,三个slave节点,我用测试IP

主机名 IP地址 所安装的服务
mesos-node1 eth0:192.168.10.227

mesos-master,mesos-slave,marathon,

zookeeper,haproxy

mesos-node2 eth0:192.168.10.228 mesos-master,mesos-slave,marathon,zookeeper,haproxy
mesos-node3 eth0:192.168.10.229 mesos-master,mesos-slave,marathon,zookeeper,haproxy

2、查看内核版本

[root@mesos-node1 ~]# cat /etc/RedHat-release
 CentOS Linux release 7.2.1511 (Core)
 [root@mesos-node1 ~]# uname  -r
 3.10.0-327.el7.x86_64
 [root@mesos-node1 ~]# uname  -a
 Linux mesos-node1 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
 [root@mesos-node1 ~]#

注意以下部分在三台服务器上都要执行

3、关闭SELinux

【临时】

[root@mesos-node1 ~]]# setenforce 0
 [root@mesos-node1 ~]]# getenforce
 Permissive

【永久】

 更改配置文件/etc/selinux/config 将SELINUX=enforcing修改为SELINUX=disabled重启生效,如果不想重启就将上面临时修改的也执行一次。

4、关闭防火墙

systemctl stop firewalld

5、配置host解析

[root@mesos-node1 ~]# cat /etc/hosts
 127.0.0.1  localhost localhost.localdomain localhost4 localhost4.localdomain4
 ::1        localhost localhost.localdomain localhost6 localhost6.localdomain6
 192.168.10.227    mesos-node1 
 192.168.10.228    mesos-node2 
 192.168.10.229    mesos-node3 
 [root@mesos-node1 ~]#

二、部署docker

1、利用yum安装docker

yum install docker

2、启动docker

systemctl start docker.service

3、加入开机自启动服务

systemctl enable docker.service

4、创建docker用户组,避免使用sudo

usermod -aG docker lcm

三 、部署zookeeper

1、安装Java

yum install -y java

2、查看Java版本

 [root@mesos-node1 ~]# java -version
 openjdk version "1.8.0_121"    #<=====OpenJDK1.8
 OpenJDK Runtime Environment (build 1.8.0_121-b13)
 OpenJDK 64-Bit Server VM (build 25.121-b13, mixed mode)
 [root@mesos-node1 ~]#

3、进入源码安装目录下载zookeeper稳定版3.4.9并安装

cd /usr/local/src/
 wget http://mirrors.cnnic.cn/apache/zookeeper/stable/zookeeper-3.4.9.tar.gz
 tar xf zookeeper-3.4.9.tar.gz
 mv zookeeper-3.4.9 /usr/local/

4、创建软连接,方便以后升级时用

ln -s /usr/local/zookeeper-3.4.9/ /usr/local/zookeeper

5、修改zookeeper配置文件,只修改一个,然后分发到其他两台上

cd /usr/local/zookeeper/conf
 mv zoo_sample.cfg zoo.cfg
 [root@mesos-node1 ~]# grep "^[a-z]" zoo.cfg
 tickTime=2000
 initLimit=10
 syncLimit=5
 dataDir=/usr/local/zookeeper/data
 dataLogDir=/usr/local/zookeeper/logs
 clientPort=2181
 server.1=mesos-node1:2888:3888
 server.2=mesos-node2:2888:3888
 server.3=mesos-node3:2888:3888
 [root@mesos-node1 ~]#

6、创建dataDir和dataLogDir目录

mkdir -p /usr/local/zookeeper/data /usr/local/zookeeper/logs

7、在三台服务器上创建myid文件,里面的数据要和配置文件里面的server.后面的数字一样,表示这是第几台服务器

echo "1" >/usr/local/zookeeper/data/myid
echo "1" >/usr/local/zookeeper/data/myid
echo "1" >/usr/local/zookeeper/data/myid

8、启动zookeeper

cd  /usr/local/zookeeper
./bin/zkServer.s start

9、查看角色状态

./bin/zkServer.sh status

可以看到两个follower,一个 leader

10、尝试连接zookeeper

 ./bin/zkCli.sh  #<=====连接当前zookeeper
 ./bin/zkCli.sh  -server 192.168.10.228:2181  #<======连接远程zookeeper
 [zk: 192.168.10.228:2181(CONNECTED) 0] ls /      #<======可以用ls /查看
 [zookeeper]
 [zk: 192.168.10.228:2181(CONNECTED) 1]

OK,zookeeper安装成功,接下来安装mesos

三、mesos+marathon集群部署

1、安装mesosphere仓库

rpm -ivh http://repos.mesosphere.com/el/7/noarch/RPMS/mesosphere-el-repo-7-1.noarch.rpm

2、安装mesos和marathon

yum -y install mesos marathon

3、增加zookeeper配置

 [root@mesos-node1 ~]#  cat /etc/mesos/zk
 zk://192.168.10.227:2181,192.168.10.228:2181,192.168.10.229:2181/mesos
 [root@mesos-node1 ~]#

4、配置mesos-hostname

 echo 本地IP地址 | tee /etc/mesos-master/ip
 echo 本地IP地址 | tee /etc/mesos-master/hostname
 echo 本地IP地址 | tee /etc/mesos-slave/ip
 echo 本地IP地址 | tee /etc/mesos-slave/hostname
 echo 2 > /etc/mesos-master/quorum  #这个数字要大于安装的master节点的总数的0.5倍,即一半

5、配置mesos-master slave marathon开机自启动并启动

systemctl enable mesos-master mesos-slave marathon
systemctl start mesos-master mesos-slave marathon

6、在浏览器打开任意一台服务的mesos

http://192.168.10.227:5050/

7、如果出现下面的界面,安装成功

8、运行一个mesos任务来测试

MASTER=$(mesos-resolve `cat /etc/mesos/zk`)  #<=====获取主服务器的IP地址
 mesos-execute --master=$MASTER --name="cluster-test"--command="sleep 60"  #如果没有发现任务在运行,可尝试修改--name="cluster-test",这个名字可以随意起

9、打开浏览器查看

至此环境已经搭建成功

更多详情见请继续阅读下一页的精彩内容http://www.linuxidc.com/Linux/2017-03/141478p2.htm

linux
相关资讯       Marathon  ZooKeeper  Mesos 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款