CDH5.x集群在新节点上分配角色

以下以Hadoop集群加入3台新节点为例,说明如何在其上进行角色的分配.

假如新节点的IP与hostname对应关系如下:

编号IP主机名
1111.111.111.111dn9.hadoop.com
2111.111.111.112dn10.hadoop.com
3111.111.111.113dn11.hadoop.com

一. 添加角色

1.进入Cloudera Manager主页.

2.点击集群HDFS组件最右侧的倒三角图标, 之后点击菜单中的"实例"选项, 进入HDFS实例列表页面.

3.点击列表页上的"添加角色实例" 按钮, 进入Hadoop角色分配页面.
在这里插入图片描述

4.选择角色(如"DataNode) --> 选择主机–>自定义, 之后勾选希望加入的新实例.

此时, CM会自动沿用之前的hdfs本地存储路径,保存hdfs的nn或dn数据, 或yarn的rm或nm节点数据信息, 如下:
在这里插入图片描述

对"yarn"的操作同理:
在这里插入图片描述

在这里插入图片描述

5.如下实例也是按此操作:

  • HiveGateway
  • Spark 2 Gateway
  • Sqoop1

二. 遇到的问题&解决方案

问题1: CM检测到"不良: 当从java进程查看时该主机的主机名与规范名称不一致"
在这里插入图片描述
解决方案:

hostnamectl set-hostname dn10.hadoop.com

会直接修改/etc/hosts文件中的内容,替换为命令行中的设置.

稍等片刻, 再次查询CM状态, 发现其已侦测到状态已恢复正常:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在CDH上,您可以使用Spark的节点过滤功能来控制Spark Executor不分配到某些节点上。具体步骤如下: 1. 在CDH管理界面中找到您想要排除的节点,并将它们添加到排除列表中。 2. 在Spark配置中,设置spark.executor.excludeNodes参数,将排除列表的节点名称添加到该参数中,多个节点名称之间用逗号分隔。 例如,您可以在spark-defaults.conf文件中添加以下行: spark.executor.excludeNodes=node1,node2,node3 3. 确认Spark Executor已经成功排除了指定的节点,可以在Spark UI的Executor页签中查看Executor的分配情况,排除的节点将不会出现在分配的Executor列表中。 请注意,这种方法并不是强制性的,Spark Executor仍然可以分配到被排除的节点上,特别是当资源不足时。如果您希望彻底避免Executor分配到某些节点上,您可以考虑在CDH中使用节点标签功能来更细粒度地控制节点的资源分配。 ### 回答2: 在CDH上可以通过设置Spark的资源分配规则,来阻止Spark Executor被分配到某些节点上。 1. 在CDH的集群管理器中,打开Spark服务的配置页面。 2. 在"集群部署"部分,找到"Executor内存"和"Executor核心"的设置,分别表示每个Executor的内存和核心数量。 3. 在"高级配置分类(就是一个配置文件)"部分,找到"yarn-site.xml"的配置,打开编辑。 4. 在配置文件中,寻找"yarn.nodemanager.include-then-exclude- popular-hosts"或"yarn.scheduler.include-then-exclude- popular-hosts"的设置,如果没有,则需在其中添加。 5. 在该设置中,添加不想要分配Executor的节点。比如,"exclude"可以添加一个或多个节点,用逗号分隔。如需要排除节点A和节点B,则可以设置为"exclude = A,B"。 6. 保存配置文件并重启Spark服务,使配置生效。 通过以上步骤,我们就可以在CDH上让Spark Executor不分配到某些节点上。这样可以避免特定节点上的资源不被Spark使用,从而实现更加灵活的资源管理和分配策略。 ### 回答3: 在CDH上,可以通过设置Spark的资源管理器来控制Executor不分配到某些节点上。 在yarn-site.xml文件中,可以使用以下属性来限制Executor分配到特定节点: - yarn.scheduler.maximum-allocation-mb:指定每个节点的最大可用内存 - yarn.nodemanager.resource.memory-mb:指定每个节点的总内存量 通过调整这些属性,可以限制Executor被分配节点的内存总量。例如,如果想要避免将Executor分配节点A上,可以将节点A的内存量限制为较小的值,这将使资源管理器更倾向于将Executor分配到其他内存较大的节点上。 此外,还可以使用yarn.resourcemanager.exclude-list属性来指定不允许分配Executor的节点列表。在yarn-site.xml文件中添加以下配置: ``` <property> <name>yarn.resourcemanager.exclude-list</name> <value>hostname1,hostname2,...</value> </property> ``` 将hostname1, hostname2等替换为不希望分配Executor的主机名列表。 配置完毕后,重启YARN资源管理器,Executor将不再分配到被指定的节点上。 需要注意的是,以上配置是在集群级别生效的,所以在进行调整时需要考虑整个集群的资源分配情况和需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值