你好,游客 登录 注册 搜索
背景:
阅读新闻

Hadoop2.6完全分布式多节点集群安装配置

[日期:2016-11-17] 来源:Linux社区  作者:Linux [字体: ]

最终目的:实现Win7下,创建Ubuntu虚拟机搭建Hadoop多节点集群

1.当前pc环境

WindowS版本:Win7 专业版
处理器:Intel(R) Core(TM) i5-4590 CPU @ 3.30GHz 
安装内存(RAM):4.00GB
系统类型:64bitOS
ip:192.168.1.110

2.软件准备

宿主机:Win7专业版
桌面虚拟机软件:产品VMware® Workstation 12 Pro;版本12.1.0 build-3272444; VMwareworkstation_full_12.1.0.2487.1453173744.exe
桌面linuxOS:版本ubuntu 14.04LTS ;         ubuntu-14.04.3-desktop-amd64.exe(64bit)
JDK :版本 1.8; jdk-8u73-linux-x64.tar.gz(64bit)    jdk装到虚拟机里面,所以是linux的jdk
Hadoop:版本2.6; hadoop-2.6.4.tar.gz
Eclipse:
集群配置:Ubuntu14(虚拟机名称)Master.Hadoop(hostname) 192.168.1.111(ip)
 Ubuntu14slave1(虚拟机名称)  Slaver1.Hadoop(hostname)192.168.1.112(ip)

3.安装配置起航

3.1  安装VMware Workstation

 安装流程可以参考 Windows 7下用VMware Workstation 10虚拟机安装 Ubuntu 14.04   http://www.linuxidc.com/Linux/2014-04/100473.htm
虚拟机软件安装的位置d:\Program Files(x86)\VMare\VMare Workstation\
   注意事项:安装出现是否更新和参与用户体验,去掉勾,不选;许可证秘钥自行百度;安装完毕打开在帮助里面可以查看版本之类的信息。
 
3.2  安装虚拟机并配置Ubuntu环境
本人虚拟机名称:Ubuntu14         虚拟机位置:d:\Ubuntu64
     Ubuntu14slave1     虚拟机位置:d:\Ubuntu14slave1
     两个用户名都相同,用户名 ysu  密码 123456
注意事项:客户机是linux,版本是ubuntu;网络类型很重要:我选的是桥接,Win7宿主机和两个虚拟机在一个网段里面。
网络类型三种区分参考:

虚拟机网络连接方搜索式是如何设置的。如VMWare虚拟机提供了三种工作模式,它们是bridged(桥接模式)、NAT(网络地址转换模式)和host-only(主机模式)。要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式,然后就知道答案了。

bridged(桥接模式)

  在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。在桥接模式下,你需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。同时,由于这个虚拟系统是局域网中的一个独立的主机系统,那么就可以手工配置它的TCP/IP配置信息,以实现通过局域网的网关或路由器访问互联网。

host-only(主机模式)

  在某些特殊的网络调试环境中,要求将真实环境和虚拟环境隔离开,这时你就可采用host-only模式。在host-only模式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。

3.NAT(网络地址转换模式)

  使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。也就是说,使用NAT模式可以实现在虚拟系统里访问互联网。NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,无法进行手工修改,因此虚 拟系统也就无法和本局域网中的其他真实主机进行通讯。采用NAT模式最大的优势是虚拟系统接入互联网非常简单,你不需要进行任何其他的配置,只需要宿主机器能访问互联网即可。

 
 
经常提示软件更新,我们选择永不更新
 
3.3  修改虚拟机静态ip
参考 http://jingyan.baidu.com/article/b7001fe18f85fe0e7282ddaf.html
结果 Ubuntu14 ip192.168.1.111子网掩码 255.255.255.0 网关 192.168.1.1 DNS 202.206.240.12
Ubuntu14slave1 ip 192.168.1.112 子网掩码 255.255.255.0 网关 192.168.1.1DNS 202.206.240.12
使用 ifconfig查看结果
 
3.4  修改虚拟机主机名称和hosts文件
linux命令需要自行查阅,注意命令里面是否有空格
命令鼠标左键空白区域,Ctrl+Alt+T  ,弹出终端
    sudo gedit /etc/hostname
    sudo gedit /etc/hosts
结果:
Ubuntu14 hostname 文件 Master.Hadoop  
hosts文件 127.0.0.1 localhost 192.168.1.111Master.Hadoop 192.168.1.112 Slaver1.Hadoop
 
Ubuntu14Slaver1 hostname 文件 Slaver1.Hadoop  
hosts文件 127.0.0.1 localhost 192.168.1.111 Master.Hadoop 192.168.1.112 Slaver1.Hadoop
使用ping 互相连通宿主机和虚拟机(会用到ctrl+c让ping停止)
 
3.5 虚拟机安装配置jdk
保证虚拟机能联网,打开ubuntu火狐浏览器,下载安装参考  Ubuntu安装JDK详解  http://www.linuxidc.com/Linux/2016-11/136958.htm
我的jdk安装目录 /usr/lib/jvm/jdk1.8.0_73
使用java-version查看jdk
 
 
3.6 SSH无密码登陆验证配置
安装ssh
命令:sudo apt-get install openssh-server
sudo apt-get install openssh-client
使用ssh version 查看ssh是否安装成功
 
生成无密码密钥对:id_rsa(私钥)id_rsa.pub(公钥),默认存储在/home/ysu(用户名)/.ssh目录下
命令:ssh-keygen -t rsa -P ''
使用ls 查看是否有这两个钥
 
把id_rsa.pub追加到授权的key里面去。
命令:cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
 
使用root用户登陆修改ssh配置文件
命令:su //输入root密码切换到超级用户
gedit /etc/ssh/sshd_config
检查下面几行
PermitRootLogin yes(要改成yes)
RSAAuthentication yes # 启用 RSA 认证 (去掉最前面#)
PubkeyAuthentication yes # 启用公钥私钥配对认证方式(去掉最前面#)
AuthorizedKeysFile  %h/.ssh/authorized_keys # 公钥文件路径 (去掉最前面#)
 
重启ssh服务
/home/ysu/.ssh/ service ssh restart
 
使用exit 退出root登陆,验证ssh是否设置成功
ssh localhost
在测试有可能出现 Agent admitted failure to sign using the key
解决的办法: ssh-add ~/.ssh/id_rsa
 
将公钥传到远程主机上
命令:cd /home/ysu/.ssh
            ssh-copy-id  ysu@Slaver1.Hadoop//这里是Master传入Slaver1
    enter完后输入Slaver1.Hadoop密码
 
检测是否可以无密码登陆
命令:ssh Slaver1.Hadoop
结果   ysu@Master:~$变成ysu@Slaver1:~$
 
最后Slaver1机器也按照以上的步骤重复一遍
 
3.7 Hadoop安装配置
注意:Hadoop2.X版本跟1.X版本很多命令不一样,需要配置的文件也不一样。
保证虚拟机能联网,打开ubuntu火狐浏览器,下载Hadoop(默认下载到/home/ysu/下载目录里面)
root用户登陆将hadoop安装包移动到/usr目录下
cp /home/ysu/下载/hadoop-2.6.4.tar.gz /usr/
 
解压安装包
cd /usr/
tar -xzvf hadoop-2.6.4.tar.gz
 
重命名为hadoop
mv hadoop-2.6.4 hadoop
 
给ysu用户分配hadoop文件夹读权限
chown -R ysu:ysu hadoop
 
删除安装包
rm -rf  hadoop-2.6.4.tar.gz
 
本地文件系统创建一下文件夹
mkdir /usr/hadoop/tmp
mkdir /usr/hadoop/dfs/data
mkdir /usr/hadoop/name
 
修改 /etc/profile文件 添加hadoop路径
cd profile
sudo gedit /etc/profile
文件中
# set hadoop path
export HADOOP_HOME=/usr/hadoop
export PATH=PATH:PATH:HADOOP_HOME/bin
 
配置7个文件 均在/usr/hadoop/etc/hadoop/
 
配置 hadoop-env.sh //修改JAVA_HOME
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_73
配置 yarn-env.sh//修改JAVA_HOME
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_73
配置slaves文件//增加slave节点
Slaver1.Hadoop
配置core-site.xml文件
<configuration>
<property>

  <name>fs.defaultFS</name>
  <value>hdfs://Master.Hadoop:9000</value>
 </property>

 <property>
  <name>io.file.buffer.size</name>
  <value>131072</value>
 </property>
 <property>
  <name>hadoop.tmp.dir</name>
  <value>/usr/hadoop/tmp</value>
  <description>Abasefor other temporary directories.</description>
 </property>
 <property>
</configuration>

配置hdfs-site.xml//增加hdfs配置信息(namenode、datanode端口和目录位置)

 

<configuration>
 <property>
  <name>dfs.namenode.secondary.http-address</name>
  <value>Master.Hadoop:9001</value>
 </property>
  <property>
   <name>dfs.namenode.name.dir</name>
   <value>/usr/hadoop/dfs/data</value>
 </property>
 <property>
  <name>dfs.datanode.data.dir</name>
  <value>/usr/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 文件//增加mapreduce配置(使用yarn框架、jobhistory使用地址以及web地址)

注意/usr/local/hadoop/etc/hadoop/文件夹下有mapred.xml.template文件,需要复制并重命名
cp mapred-site.xml.template mapred-site.xml
sudo gedit mapred-site.xml

 

<configuration>
  <property>
   <name>mapreduce.framework.name</name>
   <value>yarn</value>
 </property>
 <property>
  <name>mapreduce.jobhistory.address</name>
  <value>Master.Hadoop:10020</value>
 </property>
 <property>
  <name>mapreduce.jobhistory.webapp.address</name>
  <value>Master.Hadoop:19888</value>
 </property>
</configuration>

配置yarn-site.xml//增加yarn功能

<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>Master.Hadoop:8032</value>
  </property>
  <property>
   <name>yarn.resourcemanager.scheduler.address</name>
   <value>Master.Hadoop:8030</value>
  </property>
  <property>
   <name>yarn.resourcemanager.resource-tracker.address</name>
   <value>Master.Hadoop:8031</value>
  </property>
  <property>
   <name>yarn.resourcemanager.admin.address</name>
   <value>Master.Hadoop:8033</value>
  </property>
  <property>
   <name>yarn.resourcemanager.webapp.address</name>
   <value>Master.Hadoop:8088</value>
  </property>
</configuration>

以上Master的hadoop配置完毕,配置salver的hadoop

 

把master下的hadoo文件夹传到salver即可

普通用户和root用户均可注意sudo 和su的区别

命令:scp -r /usr/hadoop root@Salver1.Hadoop:/usr/

 

给ysu用户分配hadoop文件夹读权限
chown -R ysu:ysu hadoop
 
修改 /etc/profile文件 添加hadoop路径
cd profile
sudo gedit /etc/profile
文件中
# set hadoop path
export HADOOP_HOME=/usr/hadoop
export PATH=PATH:PATH:HADOOP_HOME/bin
这样slave的机器hadoop也配置好了
 
3.8 启动Hadoop
格式化HDFS
hdfs namenode -format
 
启动hadoop
/usr/hadoop/sbin/start-dfs.sh
/usr/hadoop/sbin/start-yarn.sh
 
3.9查看集群和进程
 
jps//jps命令
 
/usr/hadoop/bin/hdfs dfsadmin -report //查看集群 (结果没出来,有待修复)
 
火狐浏览器打开
Master.Hadoop:50070
Master.Hadoop:8088(结果没出来,有待修复)
Slaver1.Hadoop:8042

下面关于Hadoop的文章您也可能喜欢,不妨看看:

Ubuntu14.04下Hadoop2.4.1单机/伪分布式安装配置教程  http://www.linuxidc.com/Linux/2015-02/113487.htm

CentOS安装和配置Hadoop2.2.0  http://www.linuxidc.com/Linux/2014-01/94685.htm

CentOS 6.3下Hadoop伪分布式平台搭建  http://www.linuxidc.com/Linux/2016-11/136789.htm

Ubuntu 14.04 LTS下安装Hadoop 1.2.1(伪分布模式) http://www.linuxidc.com/Linux/2016-09/135406.htm

Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu下Hadoop环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建Hadoop环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

Hadoop 2.6.0 HA高可用集群配置详解  http://www.linuxidc.com/Linux/2016-08/134180.htm

Spark 1.5、Hadoop 2.7 集群环境搭建  http://www.linuxidc.com/Linux/2016-09/135067.htm

更多Hadoop相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

本文永久更新链接地址http://www.linuxidc.com/Linux/2016-11/137217.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款