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中的问题和解决方法 ...
随机推荐
- 修改excel图表中的“系列一”
修改excel图表中的"系列一" 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 https://zhidao.baidu.com/question/153915 ...
- 转 linux下ClamAV使用
linux下ClamAV使用 第一步:Clamav下载http://www.clamav.net/downloads#yuminstall wget –y第二步:创建clamav用户和组groupad ...
- python之参数解析模块argparse
2.7之后python不再对optparse模块进行扩展,python标准库推荐使用argparse模块对命令行进行解析. 简单入门 先来看个例子: argparse_test.py: import ...
- 使用idea创建简单的webservice服务
New project: 生成HelloWorld.wsdl: 配置好tomcat后还需要加入 Axis 的库: 启动后,访问http://localhost:8080/services: 点击He ...
- LeetCode_237. Delete Node in a Linked List
237. Delete Node in a Linked List Easy Write a function to delete a node (except the tail) in a sing ...
- CRC校验的问题(c语言实现CRC校验和)
1. 前面的数 7A 01 00,计算的结果是0X4920 2. 那么把数据CRC加上 3. 测试代码,计算出来的结果对不上,什么情况?可是我把参考模型的全部都选了一遍,也对不上其中一个!!! 4. ...
- Intellij IDEA 打包jar的多种方式
IDEA打包jar包的多种方式 用IDEA自带的打包形式 用Maven插件maven-shade-plugin打包 用Maven插件maven-assembly-plugin打包 1.view-> ...
- FutureTask源码阅读
FutureTask功能用法 类结构 源码中详细说明了FutureTask生命周期状态及变化 /** * The run state of this task, initially NEW. The ...
- 使用jetpack 4.2.2对jetson tx2进行刷机
一.前言 加班加点几天今天终于成功刷机,记录一下成功的一些过程,以方便同样卡住的朋友参考. 延续官网教程[1]中对设备的叫法,pc机称为host,tx2称为target. 二.过程 1. host相关 ...
- spring boot配置文件application.properties配置JPA以及数据源
1.application.properties配置jpa模板 spring.datasource.url=jdbc:mysql://localhost:3306/springboottest?use ...