2017-08-21 73 views

回答

1

簡短的回答:基於Debian發行版目前(至少到DC/OS 1.10)不支持。

龍回答:這是可能的,但需要一些額外的步驟。

DC/OS不使用任何RedHat的特定功能。對於少數系統二進制文件,最重要的差異可以通過符號鏈接來解決,因爲RedHat系統具有不同的路徑,而systemd在服務定義中不支持$PATH變量。你需要以下:

sudo apt-get install libcurl3-nss ipset selinux-utils curl unzip bc 
sudo ln -s /bin/mkdir /usr/bin/mkdir 
sudo ln -s /bin/ln /usr/bin/ln 
sudo ln -s /bin/tar /usr/bin/tar 
sudo ln -s /bin/rm /usr/bin/rm 
sudo ln -s /usr/sbin/useradd /usr/bin/useradd 
sudo ln -s /bin/bash /usr/bin/bash 
sudo ln -s /sbin/ipset /usr/sbin/ipset 

另一個要求是:

  • systemd與版本>=200
  • 泊塢>=1.6

略顯陳舊scripts from John Omernik,這裏還有puppet module(我是作者)。欲瞭解更多詳情,請參閱關於DC/OS Jira的討論。

下一步是手動DC/OS編譯(這聽起來嚇人,但實際上它很容易)。 C++組件(特別是mesos-slave)依賴於系統庫,並且它們最好鏈接到正確的庫。

apt install python3-venv build-essential git 
git clone https://github.com/dcos/dcos 
./build_local.sh 

產生的「形象」將位於:

$HOME/dcos-artifacts/testing/`whoami`/dcos_generate_config.sh 

你可以把它複製到你的引導服務器和提取:

bash dcos_generate_config.sh --genconf 

更新genconf/config.yaml後,你就可以開始一個容器服務安裝腳本:

docker run -d -p 9090:80 -v $PWD/genconf/serve:/usr/share/nginx/html:ro nginx 

在一個新的節點簡單地獲取安裝腳本:

rm -rf /tmp/dcos && mkdir /tmp/dcos && cd /tmp/dcos && curl -O http://bootstrap.example.com:9090/dcos_install.sh 
bash dcos_install.sh slave 

除非你不想要運行從DC/OS宇宙(如彈性,卡夫卡等)封裝取決​​於libmesos-bundle,你可能會正好。束被取出到每個執行程序的目錄,它包括許多庫,如libmesos.so

... 
-rwxr-xr-x 1 nobody nogroup 55077256 Jun 28 19:50 libmesos-1.4.0.so 
-rwxr-xr-x 1 nobody nogroup  1487 Jun 28 19:50 libmesos.la 
lrwxrwxrwx 1 nobody nogroup  17 Jun 28 19:50 libmesos.so -> libmesos-1.4.0.so 
-rwxr-xr-x 1 nobody nogroup 398264 Jun 28 19:53 libpcre.so.1 
-rwxr-xr-x 1 nobody nogroup 121296 Jun 28 19:53 libsasl2.so.3 
-rwxr-xr-x 1 nobody nogroup 155744 Jun 28 19:53 libselinux.so.1 
-rwxr-xr-x 1 nobody nogroup 454008 Jun 28 19:53 libssl.so.10 
-rwxr-xr-x 1 nobody nogroup 999944 Jun 28 19:53 libstdc++.so.6 
-rwxr-xr-x 1 nobody nogroup 79000 Jun 28 19:53 libsvn_delta-1.so.0 
-rwxr-xr-x 1 nobody nogroup 1820208 Jun 28 19:53 libsvn_subr-1.so.0 
-rwxr-xr-x 1 nobody nogroup 20040 Jun 28 19:53 libuuid.so.1 
-rwxr-xr-x 1 nobody nogroup 90664 Jun 28 19:53 libz.so.1 
drwxr-xr-x 3 nobody nogroup  4096 Jun 28 19:53 mesos 
drwxr-xr-x 2 nobody nogroup  4096 Jun 28 19:37 pkgconfig 

一些庫可能與您的系統兼容,但CentOS的和Debian可能(和會)之間的版本不同。您可能會遇到類似的錯誤:

libmesos-bundle/lib/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by curl) 

這將導致使用curl將無法​​正常工作,因此大多數情況下,將拒絕所有基於代理的健康檢查開始。

+0

@fortm查看已更新的答案 – Tombart