1. 程式人生 > >Mesos zookeeper marathon 多節點高可靠性部署方案

Mesos zookeeper marathon 多節點高可靠性部署方案

目錄

[TOC]來生成目錄:

Mesos 的叢集實踐

搭建mesos叢集包含以下元件,zookeeper, mesos, marathon。
如果實現服務發現,可以利用mesos-dns或者第三方元件consul。
本文主要介紹如何搭建一個多節點的穩定的mesos叢集,並分別利用mesos-dns和consul實現服務發現的方案。

搭建mesos叢集之前先要搭建一個zookeeper叢集,可以是單節點也可以多節點,目的是利用zookeeper叢集儲存mesos節點的資訊。本文搭建3個節點的zookeeper叢集

1. 搭建3節點的zookeeper叢集

$ tar -zxvf
zookeeper-3.4.9.tar.gz -C /usr/local $ cp /usr/local/zookeeper-.3.4.9/conf/zoo_sample.cfg /usr/local/zookeeper-3.4.9/conf/zoo.cfg $ vim /usr/local/zookeeper-3.4.9/conf/zoo.cfg dataDir=/usr/local/zookeeper-3.4.9/data dataLogDir=/usr/local/zookeeper-3.4.9/log server.1=<zookeeper_ip_01>:2888:3888 server.2=<zookeeper_ip_02>
:2888:3888 server.3=<zookeeper_ip_03>:2888:3888 $ mkdir /usr/local/zookeeper-3.4.9/data $ mkdir /usr/local/zookeeper-3.4.9/log

注意:
Server.A = B:C:D
A表示zookeeper節點的編號, B表示對應主機節點的IP, C表示leader節點與其他follower節點交換資訊的埠號,D表示當現在的leader節點down掉之後,所有節點互相通訊選擇新的leader節點時通訊的埠。

分別在3臺主機節點上編輯myid檔案, 第一行在主機zookeeper_ip_01上執行,第二行在主機zookeeper_ip_02上執行,第三行在主機zookeeper_ip_03上執行

$ echo 1 > /usr/local/zookeeper-3.4.9/data/myid 
$ echo 2 > /usr/local/zookeeper-3.4.9/data/myid 
$ echo 3 > /usr/local/zookeeper-3.4.9/data/myid 

啟動zookeeper叢集,並檢視叢集狀態。

$ cd /usr/local/zookeeper-3.4.9/bin
$ ./zkServer.sh start
$ ./zkServer.sh status

2. 搭建3節點的mesos叢集

下載mesos安裝包 http://mesos.apache.org/downloads
本文用的mesos-1.1.0
在所有節點上編譯並安裝mesos
首先解壓mesos原始碼包到/opt目錄,然後下載編譯mesos所需的依賴包

$ tar -zxvf mesos-1.1.0.tar.gz -C /opt
$ apt-get update
$ apt-get install -y tar wget git
$ apt-get install -y openjdk-8-jdk
$ apt-get install build-essential python-dev libcurl4-nss-dev libsasl2-dev libsasl2-modules maven libapr1-dev libsvn-dev zlib1g-dev

編譯mesos

$ cd /opt/mesos-1.1.0
$ mkdir build
$ mkdir /usr/local/mesos
$ cd build
$ ../configure --prefix=/usr/local/mesos
$ make
$ make install

編譯完成之後,需要在每個節點上配置些資訊。
在每個節點上建立 masters, slaves檔案

$ vim /usr/local/mesos/etc/mesos/masters
master_ip_01
master_ip_02
master_ip_03

$ vim /usr/local/mesos/etc/mesos/slaves
slave_ip_01
slave_ip_02
slave_ip_03

在所有master節點上配置mesos-master-env.sh

$ vim /usr/local/mesos/etc/mesos/mesos-master-env.sh

export MESOS_log_dir=/var/log/mesos
export MESOS_work_dir=/var/lib/mesos
export MESOS_cluster=Mesos-Cluster
export MESOS_zk=zk://<zookeeper_ip_01>:2181,<zookeeper_ip_02>:2181,<zookeeper_ip_03>:2181/mesos
export MESOS_quorum=3

在所有的slave(agent)節點上配置mesos-agent-env.sh

export MESOS_log_dir=/var/log/mesos
export MESOS_work_dir=/var/lib/mesos
export MESOS_containerizers=docker,mesos
export MESOS_master=zk://<zookeeper_ip_01>:2181,<zookeeper_ip_02>:2181,<zookeeper_ip_03>:2181/mesos

配置完成之後,需要在每個master和slave(agent)節點上配置免金鑰登入,方便啟動mesos叢集,否則還需要輸入每個節點的密碼。

$ ssh-keygen

在每個主機上生成公私鑰之後,將自己的公鑰 ~/.ssh/id_rsa.pub 拷貝到其他所有節點的~/.ssh/authorized_keys

然後就可以啟動mesos叢集了。

$ cd /usr/local/mesos
$ ./sbin/mesos-start-cluster.sh

3. 部署marathon叢集

$ tar -zxf marathon-1.3.9.tgz -C /usr/local

啟動marathon

$ MESOS_NATIVE_JAVA_LIBRARY=/usr/local/mesos/lib/libmesos.so ./bin/start --master zk://<zookeeper-ip-01>:2181,<zookeeper-ip-02>:2181,<zookeeper-ip-03>:2181/mesos --zk zk://<zookeeper-ip-01>:2181,<zookeeper-ip-02>:2181,<zookeeper-ip-03>:2181/marathon >> /var/log/marathon.log 2>&1 &

相關推薦

Mesos zookeeper marathon 節點可靠性部署方案

目錄 用 [TOC]來生成目錄: Mesos 的叢集實踐 搭建mesos叢集包含以下元件,zookeeper, mesos, marathon。 如果實現服務發現,可以利用mesos-dns或者第三方元件consul。 本文主要介紹如何搭建一個多

Mesos+Zookeeper+Marathon的Docker管理平臺部署記錄(2)--負載均衡marathon-lb

[[email protected] ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS

Mesos+Zookeeper+Marathon的Docker管理平臺部署記錄(1)

隨著"網際網路+"時代的業務增長、變化速度及大規模計算的需求,廉價的、高可擴充套件的分散式x86叢集已成為標準解決方案,如Google已經在幾千萬臺伺服器上部署分散式系統。Docker及其相關技術的出現和發展,又給大規模叢集管理帶來了新的想象空間。如何將二者進行有效地結合?下面將記錄使用Mesos+Zoo

部署Mesos+zookeeper+Marathon+Docker實戰

結果 executor disco client lower key 伸縮 python 開發 Mesos是什麽? Mesos是Apache下的開源分布式資源管理框架,它被稱為是分布式系統的內核。Mesos能夠在同樣的集群機器上運行多種分布式系統類型,更加動態有效率低共享資

節點可用Eureka叢集配置與部署

前言 上一節講的是動態擴容Eureka服務,說實話,一般情況這種操作並不多,一般多用在,由於大量服務節點部署後給Eureka造成壓力突然積增,而解決的辦法。這節講的是一次啟動或部署,直接就是叢集多節點的,多用於服務節點相對穩定的場景。還有筆者這裡有實際部署和應用的經驗分享給大家,就是,我目前25

Mesos+ZooKeeper+Marathon+Docker分散式部署打造PaaS雲平臺實踐(一)

【編者的話】本文先給出一個分散式部署的過程,在完成這種分散式部署的過程花費了我一個週末的時間,因為國內幾乎沒有找到分散式部署的實踐過程記錄,希望我的實踐過程能夠給有興趣的小夥伴在進行分散式部署中提供一定的幫助。最近開始對Mesos非常的感興趣,Mesos和Docker一樣是一

【Docker篇四】Mesos+Zookeeper+Marathon+Docker實戰實驗

開發工具 簡化 mark too 資源調度 ext 網絡 上線 root Apache Mesos概述 不同的分布式運算框架(spark,hadoop,ES,MPI,Cassandra,etc.)中的不同任務往往需要的資源(內存,CPU,網絡IO等)不同,它們運行在同一個集

Yum安裝mesos+zookeeper+marathon管理docker集群

tick datadir 參加 重定向 狀態信息 實現 官方 tro ln -s Yum安裝mesos+zookeeper+marathon管理docker集群 Apache-Mesos簡介 Apache-Mesos是一款基於多資源(內存、CPU、磁盤、端口等)調度的開源

hadoop2.7x可用部署方案(+zookeeper

hadoop高可用的部署,需要有2個namenode,一個是active的,一個是standby的,兩個namenode需要有一個管理員來管理,來決定決定誰active,誰standby,如果處於active狀態的的namenode壞了,立即啟動standby狀態的namenode。這個管理員就是z

Hyperledger Fabric 1.0 從零開始(八)——Fabric節點叢集生產部署

6.1、平臺特定使用的二進位制檔案配置 該方案與Hyperledger Fabric 1.0 從零開始(五)——執行測試e2e類似,根據企業需要,可以控制各節點的域名,及聯盟鏈的統一域名。可以指定單獨節點的訪問,生成指定的公私鑰、證書等檔案。具體的引數配置可以參考generateArtifacts.sh檔案,

乾貨 | 超級賬本Fabric 1.0 節點叢集的部署(1)

題圖攝於廣州:獵德橋珠江畔超級賬本 Fabric 1.0即將揭開面紗,社群使用者對此充滿期待。為

Mesos+Zookeeper+Marathon+Docker分散式叢集管理最佳實踐

目錄 Mesos簡介 Zookeeper簡介 Marathon簡介 docker叢集實踐 Mesos叢集部署 一、Mesos簡介 Mesos是Apache下的開源分散式資源管理框架,它被稱為分散式系統的核心。Mesos最初是由加州大學伯克利分校

zookeeper單機例項和分散式部署的步驟

介紹zookeeper單機多例項部署(實驗性質)以及生產環境的分散式部署 1. 準備工作:    1)需要linux環境,推薦用ubuntu的系統。學習的話使用oracle的virtual box安裝虛擬機器,網上找下安裝文件就可以裝好了,而生產環境一般都會裝好的。ub

Keystone 可靠性部署與效能測試

    daemon     log 127.0.0.1 local3   defaults     maxconn 4000     log     global     timeout server 10s     timeout connect 10s     timeout client 10s  

MySQL5.6 雙機HA可用部署方案

注:主、備機只有ucast一個引數不一樣。 8、新增資源配置檔案 vi /etc/ha.d/haresources mysql1 192.168.2.9/24/eth0:1 Filesystem::/dev/sdb1::/hadata::ext4 mysqld 注:主、備機的設定一致。 9、新增認證檔

Openstack 可靠部署方案

根據服務自身狀況,HA 分為 Active/Active 和 Active/Passive 兩種     Active/Active:   適合於 stateless/stateful 服務,常用 load balance + keepalive(VIP) 配置 HA

spring cloud + mybatis 分布式 微服務 b2b2c 商戶商城 全球部署方案

library nsh ger 聲明式 add demo 三方 copyright print   用java實施的電子商務平臺太少了,使用spring cloud技術構建的b2b2c電子商務平臺更少,大型企業分布式互聯網電子商務平臺,推出PC+微信+APP+雲服務的雲商平

Pod在可用區worker節點上的可用部署

開發十年,就只剩下這套架構體系了! >>>   

節點 安裝redis cluster安裝部署-4.0.1

redis cluster 4.0 安裝、配置 環境節點數量IP:172.17.7.11 CPU :12 核 MEM:96G 啟動服務數量:6 使用端口:7001~12IP:172.17.7.25 CPU :12 核 MEM:96G 啟動服務數量:6 使用端口:70

在單機上使用Kubeadm-dind 部署節點k8s叢集

     近幾年Google的Kubernetes(簡稱k8s)已經成為分散式容器編排和管理領域事實上的標準,在基於容器的微服務架構下的分散式應用開發、部署和運維管理等領域,會有越來越多的使用者部署和使用k8s平臺。對於初學著來說,部署一個多機k8s叢集一來缺少環境、另