Cloudera Certified Associate Administrator案例之Install篇
Cloudera Certified Associate Administrator案例之Install篇
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.创建主机模板(为了给主机套用,说白了就是给新加入集群的节点提前分配好角色)
问题描述:
公司新购了一批机器,准备扩充DataNode节点。你决定用CM的host template功能来为新机器配置DataNode通用的服务。新节点需要作为HDFS和YARN的工作节点,因此模板的设计如下:
名称:Temp1
HDFS roles:Datanode
YARN roles:NodeManager
要求需要套用HDFS和YARN的Default Group的配置 解决方案:
在企业级实战中,集群扩容时常见且重要的操作,如果手工一台一台操作,不仅效率地下,而且容易出错。
CM提供了多种机制来简化扩容操作,其中host template就是其中重要的一种,通过该特性,可以大大简化工作节点的配置(对于管理节点,工具节点,边缘节点,如果有多台配置完全一样,也可以使用该特性来扩容),如Datanode,Nodemanager,Kafka Broker等。
1>.点击主机,选择"主机模板"

2>.点击创建

3>.自定义模板名称并选择对应的角色和组

4>.创建成功

二.创建角色组
问题描述:
公司新购了一批机器,准备扩充DataNode节点。然而,新机器的硬件配置和旧机器有一些差异。你决定为旧机器创建一个角色组,设置合适的配置。新机器继续使用默认的组(Default Group)的配置,就如前面我们配置的模板一样。新角色组的需求为:
命名为DN1,先继承默认的角色组的配置,并使用旧机器套用DN1的配置。然后要变更一些参数,DN1的Default Group的DataNode Volume Choosing Policy参数都必须设置为Avaliable Space。
Default Group的Available Space Policy Balanced Preference参数需要设置为0.85,DN1的Available Space Policy Balanced Preference参数设置为0.8。
解决方案:
异构集群是Hadoop运维中比较棘手的一个问题,因此我们推荐大家在新建集群时尽量使用相同的硬件(工作节点)以避免各种麻烦。但现实中由于企业规划不佳,采购限制等诸多原因,很可能出现异构的情况,因此我们需要具备一定的应对能力。
1>.使用正确的用户名密码登录CM界面,点击hdfs服务

2>.进入HDFS服务管理界面后,点击"配置",再点击"角色组"

3>.点击"创建"按钮来创建一个自定义的角色组

4>.编辑角色组信息

5>.查看Datanode默认组的节点信息

6>.如下图所示,点击“移至另一个角色组”

7>.点击"移动"

8>.默认角色组已经移动到咱们刚刚新建的dn1角色组,但需要重启才能生效,我们不着急重启,继续看下一步操作。

9>.搜索关键字"DataNode Volume Choosing Policy"

10>.搜索关键字“Available Space Policy Balanced Preference”

11>.做完上述操作后,我们需要重启HDFS集群,使得配置生效

三.将新节点加入集群
问题描述:
正式地将新节点加入集群。我们需要将node107.yinzhengjie.org.cn这个节点加入CM的托管,并套用Temp1这个主机模板从而加入集群。 解决方案:
在实践中集群扩容,损坏硬件更换时都设计到这个操作,因此也要熟练掌握。 我们假设将要加入集群的主机已经配置好环境并启动Cloudera Manager Agent进程,详情请参考:https://www.cnblogs.com/yinzhengjie/articles/11019525.html
1>.点击“所有主机”

2>.点击"向集群添加新主机"

3>.进入"添加主机向导"

4>.为CDH集群安装指定主机

5>.等待主机激活完毕后,点击"继续"

6>.点击继续

7>. 选择咱们之前创建的主机模板(您选中的模板有对应的角色,而新加入的节点将来就会继承该主机模板的角色)

8>.等待集群重启完毕

9>.主机扩展成功(需要注意的是,如果在第7步骤没有选择对应的主机模板也没事,只要agent成功加入集群后,我们选中相应的节点并点击下图的"已选定操作",选择"应用主机模板"选项就有对应的你之前创建的模板供你选择,选择主机模板后别忘记顺便勾选"应用主机模板后部署客户端配置并启动新创建的角色。"属性)

四.移除CDH集群的节点
1>.点击"主机",选择"所有主机"

2>.勾选需要下线的主机

3>.我们点击"已选定的操作"(英文为"Actions for Selected "),选择"Begin Maintenance"(表示进入维护模式,进入维护模式会听到该主机的服务)

4>.点击"Begin Maintenance"

5>.主机进行授权命令

6>.主机进入维护模式,我们需要手动停掉agent进程

7>.选择从集群中删除

8>.点击确认

9>.删除主机上的角色(等待时间较长)

10>.角色移除成功

11>.点击"Remove From Cloudera Manager"

12>.点击"确认"

13>.节点移除成功

14>.对于 CM Manager 来说,它会把主机元数据全部存放在数据库里,对应的表为"${DATABASE}.HOSTS"(如果你不想从Cloudera Manager WebUI来删除,那咱们就可以考虑直接去数据库干掉他!但是相对来说比较危险,万一你不小心删除错主机就比较尴尬啦~)
mysql> SELECT * FROM HOSTS\G
*************************** 1. row ***************************
HOST_ID: 2
OPTIMISTIC_LOCK_VERSION: 14
HOST_IDENTIFIER: 5411b2de-f7e8-45de-bde3-6d8aedfed4d5
NAME: node101.yinzhengjie.org.cn
IP_ADDRESS: 172.30.1.101
RACK_ID: /default
STATUS: NA
CONFIG_CONTAINER_ID: 1
MAINTENANCE_COUNT: 0
DECOMMISSION_COUNT: 0
CLUSTER_ID: 1
NUM_CORES: 4
TOTAL_PHYS_MEM_BYTES: 8182054912
PUBLIC_NAME: NULL
PUBLIC_IP_ADDRESS: NULL
CLOUD_PROVIDER: NULL
*************************** 2. row ***************************
HOST_ID: 3
OPTIMISTIC_LOCK_VERSION: 13
HOST_IDENTIFIER: 0a4853a0-7adc-4dae-a1da-3a12636f3574
NAME: node103.yinzhengjie.org.cn
IP_ADDRESS: 172.30.1.103
RACK_ID: /default
STATUS: NA
CONFIG_CONTAINER_ID: 1
MAINTENANCE_COUNT: 0
DECOMMISSION_COUNT: 0
CLUSTER_ID: 1
NUM_CORES: 4
TOTAL_PHYS_MEM_BYTES: 3954196480
PUBLIC_NAME: NULL
PUBLIC_IP_ADDRESS: NULL
CLOUD_PROVIDER: NULL
*************************** 3. row ***************************
HOST_ID: 4
OPTIMISTIC_LOCK_VERSION: 13
HOST_IDENTIFIER: b613ff6e-6890-447a-a161-7f5324a14143
NAME: node102.yinzhengjie.org.cn
IP_ADDRESS: 172.30.1.102
RACK_ID: /default
STATUS: NA
CONFIG_CONTAINER_ID: 1
MAINTENANCE_COUNT: 0
DECOMMISSION_COUNT: 0
CLUSTER_ID: 1
NUM_CORES: 4
TOTAL_PHYS_MEM_BYTES: 3954196480
PUBLIC_NAME: NULL
PUBLIC_IP_ADDRESS: NULL
CLOUD_PROVIDER: NULL
*************************** 4. row ***************************
HOST_ID: 5
OPTIMISTIC_LOCK_VERSION: 13
HOST_IDENTIFIER: f58247ff-4d3f-40d3-8f49-8f91f45d4407
NAME: node104.yinzhengjie.org.cn
IP_ADDRESS: 172.30.1.104
RACK_ID: /default
STATUS: NA
CONFIG_CONTAINER_ID: 1
MAINTENANCE_COUNT: 0
DECOMMISSION_COUNT: 0
CLUSTER_ID: 1
NUM_CORES: 4
TOTAL_PHYS_MEM_BYTES: 3954196480
PUBLIC_NAME: NULL
PUBLIC_IP_ADDRESS: NULL
CLOUD_PROVIDER: NULL
4 rows in set (0.00 sec) mysql>
mysql> SELECT * FROM HOSTS\G
五.
Cloudera Certified Associate Administrator案例之Install篇的更多相关文章
- Cloudera Certified Associate Administrator案例之Troubleshoot篇
Cloudera Certified Associate Administrator案例之Troubleshoot篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.调整日志的进 ...
- Cloudera Certified Associate Administrator案例之Test篇
Cloudera Certified Associate Administrator案例之Test篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.准备工作(将CM升级到&qu ...
- Cloudera Certified Associate Administrator案例之Manage篇
Cloudera Certified Associate Administrator案例之Manage篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.下载Namenode镜像 ...
- Cloudera Certified Associate Administrator案例之Configure篇
Cloudera Certified Associate Administrator案例之Configure篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.下载CDH集群中最 ...
- Flume实战案例运维篇
Flume实战案例运维篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Flume概述 1>.什么是Flume Flume是一个分布式.可靠.高可用的海量日志聚合系统,支 ...
- CNCF基金会的Certified Kubernetes Administrator认证考试计划
关于CKA考试 CKA(Certified Kubernetes Administrator)是CNCF基金会(Cloud Native Computing Foundation)官方推出的Kuber ...
- 分享数百个 HT 工业互联网 2D 3D 可视化应用案例之 2019 篇
继<分享数百个 HT 工业互联网 2D 3D 可视化应用案例>2018 篇,图扑软件定义 2018 为国内工业互联网可视化的元年后,2019 年里我们与各行业客户进行了更深度合作,拓展了H ...
- 数百个 HT 工业互联网 2D 3D 可视化应用案例分享 - 2019 篇
继<分享数百个 HT 工业互联网 2D 3D 可视化应用案例>2018 篇,图扑软件定义 2018 为国内工业互联网可视化的元年后,2019 年里我们与各行业客户进行了更深度合作,拓展了H ...
- robotframework+selenium搭配chrome浏览器,web测试案例(搭建篇)
这两天发布版本 做的事情有点多,都没有时间努力学习了,先给自己个差评,今天折腾了一天, 把robotframework 和 selenium 还有appnium 都研究了一下 ,大概有个谱,先说说we ...
随机推荐
- Kafka限流
1. 客户端认证 如果kafka客户端是认证的,那么可以使用userId和clientId两种认证方式.如果没有认证只能使用clientId限流. bin/kafka-configs. --alter ...
- ng2 空标签
<ng-container *ngIf="v.products"> <li class="clearfix" *ngFor="let ...
- 【MongoDB学习之六】MongoDB集群
环境 MongoDB 4.0 CentOS 6.5_x64 一.主从复制-Master-Slave这种模式已不再推荐使用了. 二.副本集-Replica Set(用的多)副本集其实一种互为主从的关系, ...
- 使用ReadtheDocs托管技术文档
ReadtheDocs Read the Docs非常适合写软件文档以及编写一些教程.电子书之类.对于一些一两篇文章就能写清楚的可以记笔记或写博客, 但是如果要写成一个系列的,不如写成一本书的形式,更 ...
- Delphi文字转语音TTS【支持选择语音库,播放,暂停,开始,停止,生成语音文件,设置音量,设置语速】
作者QQ:(648437169) 点击下载➨文字转语音TTS [Delphi 文字转语音TTS]调用系统自带的TTS组件,支持XP,vista,win7,win8,win10系统,支持选择语音库,播放 ...
- jQuery Ajax async=>false异步改为同步时,导致浏览器假死的处理方法
今天做一个需求遇到了这么个情况,就是用户个人中心有个功能,点击按钮,可以刷新用户当前的积分,这个肯定需要使用到ajax的同步请求了,当时喀喀喀三下五除二写玩了,大概代码如下: /** * 异步当前用户 ...
- 【C语言】崩溃的双重指针
指针的指针? 前言: 指针的初识点击移步 双重指针: 指向指针的指针是一种多级间接寻址的形式,或者说是一个指针链.通常,一个指针包含一个变量的地址.当我们定义一个指向指针的指针时,第一个指针包含了第二 ...
- Linux基础(08)信号通信机制
1.Linux中的信号(有32个) 信号会中断一些函数的阻塞 https://zhidao.baidu.com/question/1766690354480323100.html #define S ...
- 基于hystrix的线程池隔离
hystrix进行资源隔离,其实是提供了一个抽象,叫做command,就是说,你如果要把对某一个依赖服务的所有调用请求,全部隔离在同一份资源池内 对这个依赖服务的所有调用请求,全部走这个资源池内的资源 ...
- java之mybatis之使用mybatis实现crud操作
目录结构: 1.封装 mybatis 的工具类: MybatisUtil.java public class MybatisUtil { private static SqlSessionFactor ...