docker 集群管理实战mesos+zookeeper+marathon(一)

2024-04-26 06:20

本文主要是介绍docker 集群管理实战mesos+zookeeper+marathon(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一 实验环境

1.1 系统版本,本实验使用cnetos7.9版本镜像

1.2 准备5台虚拟机,其中3台master,两台slave,使用克隆的方式

1.3 使用远程连接工具登录

1.4 修改主机名

1.5 设置域名映射

每个虚拟机都配置一下,这里就演示一台虚拟机的配置

1.6 安装vim编辑器(可选)其他节点操作方法一样,这里只演示一台

1.7 各节点安装软件列表

主机名

IP地址

安装的软件包

master1

192.168.23.101

Jdk-8u91-linux-x86.tar.gz

Mesos-0.25.0.tar.gz

Zookeeper-3.4.6.tar.gz

Marathon-0.15.2.tar.gz

master2

192.168.23.102

Jdk-8u91-linux-x86.tar.gz

Mesos-0.25.0.tar.gz

Zookeeper-3.4.6.tar.gz

master3

192.168.23.103

Jdk-8u91-linux-x86.tar.gz

Mesos-0.25.0.tar.gz

Zookeeper-3.4.6.tar.gz

slave1

192.168.23.201

Jdk-8u91-linux-x86.tar.gz

Mesos-0.25.0.tar.gz

docker

slave2

192.168.23.202

Jdk-8u91-linux-x86.tar.gz

Mesos-0.25.0.tar.gz

docker

二 安装jdk(所有节点)

2.1 在master1上面安装jdk,解压改文件名

2.2 配置jdk环境变量

2.3 生效环境变量并验证

2.4 将master1节点的jdk源文件以及环境变量配置文件拷贝到其他节点

拷贝jdk解压文件只演示一个节点,其他节点自行完成

2.5 在其他节点生效jdk配置并验证

生效jdk配置只演示一个节点,其他节点自行完成

三 安装mesos(所有节点)

3.1 安装开发工具

3.2 添加maven源,并生成yum缓存

首先检查一下有没有wget命令

命令单独执行麻烦,可以这样写:

yum -y install wget && wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo  -O /etc/yum.repos.d/epel-apache-maven.repo --no-check-certificate && yum clean all && yum makecache

但是一定要注意有没有执行成功!!!

3.3 安装相关软件依赖

yum -y install apache-maven python-devel zlib-devel libcurl-devel openssl-devel cyrus-sasl-md5 apr-devel apr-util-devel subversion-devel

这里只演示master1节点的安装,其他节点就不截图了,请自行完成

3.4 配置WANdiscoSVN网络

 vi /etc/yum.repos.d/wandisco-svn.repo添加以下内容

[WANdiscoSVN]

name=WANdisco SVN Repo 1.9

enabled=1

baseurl=http://opensource.wandisco.com/centos/7/svn-1.9/RPMS/$basearch/

gpgcheck=1

gpgkey=http://opensource.wandisco.com/RPM-GPG-KEY-WANdisco

将这个文件发送到其他节点

3.5 安装mesos yum源

两种安装方法:yum安装和源码编译安装,本次实验采用yum安装

首先下载mesos yum源

rpm -ivh http://repos.mesosphere.com/el/7/noarch/RPMS/mesosphere-el-repo-7-1.noarch.rpm

下载mesos yum源和更新yum缓存命令

rpm -ivh http://repos.mesosphere.com/el/7/noarch/RPMS/mesosphere-el-repo-7-1.noarch.rpm && yum clean all && yum makecache

建立yum缓存,添加了新的yum源之后最好都执行一下

3.6 开始安装mesos

3.7 配置mesos环境变量

将环境变量配置文件分发到其他节点,并生效配置

至此,mesos安装完成,这里犯了一个失误,本来可以做到这里再克隆的,这样就不用在每个节点都做这么多操作,只需要改IP地址和主机名就行了!!!

四 关闭mesos开机自启动,使用自定义启动mesos-master 和 mesos-slave

4.1 安装完成重启服务器,查看系统服务端口情况

重启之后发现每个节点上都会启动一个mesos-master 和 mesos-slave,关闭自启动并禁用开机自启动(所有节点)

五 启动mesos-master 和 mesos-slave

这里先演示单节点启动,一台master和一台slave,下一个教程演示集群启动mesos并部署运行marathon

5.1 启动mesos-master

mesos-master --work_dir=/home/mesos/data --log_dir=/home/mesos/logs --no-hostname_lookup --ip=0.0.0.0

5.2 访问mesos-master

5.3 启动mesos-slave

mesos-slave --containerizers="mesos,docker" --work_dir=/home/mesos/data --log_dir=/home/mesos/logs --no-hostname_lookup --master=192.168.23.101:5050 --ip=0.0.0.0

5.4 查看mesos-slave

这篇关于docker 集群管理实战mesos+zookeeper+marathon(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/936847

相关文章

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

解决docker目录内存不足扩容处理方案

《解决docker目录内存不足扩容处理方案》文章介绍了Docker存储目录迁移方法:因系统盘空间不足,需将Docker数据迁移到更大磁盘(如/home/docker),通过修改daemon.json配... 目录1、查看服务器所有磁盘的使用情况2、查看docker镜像和容器存储目录的空间大小3、停止dock

Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题

《Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题》在爬虫工程里,“HTTPS”是绕不开的话题,HTTPS为传输加密提供保护,同时也给爬虫带来证书校验、... 目录一、核心问题与优先级检查(先问三件事)二、基础示例:requests 与证书处理三、高并发选型:

docker 重命名镜像的实现方法

《docker重命名镜像的实现方法》在Docker中无法直接重命名镜像,但可通过添加新标签、删除旧镜像后重新拉取/构建,或在DockerCompose中修改配置文件实现名称变更,感兴趣的可以了解一下... 目录使用标签(Tagging)删除旧的php镜像并重新拉取或构建使用docker Compose在Do

在Node.js中使用.env文件管理环境变量的全过程

《在Node.js中使用.env文件管理环境变量的全过程》Node.js应用程序通常依赖于环境变量来管理敏感信息或配置设置,.env文件已经成为一种流行的本地管理这些变量的方法,本文将探讨.env文件... 目录引言为什么使php用 .env 文件 ?如何在 Node.js 中使用 .env 文件最佳实践引

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

docker编写java的jar完整步骤记录

《docker编写java的jar完整步骤记录》在平常的开发工作中,我们经常需要部署项目,开发测试完成后,最关键的一步就是部署,:本文主要介绍docker编写java的jar的相关资料,文中通过代... 目录all-docker/生成Docker打包部署文件配置服务A的Dockerfile (a/Docke

Oracle Scheduler任务故障诊断方法实战指南

《OracleScheduler任务故障诊断方法实战指南》Oracle数据库作为企业级应用中最常用的关系型数据库管理系统之一,偶尔会遇到各种故障和问题,:本文主要介绍OracleSchedul... 目录前言一、故障场景:当定时任务突然“消失”二、基础环境诊断:搭建“全局视角”1. 数据库实例与PDB状态2

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl