概述
這篇文章主要介紹DC/OS集群從1.10升級到1.11,升級的時候需要保證集群上的應用都是正在運行狀態(tài),也就是不能是部署狀態(tài)或者等待等其他狀態(tài)??梢酝ㄟ^升級的方式來修改配置,比如從1.10通過這種方式升級到1.10,通過這種方式來修改配置。
注意:
升級前一定要看一下[官方文檔]
(https://docs.mesosphere.com/1.11/installing/oss/upgrading/),如果是實驗環(huán)境,可以忽略這些信息,直接開始做,如果升級過程中出現(xiàn)了問題,一定要回來看官方文檔給出的注意事項,才知道怎么解決問題。
在啟動節(jié)點上準備安裝包
- 復制之前安裝節(jié)點中的
config.yaml和ip-detect到一個干凈的新目錄:1.11-
重要:1、不能修改exhibitor_zk_backend設置。2、在集群DC/OS 1.11中
config.yaml的語法有改變,點擊查看詳情
-
重要:1、不能修改exhibitor_zk_backend設置。2、在集群DC/OS 1.11中
- 按照新語法更新
config.yaml后,注意對照新舊配置,確保配置沒有問題,更改這些配置可能會導致集群崩潰。 - 構建安裝程序包
-
curl -O https://downloads.dcos.io/dcos/stable/dcos_generate_config.sh -
執(zhí)行更新,
<installed_cluster_version>是即將被更新的版本,版本號去mesosphere的管理頁面的Overview可以看。dcos_generate_config.sh --generate-node-upgrade-script <installed_cluster_version> -
構建完成后,會在最后生成一個URL,后面都用URL來替代這一行:
http://192.168.0.234:8080/upgrade/940157ff99bf4b6188af4d713f70760b/dcos_node_upgrade.sh[root@localhost 1.11]# ./dcos_generate_config.sh --generate-node-upgrade-script 1.10.4 Generating configuration files... Cluster package list:package_lists/f85951fce504ff8dd85773e12ba612166e2ecf9b.package_list.json Package filename: packages/dcos-config/dcos-config-- setup_211cb3884a16a4d540a9b521616e990fa8f7bd07.tar.xz Package filename: packages/dcos-metadata/dcos-metadata--setup_211cb3884a16a4d540a9b521616e990fa8f7bd07.tar.xz Generating Bash configuration files for DC/OS Node upgrade script URL:`http://192.168.0.234:8080/upgrade/940157ff99bf4b6188af4d713f70760b/dcos_node_upgrade.sh`構建完成后的目錄結構和安裝的時候一樣:
├── dcos-genconf.<HASH>.tar ├── dcos_generate_config.sh ├── genconf │ ├── config.yaml │ ├── ip-detect -
運行Nginx容器,讓其他節(jié)點可以遠程訪問和下載生成的腳本
sudo docker run -d -p <your-port>:80 -v $PWD/genconf/serve:/usr/share/nginx/html:ro nginx
-
更新Master節(jié)點
-
登錄到master節(jié)點,下載啟動節(jié)點上的腳本:
curl -O <URL> sudo bash ./dcos_node_upgrade.sh -
驗證是否更新成功和退出狀態(tài)是否是
0echo $? 0 -
驗證更新
- ZooKeeper是否成功啟動:
http://<dcos_master>:8181/ - mesos是否是1.5.0(如果是更新到1.11,mesos版本就是1.5.0):
http://<dcos_master>/mesos
- ZooKeeper是否成功啟動:
更新Agent節(jié)點
-
登錄到每一個agent節(jié)點,下載啟動節(jié)點上的腳本:
curl -O <URL> sudo bash ./dcos_node_upgrade.sh -
驗證是否更新成功和退出狀態(tài)是否是
0echo $? 0 驗證更新
驗證節(jié)點是否加入了DC/OS集群,并且任務都重新協(xié)調完成:http://<dcos_master>/mesos
不登高山,不知天之高也;不臨深溪,不知地之厚也
感謝指點、交流、喜歡