How To Configure a Production-Ready Mesosphere Cluster on Ubuntu 14.04(1)

介紹

Mesosphere 是一個存在于操作系統(tǒng)層之上的結(jié)合各種有效管理服務(wù)集群和高可用部署的系統(tǒng)。有別于像CoreOS操作系統(tǒng),Mesosphere 不是一個專門的操作系統(tǒng),取而代之的是一系列包。

在這篇指南中,我們將回顧如何在Mesosphere上配置高可用集群。這些配置將向我們介紹任何一個master節(jié)點down掉和池里面的slave被安排接管任務(wù)的故障切換。

這篇指導(dǎo)中我們使用的ubuntu 14.04 服務(wù)器

先決條件和目標

在你完成這篇指導(dǎo)之前,強烈推薦你回顧下我們關(guān)于Mesosphere的介紹。這是你熟悉系統(tǒng)組成組件和協(xié)助你鑒別每個部件職責(zé)的有效途徑。

在這篇教程中,我們將使用6臺ubuntu服務(wù)器。遵從Apache Mesos推薦生產(chǎn)環(huán)境至少有三個master。提供有三個worker或者slave server,用于任務(wù)被發(fā)到集群的工作分配。

這六個服務(wù)器使用zookeeper保持與現(xiàn)任的master服務(wù)器leader聯(lián)系。Mesos層,處于之上,將提供分布式同步和資源交付。它也有責(zé)任管理集群。Marathon,集群分布式初始化系統(tǒng),被用于調(diào)度任務(wù)和交付工作給slave服務(wù)器。

因為指導(dǎo)的緣故,我們將分配有如下配置的服務(wù)器:

主機名 功能 IP地址

master1 ?Mesos master 192.0.2.1

master2 ?Mesos master 192.0.2.2

master3 ?Mesos master 192.0.2.3

slave1 ?Mesos slave ?192.0.2.51

slave2 ?Mesos slave ?192.0.2.52

slave3 ?Mesos slave ?192.0.2.53

每個機器應(yīng)已安裝Ubuntu 14.04。你想完成基本配置項羅列在Ubuntu 14.04初始服務(wù)安裝指導(dǎo)

當(dāng)你完成以上步驟,繼續(xù)轉(zhuǎn)到這篇指導(dǎo)。

在服務(wù)器上安裝Mesosphere

第一步開啟集群并運行安裝軟件。幸運的是,Mesosphere項目維護了一個便于安裝Ubuntu最新軟件包的倉庫。

添加Mesosphere倉庫到你的主機上

在所有主機上(masters和slaves),完成如下步驟。

首先,添加Mesosphere源到源列表。這個過程包括下載Mesosphere項目的來自Ubuntu 密鑰服務(wù)器的密鑰,然后給我們的Ubuntu版本制作正確的URL。項目提供了一個做這件事的方便方法:

sudoapt-key adv --keyserver keyserver.ubuntu.com --recv E56151BFDISTRO=$(lsb_release -is | tr'[:upper:]''[:lower:]')CODENAME=$(lsb_release -cs)echo"deb http://repos.mesosphere.io/${DISTRO}${CODENAME}main"|sudotee /etc/apt/sources.list.d/mesosphere.list

Install the Necessary Components

在你已經(jīng)把Mesosphere倉庫添加到你的系統(tǒng)之后,你需要更新你本地包緩存獲取新組件的使用權(quán):

sudoapt-get -y update

接下來,你需要安裝依賴包。你需要什么組件取決于你主機的角色,對于你的master主機,你需要Mesosphere meta包。包括走哦客片兒,mesos,marathon,和chromos應(yīng)用。

sudoapt-get install mesosphere

在你的slave 主機上,你僅僅需要mesos包,也作為依賴拉入zookeeper:

sudoapt-get install mesos

設(shè)置Mesos的Zookeeper連接信息

第一件要去做的十佳球是配置我們的zookeeper連接信息。這是允許我們主機連接到正確master服務(wù)器的底層,所以從這里開始是在情理之中的。

我們的master服務(wù)器將是zookeeper集群的唯一成員,但是所有我們的服務(wù)器需要能使用協(xié)議通信的配置。定義這個的文件是/etc/mesos/zk.

在你所有的主機上,完成下列步驟。使用root權(quán)限打開文件:

sudo nano /etc/mesos/zk

在文件里面,找到連接由默認接入本地實例的URL。看起來像這樣:

zk://localhost:2181/mesos

我們需要修改這個指向我們的三個master服務(wù)器。替換localhost成我們的第一個Mesos master的IP地址。我們在端口后加一個逗號,相同格式添加我們的第二個和第三個master到列表中。

因為在指南中,我們的master IP地址是192.0.2.1,192.168.2.2, and192.168.2.3.我們的配置文件將是這樣的:

zk://192.0.2.1:2181,192.0.2.2:2181,192.0.2.3:2181/mesos

行必須以zk://開頭,/mesos結(jié)尾。中間是你的master服務(wù)器的IP地址和zookeeper端口(默認是2181)。

完成后保存和關(guān)閉文件。

使用完全相同的條目在每一個master和slave中。這將幫助每個獨立的服務(wù)器連接到正確的master服務(wù)器使之與集群通信。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容