jjzjj

Hadoop - Cloudera MRV1 集群规划 - 理想集群的最小节点数是多少,它看起来如何?

coder 2024-01-09 原文

我手动安装了一个具有以下配置的三节点集群:

Master/Slave Node 0 - NameNode, Secondary NameNode, JobTracker, HMaster, 
    DataNode, TaskTracker, HRegionServer, 
    Hive MetaStore, Database for Hive/Sqoop, HiveServer2, HCatalog, 
    Oozie Server, 
    Zookeeper, 
    Oozie-client, Hive-client, pig-client, M/R client tools, Sqoop

Slave Node 1 - DataNode, TaskTracker, HRegionServer,  
    Oozie-client, Hive-client, pig-client, M/R client tools, Sqoop

Slave Node 2 - DataNode, TaskTracker, HRegionServer,  
    Oozie-client, Hive-client, pig-client, M/R client tools, Sqoop

我希望有一个更现实的集群。我正在考虑使用 12-14 个节点来实现以下目的:

Master 0: Name Node
Master 1: Secondary NameNode
Master 2: JobTracker
Master 3: HMaster

Slave 0: DataNode, TraskTracker, HRegionServer
Slave 1: DataNode, TraskTracker, HRegionServer
Slave 2: DataNode, TraskTracker, HRegionServer

Hive/Catalog Node: Hive MetaStore, 
    Sqoop MetaStore
    MySQL/PostgreSQL Database for Hive/Sqoop, 
    HCatalog, 
    HiveServer (Or is it better to break HiveServer into its own node?)
    Oozie-Server (Or is it better to break Oozie-server into its own node?)

Zookeeper Ensemble: 3 Nodes with Zookeper installed

客户端节点:Oozie-client、Hive-client、pig-client、M/R客户端工具、Sqoop

或者,以图表格式:

我知道 Cloudera 希望您拥有:

A separate Master Node for each Master Process (NameNode, Secondary NameNode, JobTracker, HMaster)
3 Slave nodes with DataNode, TaskTracker, and HRegionServer
3 Zookeeper Nodes
"The database, the HiveServer process, and the metastore service can all 
be on the same host, but running the HiveServer process on a separate host 
provides better availability and scalability."

我已经为我的 Hive 数据库和我的 Oozie 数据库使用了相同的 MySQL 实例,并且认为可以再做一次。我还认为 HiveServer 和 Oozie-server 可以与 Hive/Oozie MetaStore 以及 HCatalog 在同一主机上运行。

现在在我的三节点集群上,我已经在每个节点上安装了所有客户端软件,因此我可以从任何节点执行 M/R、Hive、Oozie、HBase、Pig 等客户端调用。这些客户端工具是否应该在与主节点和从节点分开的节点上执行?说到这一点,我一直将我所有的 java/python/pig 代码放在我的三节点集群中的主节点上。这些数据是否也最好放在单独的客户端节点上?

我走的路对吗?制作最小但理想的集群的正确方法是什么?

最佳答案

您的设置在很大程度上看起来很标准。不幸的是,没有一个“理想”的集群,这完全取决于您的工作量。如果您需要大量计算,可能最好在 MapReduce 组件上做更多的工作。如果您只计划将 HBase 用于低延迟访问,那么您可能希望完全放弃 MapReduce。

我会对您的设置提出一些一般性建议。

  1. 您可以将 RegionServers 与 Zookeeper 节点放在一起,只需为 Zookeeper 节点提供自己的磁盘即可。

  2. 请小心将 TaskTracker 和 RegionServer 放在一起,尤其是当您的大部分 HBase 使用是扫描繁重时。这两个进程都非常占用 CPU 和内存,并可能导致资源争用问题。 This page有关于在这种情况下该怎么做的更多详细信息

就代码组织和客户端设置而言,这真的是您的决定。我个人更喜欢设置一些 gateway nodes它具有与 hive、hbase 等通信并从那里运行作业的所有配置,但同样没有完美的答案。

关于Hadoop - Cloudera MRV1 集群规划 - 理想集群的最小节点数是多少,它看起来如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20959818/

有关Hadoop - Cloudera MRV1 集群规划 - 理想集群的最小节点数是多少,它看起来如何?的更多相关文章

  1. hadoop安装之保姆级教程(二)之YARN的配置 - 2

    1.1.1 YARN的介绍 为克服Hadoop1.0中HDFS和MapReduce存在的各种问题⽽提出的,针对Hadoop1.0中的MapReduce在扩展性和多框架⽀持⽅⾯的不⾜,提出了全新的资源管理框架YARN. ApacheYARN(YetanotherResourceNegotiator的缩写)是Hadoop集群的资源管理系统,负责为计算程序提供服务器计算资源,相当于⼀个分布式的操作系统平台,⽽MapReduce等计算程序则相当于运⾏于操作系统之上的应⽤程序。 YARN被引⼊Hadoop2,最初是为了改善MapReduce的实现,但是因为具有⾜够的通⽤性,同样可以⽀持其他的分布式计算模

  2. 【详解】Docker安装Elasticsearch7.16.1集群 - 2

    开门见山|拉取镜像dockerpullelasticsearch:7.16.1|配置存放的目录#存放配置文件的文件夹mkdir-p/opt/docker/elasticsearch/node-1/config#存放数据的文件夹mkdir-p/opt/docker/elasticsearch/node-1/data#存放运行日志的文件夹mkdir-p/opt/docker/elasticsearch/node-1/log#存放IK分词插件的文件夹mkdir-p/opt/docker/elasticsearch/node-1/plugins若你使用了moba,直接右键新建即可如上图所示依次类推创建

  3. 大数据之Hadoop数据仓库Hive - 2

    目录:一、简介二、HQL的执行流程三、索引四、索引案例五、Hive常用DDL操作六、Hive常用DML操作七、查询结果插入到表八、更新和删除操作九、查询结果写出到文件系统十、HiveCLI和Beeline命令行的基本使用十一、Hive配置一、简介Hive是一个构建在Hadoop之上的数据仓库,它可以将结构化的数据文件映射成表,并提供类SQL查询功能,用于查询的SQL语句会被转化为MapReduce作业,然后提交到Hadoop上运行。特点:简单、容易上手(提供了类似sql的查询语言hql),使得精通sql但是不了解Java编程的人也能很好地进行大数据分析;灵活性高,可以自定义用户函数(UDF)和

  4. 【动态规划】背包问题(详细总结,很全) - 2

    【动态规划】一、背包问题1.背包问题总结1)动规四部曲:2)递推公式总结:3)遍历顺序总结:2.01背包1)二维dp数组代码实现2)一维dp数组代码实现3.完全背包代码实现4.多重背包代码实现一、背包问题1.背包问题总结暴力的解法是指数级别的时间复杂度。进而才需要动态规划的解法来进行优化!背包问题是动态规划(DynamicPlanning)里的非常重要的一部分,关于几种常见的背包,其关系如下:在解决背包问题的时候,我们通常都是按照如下五部来逐步分析,把这五部都搞透了,算是对动规来理解深入了。1)动规四部曲:(1)确定dp数组及其下标的含义(2)确定递推公式(3)dp数组的初始化(4)确定遍历顺

  5. 关于ES集群信息的一些查看 - 2

    文章目录查看ES信息查看节点信息查看分片信息实际场景下ES分片及副本数量应该怎么分关于ES的灵活使用查看ES信息查看版本kibana:GET/查看节点信息GET/_cat/nodes?v解释:ip:集群中节点的ip地址;heap.percent:堆内存的占用百分比;ram.percent:总内存的占用百分比,其实这个不是很准确,因为buff/cache和available也被当作使用内存;cpu:cpu占用百分比;load_1m:1分钟内cpu负载;load_5m:5分钟内cpu负载;load_15m:15分钟内cpu负载;node.role:上图的dilmrt代表全部权限master:*代表

  6. linux查看es节点使用情况,elasticsearch(es) 如何查看当前集群中哪个节点是主节点(master) - 2

    elasticsearch查看当前集群中的master节点是哪个需要使用_cat监控命令,具体如下。查看方法es主节点确定命令,以kibana上查看示例如下:GET_cat/nodesv返回结果示例如下:ipheap.percentram.percentcpuload_1mload_5mload_15mnode.rolemastername172.16.16.188529952.591.701.45mdi-elastic3172.16.16.187329950.990.991.19mdi-elastic2172.16.16.231699940.871.001.03mdi-elastic4172

  7. kubernetes集群划分节点 - 2

    Kubernetes(K8s)是一个用于管理容器化应用程序的开源平台,可以帮助开发人员更轻松地部署、管理和扩展应用程序。在Kubernetes中,集群划分是一种重要的概念,可以帮助我们更好地组织和管理集群中的节点和资源。本文将介绍如何使用Kubernetes对集群进行划分,并提供详细的操作示例,希望能够帮助读者更好地了解和使用Kubernetes平台。Node划分Node划分是将集群中的节点按照一定的规则进行划分。在Kubernetes中,可以使用NodeSelector和Affinity机制来实现Node划分。NodeSelectorNodeSelector是一种将Pod调度到符合特定节点标

  8. Ubuntu下Hadoop的单机安装 - 2

            云计算实验中要求我们在Linux系统安装Hadoop,故来做一个简单的记录。· 注:我的操作系统环境是Ubuntu-20.04.3,安装的JDK版本为jdk1.8.0_301,安装的Hadoop版本为hadoop2.7.1。(不确定其他版本是否会出现版本兼容问题)Hadoop安装步骤如下:        一、更新apt和安装vim编辑器        二、配置本机无密码登录SSH        三、安装JAVA环境        四、下载安装Hadoop        五、伪分布式搭建一、更新apt和安装vim编辑器1、更新aptsudoapt-getupdate2、安装vim

  9. 中国民用飞机制造行业市场现状规模及发展战略规划报告2021-2027年 - 2

    中国民用飞机制造行业市场现状规模及发展战略规划报告2021-2027年详情内容请咨询鸿晟信合研究院!【全新修订】:2022年2月【撰写单位】:鸿晟信合研究研究【报告目录】第1章:中国民用飞机制造行业发展综述1.1民用飞机制造行业概述1.1.1民用飞机的概念1.1.2飞机制造的概念1.1.3民用飞机的分类1.2民机制造行业周期特性1.2.1影响行业周期的因素(1)GDP增速分析(2)运量增量分析(3)飞机更替分析(4)航空公司获利水平1.2.2行业现阶段周期分析1.2.3行业现阶段景气分析1.3民机制造信息化分析1.3.1信息化技术应用状况分析(1)MDO技术应用分析(2)供应链协同研发分析(3

  10. 五-1、elasticsearch集群搭建(ES集群搭建) - 2

    目录一、下载Elasticsearch1.选择你要下载的Elasticsearch版本二、采用通用搭建集群的方法三、配置三台es1.上传压缩包到任意一台虚拟机中2.解压并修改配置文件(配置单台es)3.配置三台es集群4.设置后台启动和开机自启(可选)一、下载Elasticsearch1.选择你要下载的Elasticsearch版本es下载地址这里我下载的是二、采用通用搭建集群的方法集群搭建方法三、配置三台es1.上传压缩包到任意一台虚拟机中上传方式有两种第一种:使用xftp上传直接拖动过去就可以了。第二种:使用lrzsz先安装yum-yinstalllrzsz切换到要上传的位置cd/opt/

随机推荐