【VMCloud雲平臺】擁抱Docker(八)Mesos入門

咱們一直在說Docker是革命性的技術,那到底如何體現出它的革命性?就好像Hyper-V同樣,單一的Hyper-V無非就是虛擬機,那如何利用System Center構造一套IaaS私有云就是重頭戲了,而Docker,一個最適合做爲PaaS的載體,要利用什麼來構造它的重頭戲呢?docker

今天開始,將以全新的視角來介紹Docker如何利用Mesos+Marathon來調度Docker,本篇涉及架構以下:tomcat

環境介紹:架構

HostNametcp

IPide

Rolespa

CVM013d

*.132unix

Masterrest

CVM02server

*.21

Docker Slave

CVM03

*.118

Docker Slave

CVM04

*.10

Docker Slave


如下配置所有在Master節點與Slave節點作:

一、 登陸四臺機子,在Hostname中配置以下信息:

clip_p_w_picpath002[6]

二、 安裝Docker(能夠根據Docker安裝篇進行安裝)

clip_p_w_picpath003[6]

三、 配置Docker:

sudo vi /lib/systemd/system/docker.service


修改ExecStart以下:

ExecStart=/usr/bin/docker daemon -H fd:// -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock


四、 啓動Docker與配置Docker 用戶(Demo環境下使用root),而後進行從新加載:

sudo usermod -aG docker roo

systemctl daemon-reloadt

五、 安裝Mesos Marathon Zookeeper;

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

sudo yum -y install mesos marathon

sudo yum -y install mesosphere-zookeeper


如下配置所有在Master作:

一、 配置Zookeeper:

sudo sh -c 'echo "server.1= MasterIP:2888:3888" >> /etc/zookeeper/conf/zoo.cfg'

sudo systemctl start zookeeper

sudo systemctl enable zookeeper

二、 配置Mesos Master:

sudo sh -c 'echo "zk://MasterIP:2181/mesos" > /etc/mesos/zk'

sudo sh -c 'echo " MasterIP" > /etc/mesos-master/hostname'

sudo systemctl restart mesos-master

sudo systemctl enable mesos-master

三、 配置Marathon:

sudo mkdir -p /etc/marathon/conf

sudo sh -c 'echo "zk:// MasterIP:2181/marathon" > /etc/marathon/conf/zk'

sudo sh -c 'echo "zk:// MasterIP:2181/mesos" > /etc/marathon/conf/master'

sudo sh -c 'echo " MasterIP" > /etc/marathon/conf/hostname'

sudo systemctl restart marathon

sudo systemctl enable marathon

如下配置所有在Slave作:

配置Mesos Slave:

sudo sh -c 'echo "zk://MasterIP:2181/mesos" > /etc/mesos/zk'

sudo sh -c 'echo "docker,mesos" > /etc/mesos-slave/containerizers'

sudo sh -c 'echo "3mins" > /etc/mesos-slave/executor_registration_timeout'

sudo sh -c 'echo "SlaveIP" > /etc/mesos-slave/hostname'

sudo systemctl restart mesos-slave

sudo systemctl enable mesos-slave

驗證:

一、 在Slave節點上下載相關的Images(暫時拿consol/tomcat-7.0作實驗):

docker pull consol/tomcat-7.0

clip_p_w_picpath005[6]

二、 打開http://MasterIP:5050,檢查Slave節點是否激活成功:

clip_p_w_picpath007[6]

三、 打開http://MasterIP:8080,點擊Create Group:

clip_p_w_picpath009[6]

四、 進入剛剛建立的Group後,點擊Create Application:

clip_p_w_picpath011[6]

五、 輸入標識名稱:

clip_p_w_picpath013[6]

六、 將第一步鏡像的名字填入Docker Container:

clip_p_w_picpath015[6]

七、 將Tomcat的Ports添加到映射的Container裏,而後切到JSON Mode檢查下配置是否正確:

clip_p_w_picpath017[6]

clip_p_w_picpath019[6]

八、 點擊Create Application:

clip_p_w_picpath021[6]

這樣就完成了Docker+Mesos+Marathon架構的搭建,最終效果:

clip_p_w_picpath023[6]    
clip_p_w_picpath024[6]

clip_p_w_picpath026[6]


logo_thumb

相關文章
相關標籤/搜索