DC/OS|DC/OS 升级

概述
这篇文章主要介绍DC/OS集群从1.10升级到1.11,升级的时候需要保证集群上的应用都是正在运行状态,也就是不能是部署状态或者等待等其他状态。可以通过升级的方式来修改配置,比如从1.10通过这种方式升级到1.10,通过这种方式来修改配置。

注意:
升级前一定要看一下[官方文档]
(https://docs.mesosphere.com/1.11/installing/oss/upgrading/),如果是实验环境,可以忽略这些信息,直接开始做,如果升级过程中出现了问题,一定要回来看官方文档给出的注意事项,才知道怎么解决问题。
在启动节点上准备安装包
  • 复制之前安装节点中的config.yamlip-detect到一个干净的新目录:1.11
    • 重要:1、不能修改exhibitor_zk_backend设置。2、在集群DC/OS 1.11中config.yaml的语法有改变,点击查看详情
  • 按照新语法更新config.yaml后,注意对照新旧配置,确保配置没有问题,更改这些配置可能会导致集群崩溃。
  • 构建安装程序包
    • 下载最新版dcos_generate_config.sh
      curl -O https://downloads.dcos.io/dcos/stable/dcos_generate_config.sh

    • 执行更新,是即将被更新的版本,版本号去mesosphere的管理页面的Overview可以看。
      dcos_generate_config.sh --generate-node-upgrade-script

    • 构建完成后,会在最后生成一个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 packagelist: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..tar ├── dcos_generate_config.sh ├── genconf │├── config.yaml │├── ip-detect

    • 运行Nginx容器,让其他节点可以远程访问和下载生成的脚本
      sudo docker run -d -p :80 -v $PWD/genconf/serve:/usr/share/nginx/html:ro nginx

更新Master节点
  • 登录到master节点,下载启动节点上的脚本:
    curl -O sudo bash ./dcos_node_upgrade.sh

  • 【DC/OS|DC/OS 升级】验证是否更新成功和退出状态是否是0
    echo $? 0

  • 验证更新
    • ZooKeeper是否成功启动:http://:8181/
    • mesos是否是1.5.0(如果是更新到1.11,mesos版本就是1.5.0):http:///mesos
更新Agent节点
  • 登录到每一个agent节点,下载启动节点上的脚本:
    curl -O sudo bash ./dcos_node_upgrade.sh

  • 验证是否更新成功和退出状态是否是0
    echo $? 0

  • 验证更新
    验证节点是否加入了DC/OS集群,并且任务都重新协调完成:http:///mesos
查看更多
不登高山,不知天之高也;不临深溪,不知地之厚也
感谢指点、交流、喜欢

    推荐阅读