如果是全新安装集群的话,可以参考《Ubuntu 16.04上搭建CDH5.16.1集群

下面是集群新增节点步骤:

1.已经存在一个集群,有两个节点

192.168.100.19 hadoop-master

192.168.100.20 hadoop-slave1

新增节点ip为192.168.100.21

2.新增节点所有的操作都在root下进行,所以首先需要设置ssh可以使用root登录(如果已经是root登录则跳过)

①设置root的登录密码

sudo passwd root

②切换到root用户

sudo su root

③设置登录账户可以使用root

vi /etc/ssh/sshd_config
#PermitRootLogin prohibit-password #屏蔽这一行
PermitRootLogin yes #增加这一行

④更新软件列表并检查是否联网状态

apt-get update

3.新增节点关闭防火墙

ufw disable

4.设置新增节点hostname和hosts

①设置hostname:

vi /etc/hostname

设置为hadoop-slave2

②修改hosts

vi /etc/hosts
127.0.0.1       localhost
#127.0.1.1 test1 #屏蔽这一行 #新增下面三行
192.168.100.19 hadoop-master
192.168.100.20 hadoop-slave1
192.168.100.21 hadoop-slave2

③使用ping命令,查看以上设置是否正确

ping hadoop-master
ping hadoop-slave1
ping hadoop-slave2

④重启后用root登录

5.让三台服务器之间互相可以使用root无需输入密码进行ssh登录。

①新增节点生成公钥(不要设置密码)

ssh-keygen -t rsa

截图如下:

②将本机的公钥复制到另外两台服务器上。(过程需要输入目标服务器的root登录密码)

ssh-copy-id -i /root/.ssh/id_rsa.pub hadoop-master #在新增节点上执行
ssh-copy-id -i /root/.ssh/id_rsa.pub hadoop-slave1 #在新增节点上执行
ssh-copy-id -i /root/.ssh/id_rsa.pub hadoop-slave2 #在master和slave1上执行

③测试是否成功

ssh hadoop-master #无密码远程登录hadoop-master,使用exit退出
ssh hadoop-slave1 #无密码远程登录hadoop-slave1,使用exit退出
ssh hadoop-slave2 #无密码远程登录hadoop-slave2,使用exit退出

④如果出现下面的报错

ssh:connect to host hadoop-slave1 port 22: Connection refused

ssh: connect to host hadoop-slave1 port 22: Connection timed out

检查root的密码是否正确,可以使用ssh localhost检查一下是否可以登录到本机,如果不行则证明root密码有问题,转到上面第2个步骤重新设置root密码。

检查/etc/hosts文件中ip和hostname是否正确

检查防火墙是否关闭

6.安装JAVA运行环境

①正常显示版本号则跳过下面步骤

java -version

②如果显示如下,则表示还没有安装JAVA

③具体JDK的安装可以参考

《大数据新手之路一:安装JDK》

7.安装JAVA的MySQL软件包

apt-get install libmysql-java

8.新增节点中下载CDH相关文件(由于版本的更新,版本号会不断递增),并进行设置

①在浏览器中输入 http://archive.cloudera.com/cm5/cm/5/ 查看到ubuntu对应最新版本

②在浏览器中输入 http://archive.cloudera.com/cdh5/parcels/latest 查看到ubuntu对应最新版本

③将上面的四个文件都下载下来

wget -c http://archive.cloudera.com/cm5/cm/5/cloudera-manager-xenial-cm5.16.1_amd64.tar.gz
wget -c http://archive.cloudera.com/cdh5/parcels/latest/CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel
wget -c http://archive.cloudera.com/cdh5/parcels/latest/CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel.sha1
wget -c http://archive.cloudera.com/cdh5/parcels/latest/manifest.json

④将CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel.sha1文件重命名为CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel.sha

mv CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel.sha1 CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel.sha

⑤在/opt中建立对应的文件夹结构(cm-5.16.1为当前版本号)

| --/opt
|--/cloudera
|--/parcels
|--/parcel-repo
|--/cm-5.16.1
cd /opt
mkdir cm-5.16.1
mkdir cloudera
cd cloudera
mkdir parcels
mkdir parcel-repo

⑥将CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel、CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel.sha和manifest.json三个文件拷贝到/opt/cloudera/parcel-repo中

cp CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel CDH-5.16.1-1.cdh5.16.1.p0.3-xenial.parcel.sha manifest.json /opt/cloudera/parcel-repo

⑦解压cloudera-manager-xenial-cm5.16.1_amd64.tar.gz到/opt中

tar -zxf cloudera-manager-xenial-cm5.16.1_amd64.tar.gz -C /opt

⑧修改配置文件

vi /opt/cm-5.16.1/etc/cloudera-scm-agent/config.ini
# Hostname of the CM server.
server_host=hadoop-master #修改为主机名

9.新增用户

useradd --system --home=/opt/cm-5.16./run/cloudera-scm-server --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

10.安装python

apt-get install python2.

11.设置vm.swappiness=10

vi /etc/sysctl.conf
vm.swappiness=10 #在文件最后增加一行
cat /proc/sys/vm/swappiness #查看当前值,设置后需要重启才生效

12.安装必要的库

apt-cache search libmysql
apt-get install libmysql++-dev
apt-get install python-libxslt1

13.java环境快捷方式

mkdir /usr/java
ln -s /usr/local/java /usr/java/default

14.reboot重启

15.启动进程(报错信息的处理可查看:《Ubuntu 16.04上搭建CDH5.16.1集群》)

cd /opt/cm-5.16.1/etc/init.d
./cloudera-scm-server start
./cloudera-scm-agent start

16.耐心稍等一会,进入master的页面http://192.168.100.19:7180/cmf/login进行登录

17.找到所有主机列表(如果没看到新的节点,要么是等的时间不够久,要么是上面的步骤出错了)(可以看到192.168.100.21下的Roles为空)

18.点击Add New Host to Cluster,出现向导

19.这里显示还没有加入到集群的新节点

20.耐心等待安装

21.返回安装信息

22.这里可以为新增节点角色,这里我们不设置,在后面再新增DataNode的角色

23.完成Finished

24.下面步骤为将新增节点加入到DataNode角色中。

25.点击进入HDFS的DataNode中

26.点击Add Role Instances

27.在所有主机上使用DataNode角色

28.全部步骤完成。

以上。

CDH5.16.1集群新增节点的更多相关文章

  1. redis 集群新增节点,slots槽分配,删除节点, [ERR] Calling MIGRATE ERR Syntax error, try CLIENT (LIST | KILL | GET...

    redis reshard 重新分槽(slots) https://github.com/antirez/redis/issues/5029 redis 官方已确认该bug redis 集群重新(re ...

  2. Elastic search集群新增节点(同一个集群,同一台物理机,基于ES 7.4)

    一开始,在电脑上同一个集群新增节点(node)怎么试也不成功,官网guide又语焉不详?集群健康值yellow(表示主分片全部可用,部分复制分片不可用) 最后,在stackoverflow上找到了答案 ...

  3. Ubuntu 16.04上搭建CDH5.16.1集群

    本文参考自:<Ubuntu16.04上搭建CDH5.14集群> 1.准备三台(CDH默认配置为三台)安装Ubuntu 16.04.4 LTS系统的服务器,假设ip地址分布为 192.168 ...

  4. Spark集群新增节点方法

    Spark集群处理能力不足需要扩容,如何在现有spark集群中新增新节点?本文以一个实例介绍如何给Spark集群新增一个节点. 1. 集群环境 现有Spark集群包括3台机器,用户名都是cdahdp, ...

  5. CDH5.16.1集群企业真正离线部署

    一.准备工作 1.离线部署主要分为三块: MySQL离线部署 CM离线部署 Parcel文件离线源部署 2.规划 节点 MySQL部署组件 Parcel文件离线源 CM服务进程 大数据组件 hadoo ...

  6. k8s集群新增节点

    节点为centos7.4 一.node节点基本环境配置 1.配置主机名 2.配置hosts文件(master和node相互解析) 3.时间同步 ntpdate pool.ntp.org date ec ...

  7. yum安装CDH5.5 Hadoop集群

    1.环境说明 系统环境: 系统环境:centos6.7 Hadoop版本:CDH5.5 JDK运行版本:1.7.0_67 集群各节点组件分配: 2.准备工作 安装 Hadoop 集群前先做好下面的准备 ...

  8. Tomcat集群---Cluster节点配置(转)

    <!-- Cluster(集群,族) 节点,如果你要配置tomcat集群,则需要使用此节点. className 表示tomcat集群时,之间相互传递信息使用那个类来实现信息之间的传递. cha ...

  9. Kafka 1.0.0集群增加节点

    原有环境 主机名 IP 地址 安装路径 系统 sht-sgmhadoopdn-01 172.16.101.58 /opt/kafka_2.12-1.0.0 /opt/kafka(软连接) CentOS ...

随机推荐

  1. mongodb和python交互

    一.安装pymongo包 sudo pip install pymongo 二.新增数据: 增加一条: from pymongo import MongoClient client = MongoCl ...

  2. PL/SQL Block中对单引号进行转义

    可以使用如下的方式: STR := q'[ CREATE TABLE TNAME AS SELECT ... FROM INPUT_TABLE IP WHERE ((IP.DATE_FIELD = T ...

  3. 蓝桥杯c/c++省赛真题——明码

    标题:明码 汉字的字形存在于字库中,即便在今天,16点阵的字库也仍然使用广泛.###16点阵的字库把每个汉字看成是16x16个像素信息.并把这些信息记录在字节中. ###一个字节可以存储8位信息,用3 ...

  4. 【Linux】Jenkins安装(二)

    Jenkins介绍 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1.持续的软件版本发布/测试项目. 2.监控外部调用执行的工作. 安装环境 操作系统:lin ...

  5. 帮助Bsny(乱搞做法)

    帮助Bsny 题目描述 Bsny的书架乱成一团了,帮他一下吧! 他的书架上一共有n本书,我们定义混乱值是连续相同高度书本的段数.例如,如果书的高度是30,30,31,31,32,那么混乱值为3:30, ...

  6. [转载]DBMS_LOB

    1.LOB背景 在现在的系统开发中,需要存储的已不仅仅是简单的文字信息,也包括一些图片.音像资料或者超长的文本,这要求后台数据库具有存储这些数据的能力,Oracle通过提供LOB对象实现了该功能. 2 ...

  7. Redis的数据结构、通用操作及其特性

    Redis的数据结构 五种数据类型: 字符串(String).字符串列表(list).字符串集合(set).有序字符串集合(sorted set).哈希(hash) key定义的注意点: 不要过长,不 ...

  8. LightGBM算法(转载)

    原文:https://blog.csdn.net/niaolianjiulin/article/details/76584785 前者的含义是轻量级,GBM:梯度上升机. 相较于xgboost: 更快 ...

  9. PHP7.1 mcrypt_module_open() is deprecated

    PHP7.1 mcrypt_module_open() is deprecated 一:函数前添加抑制符 @ mcrypt_module_open....;->@mcrypt_module_op ...

  10. lnmp 系统500 报错

    分析点: 1 文件目录权限不足 如果日志缓存目录没有写入权限 chmod -R 775 目录 2 lnmp 一键安装包 查看.user.ini ,其中open_basedir  不要设置到public ...