hadoop 2.x分布式安装

这个安装过程经历曲折,遇到了许多坑。

环境:Windows 7     Vm     

我用了三台虚拟机 centos

192.168.188.128  hadoop1(作为主服务器)

192.168.188.129  hadoop2

192.168.188.130  hadoop3

如果你们的安装环境好了,接下来我们就开始安装hadoop之旅吧!

1.配置jdk

jdk的配置这里不做讲解,百度太多了。

2.下载hadoop

官网下载hadoop,我用的是3.0.3的版本。

3.我的hadoop 安装目录是    /home/user/hadoop

解压出来。

4.修改hosts

vi  /etc/hosts

输入

192.168.188.128  hadoop1

192.168.188.129 hadoop2

192.168.188.130 hadoop3

保存退出

三台机器都需要。

配置好了之后 可以试试  ping  hadoop2    试试  ping hadoop3 。各个机器都可以试试 是否配置好了。

5.配置ssh免密登录。

以上都是准备工作,准备工作做好了之后。

分别在三台机器上运行以下

ssh-keygen -t  rsa    

一路回车(ENTER)到底

然后在主服务器上生成的id_rsa.pub  发送到从服务器

ssh-copy-id -i  ~/.ssh/id_rsa.pub   root@IP(换成你对应的IP)  -p   (端口)

两台从服务器都要.如果遇到了需要输入密码,输入密码即可。

完成后,

在主服务器上试试    ssh  hadoop2   ssh hadoop3,如果不需要密码就能登录说明配置成功.

注意:配置ssh我遇到的坑:出现了  WARING:REMOTE HOST IDENFIATE HAS CHANGED

这是因为我之前配置的时候 将公钥已经添加到了ssh.pub里面。在ssh.pub里面找到出错对应的IP,将ip和公钥一并删除。然后在运行ssh-copy-id -i  ~/.ssh/id_rsa.pub   root@IP(换成你对应的IP)  -p   (端口)  就好了。

写完了之后发现漏了一步  还需要配置hadoop的环境  

vi  /etc/profile

6.配置各种文件

进入到   hadoop里面的etc文件夹下   会看到一个hadoop的文件。然后进去

(1)配置core-site.xml

<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/usr/hadoop/hadoopwork</value>
</property>

下面的那个tmp.dir是临时工作目录,建议最好自己设定。如果是系统默认的,linux会在每次开机之前清空。

所以最好自己设定一个。

(2)配置hdfs-site.xml

<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>hadoop3:50090</value>
        </property>

(3)配置mapred-site.xml

<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>
(4)配置yarn-site.xml

<property>
<name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
</property>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>hadoop2</value>
        </property>
<property>
                <name>yarn.log-aggregation-enable</name>
                <value>true</value>
        </property>
        <property>
                <name>yarn.log-aggregation.retain-seconds</name>
                <value>600000</value>
        </property>
(5)修改hadoop-env.sh

修改  java_home   改为你的jdk安装目录

Java_home在27行

(6)添加slaves文件  在etc/hadoop下面  没有slaves文件需要自己去建立

vi  slaves

添加如下内容

hadoop1
hadoop2
hadoop3
(7)进入 hadoop 下面的sbin修改

start-yarn.sh文件

在头部加入

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
 

同样的在stop-yarn.shyexu也需要加入

(8)修改start-dfs.sh和stop-dfs.sh  同样在头部加入

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

7.启动

以上就算配置完成。接下来就是启动

./start-all.sh启动

./stop-all.sh 停止

至此,hadoop的安装环境完成。以上是根据我的hu回忆写成的,可能多多少少存在着瑕疵,欢迎各位指出。

网上有的文章是使用新建用户组。我在这里为了方便 就没有使用用户组 直接使用的root。

猜你喜欢

转载自blog.csdn.net/zhangqiao8070/article/details/81295669