准备环境
硬件
三台PC机,联网
软件
JAVA 1.8
hadoop 2.6.2
SSH无密码登录配置
配置机器 host
sudo vi(gedit) /etc/hosts
最下面增加
192.168.0.2 hadoop1
192.168.0.3 hadoop2
192.168.0.4 hadoop3
ssh免密码验证配置
- 在hadoop1机器命令行环境输入:
cd ~/.ssh/,进入.ssh目录。 - 输入命令生成秘钥:
ssh-keygen -t rsa,会生成(id_rsa,id_rsa.pub)两个文件。 - 生成authorized_keys文件:c
at id_rsa.pub >> authorized_keys。 - 同样在另外两台机器(hadoop2、hadoop3)上也生成这两份文件。
- 将hadoop2、hadoop3上生成的id_rsa.pub重命名后拷贝到hadoop1的.ssh目录中,分别为:id_rsa_hadoop2.pub、id_rsa_hadoop3.pub。
- 输入命令:
cat id_rsa_hadoop2.pub>> authorized_keys与cat id_rsa_hadoop3.pub>> authorized_keys。 - 将authorized_keys文件分别拷贝到hadoop2与hadoop3的.ssh目录中。
- 对.ssh/ 文件夹与authorized_keys文件进行授权:
chmod 700 ~/.ssh、chmod 600 ~/.ssh/authorized_keys。
安装Hadoop
- 解压hadoop到自己指定的目录,我是存放在home下面。
cd/hadoop-2.6.2/etc/hadoop。- 打开hadoop-env.sh文件,修改JAVA_HOME=/usr/java/jdk1.8.0_65。
- 打开yarn-env.sh文件,修改JAVA_HOME=/usr/java/jdk1.8.0_65。
- 配置slaves文件,增加hadoop1、hadoop2、hadoop3。
- 配置 core-site.xml文件。
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/hadoop/tmp</value>
<description>Abasefor other temporary directories.</description>
</property>
<property>
<name>hadoop.proxyuser.spark.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.spark.groups</name>
<value>*</value>
</property>
</configuration>
- 配置 hdfs-site.xml 文件
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop1:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/hadoop/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
- mapred-site.xml 文件
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop1:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop1:19888</value>
</property>
</configuration>
- 配置 yarn-site.xml 文件
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>hadoop1:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoop1:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoop1:8035</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoop1:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoop1:8088</value>
</property>
</configuration>
- 配置好的hadoop-2.6.2以相同的目录结构拷贝到另外两台机器上。
启动hadoop
格式化namenode
分别在每台机器的hadoop2-6.2目录下执行:./bin/hdfs namenode -format。
启动hdfs
./sbin/start-dfs.sh
启动yarn
./sbin/start-yarn.sh
查看集群状态
./bin/hdfs dfsadmin -report
本文详细介绍了如何准备环境,包括硬件配置、软件安装、SSH无密码登录配置及Hadoop的安装与配置过程,最终实现Hadoop集群的搭建。
2722

被折叠的 条评论
为什么被折叠?



