CentOS7安装CDH 第八章:CDH中对服务和机器的添加与删除操作
相关文章链接
CentOS7安装CDH 第二章:CentOS7各个软件安装和启动
CentOS7安装CDH 第四章:CDH的版本选择和安装方式
CentOS7安装CDH 第五章:CDH的安装和部署-CDH5.7.0
CentOS7安装CDH 第六章:CDH的管理-CDH5.12
CentOS7安装CDH 第七章:CDH集群Hadoop的HA配置
CentOS7安装CDH 第八章:CDH中对服务和机器的添加与删除操作
1. CDH动态添加机器
1.2. 对新机器的环境配置
1、配置新机器的JDK环境,保持和其他机器一致,可参考上述JDK的安装;
2、关闭防火墙,如果在线上环境要开放好端口;
3、上传MySQL的连接Jar包;
4、修改原有集群的所有机器的/etc/hosts,将新机器的对应ip添加进去:
echo “192.168.12.120 centos.ouyang.com” >> /etc/hosts
5、将老机器中的/etc/hosts中ip地址对应的主机名的内容复制到新机器上;

6、检查新机器的python版本,要和老机器保持一致;

7、配置新机器的yum源,可以直接到老机器上复制即可;
cd /etc/yum.repos.d/
scp cloudera-manager.repo 192.168.12.120:/etc/yum.repos.d/

注意:
1、在添加其他机器时操作系统和原机器的操作系统要保持版本一致;
2、如果使用jar包安装JDK,安装地址为/usr/java目录下,其他目录下会报错;
3、上传的MySQL连接Jar包需上传到/usr/share/java目录下;
4、安装JDK时建议使用上述的rpm包安装,这样会将python更新一下;
1.2. 在CDH的web界面添加新机器
1、点击向集群中添加新主机按钮

2、添加主机向导

3、输入新机器的IP地址搜索新机器,如果是使用阿里云等云服务机器,请输入内网IP,在阿里云上,内网速度比外网快很多

4、搜索到新机器,点击继续按钮

5、选择自定义存储库,自定义存储库中的地址就是yum源配置的地址,可以通过cat cloudera-manager.repo命令查看,将其中的baseurl的地址复制进去即可,请注意其中的协议要为http,不能是https

6、不安装自带JDK,点击下一步

7、输入用户的密码

8、在新添加的机器中安装agent(这是拼人品的时候,遇到问题请查看日志,然后解决问题,再重新安装),安装成功后点击继续按钮
注意:如果在安装过程中,点击了中止按钮,此时需要到命令行端,执行ps -ef | grep yum命令,查找到对应的yum进程,并kill掉,再去web界面重新安装,否则不能重新安装成功,在web界面中止,不会把yum源完全关闭,需要在命令行界面彻底关闭才行

9、安装选定的包,安装完成之后点击继续按钮

10、进行主机检查,可以参考上述的CDH安装中,设置大页面和swap

11、选择主机模板,一般是不选择模板的,先添加一台空机器进入集群中

12、部署客户端配置,点击继续按钮即可

13、添加成功

2. CDH动态添加服务
1、选择对应服务中的添加角色实例按钮(以HDFS为例)

2、为要添加的服务选择具体的主机(以DataNode为例)

3、审核更改DataNode的数据目录和容忍DataNode可以失败的卷(请注意CentOS中挂载的其他磁盘,如果没有挂载其他磁盘,就如下所示,当磁盘容量充足时,不需要添加其他的目录,保留如下目录即可)

4、重新部署客户端配置

按照流程往下走即可,其中的重新部署客户端配置选项一定要选,如下图:

5、重启过时服务,重启之后点击完成即可

6、添加完成,在主界面有一些配置等小问题需要更改,请根据具体情况进行修改即可,例在HDFS中添加了一个DataNode,此时HDFS中的块可以备份为3个,CDH就会提示进行修改,如下图所示,但在生产环境中最好不要修改配置,因为修改配置后有重启服务的提示,一不小心重启服务在生产环境中会造成不好的后果(注:生产环境中一般情况下不要重启服务,如果一定要重启服务请在晚上等业务较少时再进行操作)


7、如果碰到如下情况,新添加的服务还是没有启动,可以手动启动

3. CDH的迁移服务
1、场景一,A机器的磁盘快满了,新添加了B机器(大磁盘)到集群上:
此时,需要在B机器上添加DN,并删除A机器的DN,但当在B机器上添加DN,并删除A机器的DN时,HDFS集群会自动修复数据,即会保持HDFS中的block块备份为3个,此时会有很多数据通过B机器的DN写入到B机器的磁盘中,会占大量的网络和磁盘IO,此时应该评估B机器的磁盘是否够用(预估2年后的数据量,B机器磁盘是否能装下),是否处于业务低谷,即会不会影响Job的执行。
2、场景二,HDFS中log分区的数据备份:
将存储到HDFS中6个月前的冷数据迁移到 aws s3 / aliyun oss / 或另外的集群上,达到数据备份并清理集群中机器磁盘的目的。
3、注意:
a) 有些服务不能迁移(如DataNode),只能在新机器上添加服务,再在老机器上删除服务。
b) 在迁移服务时会重启集群上的该服务,所以应该选择在业务低谷中对服务进行迁移。
c) 在HDFS中,有balancer平衡器对各个机器中的数据进行平衡,但当一个机器中的数据太多时(另外还有个机器的数据很少),使用平衡器不会将该机器中的数据移除太多,只会移除比较少的一部分,所以一般是在新机器上添加服务,将老机器上的服务删除。
4. CDH中的删除服务和机器
1、选中该机器,并停止该机器上的所有角色

2、去对应的服务中删除该机器中每一个角色



3、通过命令行,关闭该机器的的agent服务,并将该机器从集群中移除


4、成功将该机器从集群中移除(移除也可以直接选中该机器,然后解除授权,但速度太慢,不建议使用,上述删除每个服务的方法速度较快)

CentOS7安装CDH 第八章:CDH中对服务和机器的添加与删除操作的更多相关文章
- centos7安装vim以及在vim中显示中文
1.centos7安装vim yum -y install vim(简单粗暴安装方法) 2.在vim中显示中文不出现乱码 (1).vim ~/.vimrc (~/.vimrc为vim配置文件) (2) ...
- VC2008中如何为MFC应用程序添加和删除消息响应函数
最近重温<MFC Windows应用程序设计>第二版这本书,里面的代码全部是使用VC6.0写的,我Win7下安装的是VS2008开发环境. VC2008下添加和删除常见的消息响应函数有两种 ...
- 通过QT查找Word中的关键字,并做高亮或删除操作
最近由于项目需要,要用QT操作Word文档.具体的工作需求:在指定的Word文档(*.doc文件/*.docx文件)中查找关键字,找到后做高亮操作或者直接删除操作,然后另存为到别的目录(表示这个文件被 ...
- linux shell 中的数组的取值 遍历 替换 删除操作
引言 在Linux平台上工作,我们经常需要使用shell来编写一些有用.有意义的脚本程序.有时,会经常使用shell数组.那么,shell中的数组是怎么表现的呢,又是怎么定义的呢?接下来逐一的进行讲解 ...
- Centos7安装Redis5.0.5并加入Systemd服务
1. 安装gcc-c++, tcl yum install gcc-c++ tcl 2. 解压缩, 编译, 测试 tar zxvf redis-5.0.5.tar.gz make make test ...
- C++中对字符串进行插入、替换、删除操作
#include <iostream> #include <string> using std::cout; using std::endl; using std::strin ...
- django orm 改动数据库中已存在的表(添加、删除、修改表字段)
python3 manage.py makemigrations --empty api # 因为我的models.py文件并直接在项目根目录,而是根目录下的api目录中 python3 manage ...
- Vue中组件化编码 完成任务的添加、删除、统计、勾选需求(实战练习三完结)
上一个章节实现数据在组件之间的传递 .这一章主要是完成添加任务到任务栏.删除任务栏.统计任务完成情况.主要还是参数在各个组件之间的传递. 上一章节的链接地址:https://blog.csdn.net ...
- CentOS7安装CDH 第十章:CDH中安装Spark2
相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...
随机推荐
- PL/SQL developer 开发小技能 and ash show command PL/SQL EXECUTE 以及注释
##sample test windows 调试存储过程, 总体指导思想使用pl/sql test windows 调试存储过程,存储过程调试 可以用 run to next exception ...
- LeetCode_350. Intersection of Two Arrays II
350. Intersection of Two Arrays II Easy Given two arrays, write a function to compute their intersec ...
- [转载] HashMap的工作原理-hashcode和equals的区别
目录 前言 为什么需要使用Hashcode,可以从Java集合的常用需求来描述: 更深入的介绍 先来些简单的问题 HashMap的0.75负载因子 总结 我在网上看到的这篇文章,介绍的很不错,但是我看 ...
- [CareerCup] 9.8 Represent N Cents 组成N分钱
9.8 Given an infinite number of quarters (25 cents), dimes (10 cents), nickels (5 cents) and pennies ...
- robot:接口入参为图片时如何发送请求
https://www.cnblogs.com/changyou615/p/8776507.html 接口是上传图片,通过F12抓包获得如下信息 由于使用的是RequestsLibrary,所以先看一 ...
- ztree通过id获取节点对象
var treeObj = $.fn.zTree.getZTreeObj("treeId"); var node = treeObj.getNodeByParam("id ...
- 洛谷 题解 UVA247 【电话圈 Calling Circles】
[题意] 如果两个人互相打电话(直接或者间接),则说他们在同一个电话圈里.例如,\(a\)打给\(b\),\(b\)打给\(c\),\(c\)打给\(d\),\(d\)打给\(a\),则这四个人在同一 ...
- 2019.12.4 Hystix熔断&Feign进行远程调用&Zuul
0.学习目标 会配置Hystix熔断 会使用Feign进行远程调用 能独立搭建Zuul网关 能编写Zuul的过滤器 1.Hystrix 1.1.简介 Hystrix,英文意思是豪猪,全身是刺,看起来就 ...
- Mysql 排序优化
原文链接:https://www.cnblogs.com/moss_tan_jun/p/6021822.html https://blog.csdn.net/lb517290079/article/d ...
- 使用mybatis完成增删改查
插入 插入数据 <insert id="insertUser2" parameterType="UserEntity"> insert into u ...