安装hadoop集群

以下所有的操作都是CtntOS7系统并使用root用户权限,在此之前确定以下环境配置好:

1、配置虚拟机网络。

2、添加ip映射关系到hosts文件。

3、关闭防火墙以及selinux。

Master节点的安装配置:

1、下载解压JDK,并配置环境变量(8以上版本):

export JAVA_HOME=/home/java8
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

使环境变量生效:source /etc/profile,顺便给解压后的文件夹改个名字。

2、下载解压hadoop包(略),并配置环境变量 vim /etc/profile。

export HADOOP_HOME=/home/hadoop-3.3.0
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

使环境变量生效:source /etc/profile,顺便给解压后的文件夹改个名字。

修改home/hadoop-3.3.0/etc/hadoop/hadoop.env.sh ,将JAVA_HOME注释删掉,改成自己配置(和/etc/profile一样即可)

3、修改配置文件,需要修改的文件都在/hadoop-3.3.0/etc/hadoop/目录下:

​ 3.1 配置core-site.xml:在标签中添加如下配置:

<property>
		<name>fs.defaultFS</name>
		<value>hdfs://k8s-master:9000</value>
</property>
<property>
		<name>hadoop.tmp.dir</name>
		<value>/home/hadoop-3.3.0/hadoopdata</value>
</property>

​ 3.2 配置HDFS文件系统,编辑hdfs-site.xml在添加如下配置:

<property>
		<name>dfs.replication</name>
		<value>3</value>
</property>
<property>
		<name>dfs.name.dir</name>
		<value>/usr/local/data/namenode</value>
</property>
<property>
		<name>dfs.data.dir</name>
		<value>/usr/local/data/datanode</value>
</property>
<property>
		<name>dfs.tmp.dir</name>
		<value>/usr/local/data/temp</value>
</property>

​ 3.3 配置yarn-site.xml,同样在标签中添加如下配置:

<property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
</property>
<property>
	<name>yarn.resourcemanager.hostname</name>
	<value>k8s-master</value>
</property>

​ 3.4 配置MapReduce计算框架,编辑mapred-site.xml在配置如下:

<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
</property>

​ 3.5 配置slaves文件,该文件给出了Hadoop集群的所有slave节点(较新版本为workers,要在workers中添加master和slaves)。

#先删除localhost,然后根据自己的情况配置
k8s-node1
k8s-node2

4、至此,主节点上的配置就已经完成,现在把主节点的配置复制到slave上

scp -r /home/hadoop-3.3.0 root@k8s-node1:/home
scp -r /home/hadoop-3.3.0 root@k8s-node2:/home

​ 完成以后,在slaves上配置JDK,同1。

5、格式化文件系统,只在master做就行了。

hadoop namenode -format

6、启动和关闭Hadoop集群

进入hadoop安装目录的sbin文件夹下,运行如下命令:

#开启
start-dfs.sh
#关闭
stop-dfs.sh
#该目录下还有很多命令,看自己需要开启关闭哪个自行选择。

7、验证Hadoop集群是否启动成功。

master执行jps

如果出现namenode,datanode,jps,SecondNamenode这几个就算成功了。

同样在slave上执行jps验证。

还可以在浏览器上验证。success!

在这里插入图片描述

接下来是可能出现的几个问题:

1、ERROR:ATTEMPTING TO OPERATE ON HDFS NAMENODE AS ROOT

需要在所有节点start-dfs.sh,stop-dfs.sh 添加如下内容:

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

在所有start-yarn.sh,stop-yarn.sh添加以下内容:

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

2、Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password

这其实是需要进行免密登录配置。

先在本机生成公钥:

ssh-keygen -t rsa

连续三下回车,然后进入到.ssh目录下。

将本机的id_rsa.pub添加到其他机器中(master自身要执行:ssh-copy-id -i k8s-master):

ssh-copy-id -i k8s-node1

重新启动hadoop。

3、jps后没有datanode。这个问题是由于多次格式化文件系统导致namenode的clusterID变了而dataNode的clusterID没变。只要到master的namenode/current/VERSION文件中把clusterID拷贝到datanode/current/VERSION中就可以了(slave最好也弄一下)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值