Mesos集群部署指南:Mesos+ZK+Marathon

需积分: 10 2 下载量 11 浏览量 更新于2024-07-14 收藏 1.76MB DOCX 举报
"该文档是关于在服务器集群中部署Mesos、Zookeeper和Marathon的详细步骤,适用于创建一个分布式计算平台。文档中涉及到的主要组件包括Mesos作为资源调度器,Zookeeper作为集群协调者,以及Marathon作为持续运行的服务容器编排工具。" 在部署Mesos、Zookeeper和Marathon的环境中,首先需要了解基础的服务器架构。在这个例子中,服务器架构由三台mesos-master节点组成,可能还包括若干工作节点(mesos-slave)。这样的架构设计旨在提供高可用性和故障转移能力。 1. **关闭防火墙和SELinux**:在部署过程中,为了确保各服务之间的通信不受限制,通常会建议关闭SELinux以减少安全策略对配置的影响。通过修改`/etc/sysconfig/selinux`文件并将`SELINUX`设置为`disabled`,然后重启系统使配置生效。同时,关闭iptables防火墙或者开放必要的端口,如2181(Zookeeper)、5050(Mesos Master)和8080(Marathon HTTP API)。 2. **添加Mesos Yum源和安装软件包**:在CentOS 7系统上,通过添加Mesosphere的Yum仓库,可以方便地安装所需的软件包。执行`rpm`命令来安装仓库的GPG密钥,然后使用`yum`命令安装Mesos、Marathon和Zookeeper的最新版本,以及依赖的Java开发环境。 3. **配置Zookeeper**:Zookeeper是Mesos集群的关键组件,用于协调节点和存储元数据。每个Mesos Master节点需要有自己的Zookeeper ID,这是一个1到255之间的整数,且在集群中必须唯一。例如,master-1节点设置为ID 1,并将这个ID写入`/var/lib/zookeeper/myid`文件。 4. **配置Mesos Master**:在所有master节点上,安装完成后需要进行必要的配置。这可能包括设置环境变量,如`MESOS_ZK`指向Zookeeper集群的连接字符串,以及其它如`MESOS_QUORUM`(表示达成共识所需的master数量)等。 5. **启动和验证服务**:安装和配置完成后,启动Mesos Master、Zookeeper和Marathon服务。在CentOS中,可以使用`systemctl start`命令启动服务,并使用`systemctl status`检查它们的状态。 6. **配置Mesos Slaves**:在工作节点上,也需要安装Mesos Slave和可能需要的其他服务,如Docker(如果打算使用Docker容器化应用)。同样需要关闭SELinux并开放必要的端口,然后配置`MESOS_MASTER`环境变量指向Mesos Master的地址。 7. **配置Marathon**:Marathon是一个持久化的应用部署和管理工具,与Mesos紧密集成。在Master节点上,需要配置Marathon以连接到Zookeeper,并定义如何处理应用程序部署、容错和更新策略。 整个过程完成后,你将拥有一个运行Mesos、Zookeeper和Marathon的分布式计算平台,可以支持高效地调度和管理各种任务和服务。记得在完成部署后,定期更新软件以保持系统的安全性。