1. 程式人生 > >centos7 安裝配置mesos+marathon+zookeeper[轉]

centos7 安裝配置mesos+marathon+zookeeper[轉]

轉自[https://www.aliyun.com/jiaocheng/808317.html?spm=5176.100033.2.10.16a44b6dWi2tUU]

  • 摘要:1,mesos介紹Mesos誕生於UCBerkeley的一個研究專案,現已成為ApacheIncubator中的專案。Mesos計算框架一個叢集管理器,提供了有效的、跨分散式應用或框架的資源隔離和共享,可以執行Hadoop、MPI、Hypertable、Spark。使用ZooKeeper實現容錯複製,使用LinuxContainers來隔離任務,支援多種資源計劃分配。總體架構ApacheMesos由四個元件組成,分別是Mesos-master,mesos-slave,fram

  • 1,mesos介紹 

    Mesos誕生於UC Berkeley的一個研究專案,現已成為Apache Incubator中的專案。Mesos計算框架一個叢集管理器,提供了有效的、跨分散式應用或框架的資源隔離和共享,可以執行Hadoop、MPI、Hypertable、Spark。使用ZooKeeper實現容錯複製,使用Linux Containers來隔離任務,支援多種資源計劃分配。

     

    總體架構 Apache Mesos由四個元件組成,分別是Mesos-master,mesos-slave,framework和executor。

     

    mesos中的基本術語解釋

     

    (1)Mesos-master:

     

    是整個系統的核心,負責管理接入mesos的各個framework(由frameworksmanager管理)和slave(由slavesmanager管理),並將slave上的資源按照某種策略分配給framework(由獨立插拔模組Allocator管理)。

     

    (2)Mesos-slave:

     

    負責接收並執行來自mesos-master的命令、管理節點上的mesos-task,併為各個task分配資源。mesos-slave將自己的資源量傳送給mesos-master,由mesos-master中的Allocator模組決定將資源分配給哪個framework,當前考慮的資源有CPU和記憶體兩種,也就是說,mesos-slave會將CPU個數和記憶體量傳送給mesos-master,而使用者提交作業時,需要指定每個任務需要的CPU個數和記憶體量,這樣,當任務執行時,mesos-slave會將任務放到包含固定資源的linux container中執行,以達到資源隔離的效果。

     

    (3)Framework:

     

    是指外部的計算框架,如Hadoop,Mesos等,這些計算框架可通過註冊的方式接入mesos,以便mesos進行統一管理和資源分配。Mesos要求可接入的框架必須有一個排程器模組,該排程器負責框架內部的任務排程。當一個framework想要接入mesos時,需要修改自己的排程器,以便向mesos註冊,並獲取mesos分配給自己的資源, 這樣再由自己的排程器將這些資源分配給框架中的任務,也就是說,整個mesos系統採用了雙層排程框架:

     

    (4)Executor:

     

    執行器,安裝到mesos-slave上,用於啟動計算框架中的task。


    2,安裝 
    2.1環境介紹 

    核心版本:


    [email protected] ~]# uname -a 
    Linux localhost.localdomain 3.10.0-514.6.1.el7.x86_64 #1 SMP Wed Jan 18 13:06:36 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

    系統版本:


    [email protected] ~]# more /etc/redhat-release 
    CentOS Linux release 7.3.1611 (Core)

    docker版本:


    [email protected] ~]# docker --version 
    Docker version 1.12.5, build 047e51b/1.12.5

    mesos版本:


    [email protected] ~]# rpm -qa |grep mesos 
    mesosphere-el-repo-7-1.noarch 
    mesos-1.1.0-2.0.107.centos701406.x86_64 
    mesosphere-zookeeper-3.4.6-0.1.20141204175332.centos7.x86_64 
    [email protected] ~]# rpm -qa |grep marathon 
    marathon-1.4.1-1.0.633.el7.x86_64

    叢集伺服器功能介紹:

     

    10.1.13.214(master) mesos-master,marathon,zookeeper

     

    10.1.13.211 (slave01)mesos-slave

     

    10.1.13.213 (slave02)mesos-slave

     

    由於mesos的master和slave節點之間是通過zookeeper進行關聯通訊的,而且zookeeper建議master至少是三個節點,這裡測試用一個也可以


    2.2安裝前準備 

    所有伺服器上設定

     

    修改yum源,所有機器都要做


    #mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.default 
    #wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 
    #yum makecache

    新增mesosphere源


    #rpm -Uvh http://repos.mesosphere.io/el/7/noarch/RPMS/mesosphere-el-repo-7-3.noarch.rpm 
    #rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-mesosphere

    配置ssh免密碼登陸

     

    關閉防火牆


    #systemctl stop firewalld 
    #systemctl disable firewalld

    關閉selinux


    #vi /etc/selinux/config 
    #SELINUX=enforcing#註釋掉 
    #SELINUXTYPE=targeted#註釋掉 
    SELINUX=disabled#增加 
    #setenforce 0 命令列關閉selinux2.3 zookeeper安裝 

    只在10.1.13.214上安裝配置

     

    java環境安裝配置


    #wget http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.tar.gz 
    #tar zxvf jdk-8u121-linux-x64.tar.gz 
    #mkdir /usr/java 
    #mv jdk1.8.0_121 /usr/java/

    zookeeper 安裝配置

     

    安裝方法1


    安裝 
    #wget http://apache.fayea.com/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz 
    #tar zxvf zookeeper-3.4.9.tar.gz 
    #mv zookeeper-3.4.9 /usr/local/ 
    #mv /usr/local/zookeeper-3.4.9 /usr/local/zookeeper 
    配置 
    #cd /usr/local/zookeeper 
    #cp zoo_sample.cfg zoo.cfg 
    #vi zoo.cfg 
    dataDir=/usr/local/zookeeper/data #資料目錄,如果沒有需要新建此目錄 
    dataLogDir=/usr/local/zookeeper/logs #日誌目錄,如果沒有需要新建此目錄 
    如果是單機安裝配置zookeeper,以下配置可忽略 
    server.0=10.1.13.214:2888:3888 
    server.1=10.1.13.215:2888:3888 
    server.2=10.1.13.216:2888:3888 
    叢集模式需要新增以下 
    #vi /user/local/zookeeper/data/myid 
    #建立myid檔案,並編輯它,編輯的內容就是配置檔案中server.後面跟著的號數。例如目前是在slave0機器上,則在myid檔案中寫入0 

    修改zookeeper輸出日誌檔案位置 
    如果不做修改,預設zookeeper的日誌輸出資訊都列印到了zookeeper.out檔案中,這樣輸出路徑和大小沒法控制,因為日誌檔案沒有輪轉。所以需要修改日誌輸出方式。具體操作如下: 
    1、修改$ZOOKEEPER_HOME/bin目錄下的zkEnv.sh檔案,ZOO_LOG_DIR指定想要輸出到哪個目錄,ZOO_LOG4J_PROP,指定INFO,ROLLINGFILE的日誌APPENDER. 
    2、建立日誌輸出資料夾 
    #mkdir -p /var/log/zookeeper 
    #chmod 755 /var/log/zookeeper 
    3,修改zkEnv.sh 
    #vi /usr/local/zookeeper/bin/zkEnv.sh 
    ... 
    56 ZOO_LOG_DIR="/var/log/zookeeper" #指定想要輸出到哪個目錄 
    ... 
    61 ZOO_LOG4J_PROP="INFO,ROLLINGFILE"#ROLLINGFILE的日誌APPENDER. 
    ... 
    4、修改$ZOOKEEPER_HOME/conf/log4j.properties檔案的:zookeeper.root.logger的值與前一個檔案的ZOO_LOG4J_PROP 保持一致,該日誌配置是以日誌檔案大小輪轉的,如果想要按照天輪轉,可以修改為DaliyRollingFileAppender. 
    5,修改log4j.properties 
    # vim /usr/local/zookeeper/conf/log4j.properties 
    ... 
    2 zookeeper.root.logger=INFO, ROLLINGFILE#值與前一個檔案的ZOO_LOG4J_PROP 
    ... 
    53 log4j.appender.TRACEFILE=org.apache.log4j.RollingFileAppender#如果想要按照天輪轉,可以修改為DaliyRollingFileAppender 
    ...

    環境變數配置


    #vi /etc/profile 
    export ZOOKEEPER_HOME=/usr/local/zookeeper 
    export JAVA_HOME=/usr/java/jdk1.8.0_121 
    export JRE_HOME=${JAVA_HOME}/jre 
    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
    export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$ZOOKEEPER_HOME/bin 
    #source /etc/profile

    啟動 zookeeper 服務


    #cd /user/local/zookeeper/bin 
    #zkServer.sh start

    安裝方法2 (本文件使用該方法)


    #yum install mesosphere-zookeeper 
    zookeeper啟動檔案在/opt/mesosphere/zookeeper/bin下,配置檔案在/etc/zookeeper/zoo.cfg 
    配置同上2.4 mesos-master 配置 

    只在10.1.13.214上配置

     

    安裝mesos-master


    #yum install mesos

    配置mesos


    [email protected] ~]# cat /etc/mesos/zk 
    zk://10.1.13.214:2181/mesos

    如果是多臺master+zookeeper


    [email protected] ~]# cat /etc/mesos/zk 
    zk://10.1.13.214:2181/mesos,zk://10.1.13.214:2181/mesos,zk://10.1.13.214:2181/mesos 
    echo 2 > /etc/mesos-master/quorum 
    #如果有5要master+zookeeper 
    #echo 4 > /etc/mesos-master/quorum 
    給每臺master起名字 
    master1: echo 10.1.13.214 | sudo tee /etc/mesos-master/hostname 
    master2: echo 10.1.13.215 | sudo tee /etc/mesos-master/hostname 
    master3: echo 10.1.13.216 | sudo tee /etc/mesos-master/hostname

    啟動master服務


    #systemctl stopmesos-slave 
    #systemctl restart mesos-master 
    #systemctl status mesos-master 
    #systemctl enable mesos-master

    服務啟動後,可以通過瀏覽器訪問檢視系統資訊: http://10.1.13.214:5050/


    2.5 mesos-marathon安裝配置 

    Marathon 的其它重要特性還包括:

    支援零停機時間部署,包括滾動部署、藍綠部署與金絲雀部署模式。

     

    基於 HTTP、TCP 以及命令之應用程式執行狀態檢查。

     

    指標傳送與收集整合(包括 Graphite、DataDog 以及StatsD)。

     

    具備一套強大的事件匯流排,使得 DevOps 人員以程式設計化方式通過定製化模式實現應用程式變更響應。

     

    具備用於應對網路與節點故障的彈性,且同時適用於 Marathon 本身及其管理的應用程式。

     

    包括使用者認證以及基於角色訪問控制在內的多種安全功能。

     

    採用一套靈活的外掛架構,使得外掛能夠被定製化整合至現有企業IT環境當中。

    只在10.1.13.214上配置

     

    安裝mesos-marathon


    #yum install marathon

    配置mesos-marathon

     

    建立下他的配置檔案的路徑(yum裝的沒給我們建立)


    #mkdir -p /etc/marathon/conf/ &;&; touch hostname 
    #echo 10.1.13.214 | sudo tee /etc/marathon/conf/hostname

    啟動服務,新增開機啟動


    #systemctl start marathon 
    #systemctl status marathon 
    #systemctl enable marathon

    訪問驗證

     

    http://10.1.13.214:8080


    2.6 chronos安裝配置 

    chronos介紹

     

    Chronos 是一個具備容錯特性的作業排程器,可處理依賴性和基於 ISO8601 的排程。Chronos 是由 Airbnb 公司推出的用來替代 cron 的開源產品。你可以用它來對作業進行編排,支援使用 Mesos 作為作業執行器,支援和 Hadoop 進行互動。可定義作業執行完成後的觸發器。支援任意長度的依賴鏈。

     

    原理

     

    chronos以framework身份接入Mesos,支援zookeeper選舉高可用,同時將所有的定時任務配置儲存在zookeeper裡。

     

    chronos的工作流程描述如下:

     

    1,從zk獲取全部的任務列表。

     

    2,以scheduler身份接入到mesos,分析任務的執行依賴。

     

    3,分析出需要立即執行的任務和暫時不需要執行的任務。

     

    4,將需要立即執行的任務放入執行佇列,等待mesos offer足夠的資源。

     

    5,等待執行佇列中的一個任務被執行,再次回到步驟1。

     

    只在10.1.13.214上配置

     

    安裝chronos


    #yum -y install chronos

    啟動服務,新增開機啟動


    #systemctl start chronos 
    #systemctl status chronos 
    #systemctl enablechronos

    訪問驗證

     

    http://10.1.13.214:4400


    2.7 mesos-slave 安裝配置 

    在mesos-slave伺服器上操作

     

    mesos-slave伺服器:

     

    10.1.13.211

     

    10.1.13.213

     

    安裝mesos-slave


    #yum install mesos

    配置例項


    #touch /etc/mesos-slave/hostname 
    #echo 10.1.13.211 | sudo tee /etc/mesos-slave/hostname

    ZooKeeper設定


    # vi /etc/mesos/zk 
    zk://10.1.13.214:2181/mesos

    客戶端埠設定


    #echo 5051 > /etc/mesos-slave/port

    配置mesos-slave


    注意:引數來containerizers的順序很重要。它指定選擇containerizer啟動任務時使用的優先順序。 
    #echo 'docker,mesos' > /etc/mesos-slave/containerizers 
    slave 執行超時時間 
    #echo '5mins' > /etc/mesos-slave/executor_registration_timeout

    啟動服務,新增開機啟動


    #systemctl stopmesos-master 
    #systemctl start docker 
    #systemctl startmesos-slave 
    #systemctl status mesos-slave 
    #systemctl enable mesos-slave

    報錯日誌檢視命令


    #journalctl -f -umesos-slave2.8 mesos-dns安裝配置 

    mesos-dns介紹

     

    Mesos-DNS用來支援Mesos叢集上的服務發現,使執行在Mesos上的應用和服務可以通過域名伺服器來發現彼此。你只要知道一個Mesos資料中心上執行的應用的名字,就可以通過Mesos-DNS查詢到該應用的IP和埠號。

     

    Mesos-DNS定期去查詢Mesos master,監測所有framework上執行的所有任務,並生成這些任務的DNS記錄(包括A記錄和SRV記錄)。當Mesos叢集上的任務發生啟動、結束、重啟等狀態變化時,Mesos-DNS都會更新DNS記錄,以保持最新的狀態。

     

    Mesos-DNS不需要與framework互動,只需要在啟動的時候指向Mesos master即可。執行在Master Slave上的應用和服務,可以通過查詢Mesos-DNS來發現它們依賴的應用和服務的IP和埠號。

     

    對於那些非Mesos任務的DNS解析請求,Mesos-DNS自己解析不了,通常使用一個擴充套件DNS伺服器,將這些請求轉發到擴充套件DNS服務來解析即可。

     

    slave上操作

     

    mesos-dns安裝

     

    Mesos-DNS不需要編譯安裝,從https://github.com/mesosphere/mesos-dns/releases直接獲取二進位制檔案即可


    #mkdir /usr/local/mesos-dns 
    #cd /usr/local/mesos-dns 
    #curl -o mesos-dns https://github.com/mesosphere/mesos-dns/releases/download/v0.6.0/mesos-dns-v0.6.0-linux-amd64 
    #chmod +x mesos-dns

    mesos-dns配置

     

    編寫json配置檔案,mesos-dns啟動時需要指定一個json的配置檔案,這個配置檔案裡指定了Mesos master、域名等所需要的引數


    #vim /usr/local/mesos-dns/config.json 

    "zk": "zk://10.1.13.214:2181/mesos", #單機 
    "zk": "zk://10.1.13.214:2181,10.1.13.215:2181,10.1.13.216:2181/mesos", #單機 
    "masters": ["10.1.13.214:5050"], #單機 
    "masters": ["10.1.13.214:5050","10.1.13.215:5050","10.1.13.216:5050"], #多機 
    "refreshSeconds": 60, 
    "ttl": 60, 
    "domain": "mesos", 
    "port": 53, 
    "resolvers": ["8.8.8.8"], 
    "timeout": 5, 
    "httpon": true, 
    "dnson": true, 
    "httpport": 8123, 
    "externalon": true, 
    "listener": "10.1.13.211",#slave本機ip 
    "SOAMname": "felix.mesos", 
    "SOARname": "admin.felix.mesos", 
    "SOARefresh": 60, 
    "SOARetry": 600, 
    "SOAExpire":86400, 
    "SOAMinttl": 60, 
    "IPSources": ["netinfo", "mesos", "host"] 
    }

    執行mesos-dns

     

    使用命令列直接執行mesos-dns


    #/usr/local/mesos-dns/mesos-dns -config=/usr/local/mesos-dns/config.json &;

    使用marathon來執行mesos-dns

     

    使用marathon來執行mesos-dns的好處是,即使在mesos-dns掛了之後也會立刻被重新執行。因為DNS伺服器需要一個穩定的IP地址,所以通常將其指定在一個Mesos slave節點上執行。這裡通過constraints欄位來指定執行的slave的IP為10.1.13.213。在marathon上執行mesos-dns的json配置如下:



    "id": "/mesos-dns", 
    "cmd": "/usr/local/mesos-dns/mesos-dns -config=/usr/local/mesos-dns/config.json", 
    "cpus": 0.2, 
    "mem": 128, 
    "disk": 0, 
    "instances": 1, 
    "constraints": [ 

    "hostname", 
    "CLUSTER", 
    "10.1.13.213" 


    }

    使用mesos-dns

     

    指定mesos-dns為域名伺服器 為了讓Mesos上執行的任務都使用mesos-dns作為主DNS伺服器來解析,需要在Mesos slave節點的/etc/resolv.conf配置檔案的第一行指定mesos-dns伺服器為域名伺服器。


    [email protected] ~]#sed -i '1s/^/nameserver 10.1.13.213/n/' /etc/resolv.conf

    mesos-dns能解析的域名的格式

     

    mesos-dns解析的域名格式為:應用名.框架名.mesos域


    |構成項|說明 
    |---------|------------------------------------------------------ 
    |應用名|marathon上執行的應用或任務的名字,如果該應用在分組裡面,需要在應用|名後面接上”-組名”;另外,應用名字裡面有點號的,需要替換成減號”-“ 
    |框架名|我們採用的是marathon,這裡的名字就為marathon 
    |mesos域|這個是在mesos-dns的json配置檔案裡,domain欄位定義的;預設為mesos

    例如,Mesos用的框架為marathon,在test分組裡執行著名為test04的應用,則該應用將對應名為test04-test.marathon.mesos的域名

     

    測試

     

    格式:dig 應用名.框架名.mesos域 +short @mesos-dns所在節點IP


    [email protected] ~]# yum install bind-utils#安裝dig命令 
    [email protected] ~]# dig test03.marathon.mesos +short @10.1.13.213 
    10.1.13.211 
    #test03沒有在分組中,@10.1.13.213是dig的引數,@mesos-dns所在節點IP 
    [email protected] ~]# dig test04-test.marathon.mesos +short 
    10.1.13.211

    注意,test03為marathon任務的name,test03這個任務要在marathon上執行,這裡才能查到

     

    mesos-dns HTTP API

     

    Mesos-DNS提供了幾個簡單的REST API以供通過http方式來發現服務。 以上面mesos-dns在10.1.13.213為例,則有:


    |URL|說明 
    |---------------------------------------------------------------- 
    |http://10.1.13.213:8123/v1/version|mesos-dns版本資訊 
    |http://10.1.13.213:8123/v1/config|mesos-dns配置資訊 
    |http://10.1.13.213:8123/v1/hosts/{host} |該host的IP地址資訊 
    |http://10.1.13.213:8123/v1/services/{service}|該service的host、IP、埠資訊

    注意: host為mesos-dns能解析的域名,如:test04-test.marathon.mesos service為DNS SRV記錄名,如:test04-test.tcp.marathon.mesos


    3. marathon+mesos的使用 
    3.1. mesos的使用 

    mesos安裝完成後,下面我們來執行第一mesos任務,注意重新整理檢視Mesos的Web介面,你會在Active Tasks看到我們測試的任務。


    [email protected]~]# MASTER=$(mesos-resolve `cat /etc/mesos/zk`) 
    [email protected]~]# mesos-execute --master=$MASTER --name="cluster-test"--command="sleep 60"

    注意,這時在marathon的web頁面上看不到這個任務的資訊。


    3.2. marathon的使用 

    參考:http://www.cnblogs.com/ee900222/p/docker_2.html


    例1 

    1.用nc命令啟動一個http服務

     

    在各個節點上安裝netcat


    #yum install nmap-ncat

    2.在marathon頁面,點選“create application”建立任務


    ID:test01 
    CPUs:1 
    Memory(MIB):64 
    Disk Space(MIB):0 
    Instances:2 
    Command: while true; do ( echo "HTTP/1.0 200 Ok"; echo; echo "Hello World" ) | nc -l $PORT; done

    3.點選“Create”後,建立並執行任務

     

    4.在Applications頁面,點選任務,可以看到任務的詳細資訊, 可以看到任務分佈在兩個節點上,訪問HTTP服務啟動的埠

     

    5.在各節點可以看到nc程序正啟動著


    [email protected] ~]# curl http://10.1.13.211:31699 
    Hello World

    測試證明如果將mesos-slave停了,nc的程序還是存在,埠還是可以訪問的。

     

    mesos-contain,mesos-executo,nc三個程序是同時啟動的。


    例2 docker測試 

    映象地址:https://hub.daocloud.io/

     

    1,啟動docker,抓取centos映象


    #docker pull daocloud.io/library/centos:latest

    2,建立json,等同於marathon上的"Create Application"


    #vim marathon-test.json 

    "container": { 
    "type": "DOCKER", 
    "docker": { 
    "image": "daocloud.io/library/centos" 

    }, 
    "id": "centos-marathon", 
    "instances": 2, 
    "cpus": 0.5, 
    "mem": 128, 
    "uris": [], 
    "cmd": "while sleep 10; do date -u +%T; done" 
    }

    3,在marathon上建立任務


    [email protected] ~]# curl -X POST -H "Content-Type: application/json" http://10.1.13.214:8080/v2/app -d @marathon-test.json

    4,在Marathon頁面確認容器已經啟動

     

    5,在Mesos頁面確認任務正在執行中

     

    6,從stdout資訊確認輸出的時間

     

    7,在節點上確認容器已經啟動


    [email protected] ~]# docker ps 
    CONTAINER ID IMAGE COMMANDCREATEDSTATUSPORTS NAMES 
    374190c7ca4f daocloud.io/library/centos "/bin/sh -c 'while sl" About a minute ago Up About a minutemesos-8ae96fe5-3b2d-4767-8c5c-6998fe829c30-S11397.29937c70-8997-4ee8-b782-9273f41c082b

    8,檢視容器的日誌,確認輸出的時間


    [email protected] ~]# docker logs 374190c7ca4f 
    08:58:36 
    08:58:46 
    08:58:56 
    08:59:06 
    08:59:16 
    08:59:26 
    08:59:36 
    08:59:463.3. chronos的使用 
    例1 

    1.在Chronos頁面,點選“New Job”建立任務


    NAME:test1 
    COMMAND: sleep 60 
    SCHEDULE: R / 2017-03-03 T 07:05:00 Z / P T24H

    這裡是UTC時間,計算方式: UTC = 本地時間(北京時間))-0800 例如,本地(北京)時間是0325 (凌晨3點25分),那麼,UTC就是 0325 - 0800 = -0475,負號意味著是前一天, -0475 + 2400= 1925,既前一天的晚上7點25分。

     

    2,建立完成,點選工作列上的“Force Run”

     

    3,檢視執行結果

     

    可以在mesos介面中檢視,定時任務的執行結果。


    例2 docker的使用 

    1,啟動docker,抓取nginx映象


    #docker pull daocloud.io/nginx 
    #mkdir -p /data/content 
    #vim /data/content/index.html 
    test page 
    [email protected] ~]# docker run -p 8800:80 --name chronos-nginx -v /data/content:/usr/share/nginx/html:ro -d daocloud.io/nginx &; 
    [email protected] ~]# curl http://10.1.13.213:8800 
    test page

    2,建立json


    # vi chronos-test.json 

    "container": { 
    "type": "DOCKER", 
    "image": "daocloud.io/nginx", 
    "network": "BRIDGE" 
    }, 
    "schedule": "R//2017-03-06T09:25:00Z//PT2M", 
    "name": "chronos-nginx", 
    "cpus": "0.5", 
    "mem": "256", 
    "uris": [], 
    "command": "/usr/sbin/nginx -g 'daemon off;' -c /etc/nginx/nginx.conf" 
    }

    network": "BRIDGE",因為Docker預設的網路模式是橋接,不指定預設也是BRIDGE

     

    3,在Chronos上,建立任務


    #curl -L -H "Content-Type: application/json" -X POST [email protected] http://10.1.13.214:4400/scheduler/iso8601
  • 以上是centos7 安裝配置mesos+marathon+zookeeper的內容,更多 Zookeeper Marathon 配置 centos7 安裝 Mesos 的內容,請您使用右上方搜尋功能獲取相關資訊。
  • 上一篇