docker容器技术篇:容器集群管理实战mesos+zookeeper+marathon(一)

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

mesos概述

1.1 Mesos是什么

Apache Mesos 是一个基于多资源调度的集群管理软件,提供了有效的、跨分布式应用或框架的资源隔离和共享,可以运行 Hadoop、Spark以及docker等。

1.2 为什么要进行资源调度

假如某个公司的业务需要频繁的使用多个容器,这些容器运行时需要使用很多的cpu和内存等资源,如何保证每个容器都能分配到合适的资源,我们就需要一个工具来进行资源的管理和分配等,这个工具就是Mesos,与Mesos类似的工具还有YARN。

1.3 Mesos的优缺点

优点:
资源管理策略:
简单来说就是Mesos 能够保证集群内的所有用户有平等的机会使用集群内的资源,这里的资源包括 CPU,内存,磁盘等等。
轻量级:
Mesos只负责提供资源,不负责调度资源。大概意思就是将当前集群或者主机剩余的资源提供给注册到mesos的调度器,由调度器决定使用多少资源以及释放多少资源,提高分布式集群的资源利用率。
缺点比如目前对无状态服务支持不够,更多内容请自行查阅资料。
实际上可以做到安装完mesos再克隆,也就是3.6节之前所有的内容,这样就可以只做一个节点就行,提前克隆的话就需要在每一个节点上面都要做相同的步骤,不过克隆了再安装也行,就当练习了。

一 实验环境

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

在这里插入图片描述

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

在这里插入图片描述
在这里插入图片描述

1.3 使用远程连接工具登录

在这里插入图片描述
在这里插入图片描述

1.4 修改主机名

在这里插入图片描述
在这里插入图片描述

1.5 设置域名映射

每个虚拟机都配置一下,这里就演示一台虚拟机的配置
在这里插入图片描述

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

在这里插入图片描述

1.7 各节点安装软件列表

在这里插入图片描述

二 安装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

在这里插入图片描述
在这里插入图片描述
本教程针对教学环境,非生产环境。更多内容敬请期待!
希望对您有用,有不对的地方希望不吝赐教,欢迎在评论区留言,分享你的看法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/2509.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自然语言处理: 第二十八章大模型基底之llama3

项目地址: meta-llama/llama3: The official Meta Llama 3 GitHub site 前言 LLaMa系列一直是人们关注的焦点,Meta在4月18日发布了其最新大型语言模型 LLaMA 3。该模型将被集成到其虚拟助手Meta AI中。Meta自称8B和70B的LLaMA 3是当今 8B 和 70B 参数规模的最佳模…

npm install 卡在still idealTree buildDeps不动

前言 再使用npm install 安装包依赖时 发现一直卡住 停留在 观察node_cache下的_logs文件 发现一直在拉取包 37 silly idealTree buildDeps 38 silly fetch manifest riophae/vue-treeselect0.4.0尝试解决 尝试设置了taobao镜像源 依然如此 获取已经设置的镜像源 确实是ta…

图像哈希:全局+局部提取特征

文章信息 作者:梁小平,唐振军期刊:ACM Trans. Multimedia Comput. Commun. Appl(三区)题目:Robust Hashing via Global and Local Invariant Features for Image Copy Detection 目的、实验步骤及结论 目…

学习Rust的第10天:枚举和模式匹配

今天我们来看看一个类似的概念 enums 。 Enums: We saw that in Rust, enums are data types that list possible values, giving a simple and type-safe mechanism to describe alternatives. We looked at how to create enums and use them to represent similar possibili…

webpack中mode、NODE_ENV、DefinePlugin、cross-env的使用

本文讲的全部知识点,都是和webpack相关的。如果你之前有疑问,那本文一定能帮你搞清楚。 问题来源一般是类似下面代码(webpack.json中): "scripts": {"dev": "cross-env NODE_ENVdevelopmen…

opencv android 使用笔记

目录 获取app路径: 下载:OpenCV-android-sdk cmakelist配置: 头文件路径: 编译报错:clang: error: linker command failed with exit code 1 (use -v to see invocation) 读取图片例子 保存mp4 获取app路径&am…

自定义一个RedisTemplate

1.引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><dependency><groupId>redis.clients</groupId><artifactId>jedis&…

springcloud Ribbon的详解

1、Ribbon是什么 Ribbon是Netflix发布的开源项目&#xff0c;Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的框架。 2、Ribbon能干什么 LB负载均衡(Load Balance)是什么&#xff1f;简单的说就是将用户的请求平摊的分配到多个服务上&#xff0c;从而达…

<前端>Electron-builder为公证后的app打更新信息latest.yml

MacOS下&#xff0c;Electron-builder可以很方便的为测试包app打更新信息&#xff08;latest-mac.yml&#xff09;。 但是&#xff0c;正式发布的时候&#xff0c;不可能用测试包app&#xff0c;因为还没有进行公证。如何为公证的app打latest-mac.yml呢。 其实观察latest-mac.y…

Keil和VSCode协同开发STM32程序

系列文章 STM32单片机系列专栏 C语言术语和结构总结专栏 文章目录 1. 配置环境 2. 测试打开工程 3. 测试编译工程 随着项目的复杂度上升&#xff0c;开发者不仅需要强大的硬件支持&#xff0c;还需要一个高效和灵活的开发环境。 vscode是一款集成大量可以便携开发插件的代码…

C++中的list类模拟实现

目录 list类模拟实现 list类节点结构设计 list类非const迭代器结构设计 迭代器基本结构设计 迭代器构造函数 operator()函数 operator*()函数 operator!()函数 operator(int)函数 operator--()函数 operator--(int)函数 operator()函数 operator->()函数 list…

TiDB 6.x 新特性解读 | Collation 规则

对数据库而言&#xff0c;合适的字符集和 collation 规则能够大大提升使用者运维和分析的效率。TiDB 从 v4.0 开始支持新 collation 规则&#xff0c;并于 TiDB 6.0 版本进行了更新。本文将深入解读 Collation 规则在 TiDB 6.0 中的变更和应用。 引 这里的“引”&#xff0c;…

Modbus转Profinet网关接称重设备与工控机通讯

Modbus转Profinet网关&#xff08;XD-MDPN100&#xff09;是一种能够实现Modbus协议和Profinet协议之间转换的设备。Modbus转Profinet网关可提供单个或多个RS485接口&#xff0c;使得不同设备之间可以顺利进行通信&#xff0c;进一步提升了工业自动化程度。 通过使用Modbus转Pr…

相亲平台app小程序

相亲平台app小程序是一种基于手机应用的微型程序&#xff0c;专为在线相亲交友活动设计。它提供了一系列的功能&#xff0c;旨在帮助用户更方便、更高效地找到心仪的伴侣。 首先&#xff0c;用户可以在个人资料部分上传照片、填写个人资料、设置兴趣爱好等信息&#xff0c;以便…

Electron+Vue3+ElectronForge整合 - 打包时整合 -分步打包

说明 本文介绍一下 Electron Vue3 的打包整合的基本操作。实现的效果是 &#xff1a; 1、一个正常的Vue3项目&#xff1b; 2、整合加入 Electron 框架 &#xff1a;开发时 Electron 加载的是开发的vue项目&#xff1b; 3、完成打包时整合&#xff1a;3.1 先完成vue3项目的正常…

Laravel 6 - 第十一章 中间件

​ 文章目录 Laravel 6 - 第一章 简介 Laravel 6 - 第二章 项目搭建 Laravel 6 - 第三章 文件夹结构 Laravel 6 - 第四章 生命周期 Laravel 6 - 第五章 控制反转和依赖注入 Laravel 6 - 第六章 服务容器 Laravel 6 - 第七章 服务提供者 Laravel 6 - 第八章 门面 Laravel 6 - …

深度解析:云计算的三宝——IaaS、PaaS和SaaS

4月22日&#xff0c;腾讯宣布旗下协作SaaS产品全面接入腾讯混元大模型&#xff0c;除去企业微信、腾讯会议、腾讯文档等“一门三杰”产品&#xff0c;腾讯乐享、腾讯电子签、腾讯问卷、腾讯云AI代码助手等协作SaaS产品也都已实现智能化升级。大模型应用落地再加速。 那么什么是…

2024年深圳杯东三省数学建模联赛A题论文首发第二种思路

深圳杯A题论文代码分享资料链接&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1L2NVgoefSW-yuqZjEB3wcw 提取码&#xff1a;sxjm 问题一 数据转换&#xff1a; 首先&#xff0c;我们将监测站的经纬度坐标转换为基于米的笛卡尔坐标系。这是因为在地面上的大尺度距离…

HarmonyOS开发案例:【音乐播放器】

介绍 使用ArkTS语言实现了一个简易的音乐播放器应用&#xff0c;主要包含以下功能&#xff1a; 播放应用中的音频资源文件&#xff0c;并可进行上一曲、下一曲、播放、暂停、切换播放模式&#xff08;顺序播放、单曲循环、随机播放&#xff09;等操作。结合后台任务管理模块&…

安全小课堂丨什么是暴力破解?如何防止暴力破解

什么是暴力破解&#xff1f; 暴力破解也可称为穷举法、枚举法&#xff0c;是一种比较流行的密码破译方法&#xff0c;也就是将密码进行一一推算直到找出正确的密码为止。比如一个6位并且全部由数字组成的密码&#xff0c;可能有100万种组合&#xff0c;也就是说最多需要尝试10…