商会资讯

标题: hadoop2.6.0三台服务器分布式集群环境的搭建 [打印本页]

作者: admin    时间: 2016-4-21 16:14
标题: hadoop2.6.0三台服务器分布式集群环境的搭建
0.jpg                                                                                                                                                                            
首先使用虚拟机开启三个服务器
hadoop1 :192.168.184.128
hadoop2 :192.168.184.129
hadoop3 :192.168.184.130
使用hadoop1登录
安装jdk 查看java版本
java -version
rpm -qa |grep java

卸载linux自带的java
yum -y remove java

安装jdk
1:解压
tar -zxvf jdk-8u31-linux-x64.tar.gz
2:移动
mv jdk1.8.0_31 /usr/local/jdk/

配置jdk环境变量
1:vi /etc/profile
2:最后面加上
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_31
export CLASSPATH=.JAVA_HOME/lib/dt.jarJAVA_HOME/lib/tools.jar
export PATH=$PATHJAVA_HOME/bin
export JAVA_HOME CLASSPATH PATH
3:重启配置文件
source /etc/profile


配置/etc/hosts文件加入(三台机子分别加入)

192.168.184.128 hadoop1
192.168.184.129 hadoop2
192.168.184.130 hadoop3


创建hadoop用户 创建hadoop用户
1:groupadd  -g 1000 hadoop
2:useradd  -u 1000 -g 1000 hadoop
3:passwd hadoop

添加hadoop权限修改/etc/sudoers文件,进入超级用户,因为没有写权限,所以要先把写权限加上chmod u+w /etc/sudoers

vi /etc/sudoers 找到
## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL
添加
hadoop    ALL=(ALL)     ALL
最后输入:wq保持并退出

最后切换用户
su - hadoop

配置密匙
生成密匙执行下面命令一直按确定
ssh-keygen -t dsa

查看生成的密匙
ll ~/.ssh
-rw-------. 1 hadoop hadoop 668 5月  19 11:21 id_dsa
-rw-r--r--. 1 hadoop hadoop 604 5月  19 11:21 id_dsa.pub


切换到cd .ssh
然后执行cat id_dsa.pub  >> authorized_keys
修改authorized_keys权限,chmod 755 authorized_keys要不然不会生效

使用ssh hadoop1

成功无密码登陆本机

将本机的authorized_keys分别发送到另外两台机子,要想无密码登陆到哪台机器,就把自己的 公钥 追加到对应机器的 authorized_keys文件中。记住这个方向,不要搞反了。
cat ~/.ssh/id_dsa.pub | ssh hadoop@hadoop3 'cat - >> ~/.ssh/authorized_keys'


安装hadoop 切换root用户,su root
下载wget http://mirrors.hust.edu.cn/apach ... hadoop-2.6.0.tar.gz
解压tar -zxvf hadoop-2.6.0.tar.gz

剪切到/usr/local/下
配置环境变量 vi /etc/profile
添加export HADOOP_HOME=/usr/local/hadoop-2.6.0
重启配置文件生效 source /etc/profile


修改hadoop配置文件
core-site.xml
cd /usr/local/hadoop-2.6.0/etc/hadoop/
vi core-site.xml
添加如下代码
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoopdata</value>hadoop数据文件存放
</property>
<property>
  <name>io.file.buffer.size</name>
  <value>4096</value>
</property>
<property>
  <name>hadoop.native.lib</name>
  <value>true</value>
</property>
</configuration>


hadoop-env.sh
vi hadoop-env.sh修改jdk地址

hdfs-site.xml

vi hdfs-site.xml

添加如下代码
<configuration>
<property>
<name>dfs.nameservices</name>
<value>hadoop-cluster1</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop1:50090</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///usr/local/hadoopdata/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///usr/local/hadoopdata/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>


mapred-site.xml
先复制
cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml

<configuration>
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
<property>
     <name>mapreduce.jobtracker.http.address</name>
     <value>hadoop1:50030</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>


复制到其他节点
scp -r hadoop-2.6.0 root@hadoop2:/usr/local
scp -r hadoop-2.6.0 root@hadoop3:/usr/local

7.修改主从关系和管理节点,数据节点
tong1节点(管理节点):
[root@hadoop1 local]# cd hadoop-2.6.0/etc/hadoop/
[root@hadoop1 hadoop]# vim masters
hadoop1
[root@hadoop1 hadoop]# vim slaves
hadoop2
hadoop3
[root@hadoop1 hadoop]#

tong2节点,tong3节点(数据节点):
[root@hadoop2 ~]# cd /usr/local/hadoop-2.6.0/etc/hadoop/
[root@hadoop2 hadoop]# vim masters
hadoop1
[root@hadoop2 hadoop]# vim slaves
hadoop2
hadoop3

格式化NameNode
cd  /usr/local/hadoop-2.6.0/
hadoop namenode -format

最后启动hadoop
在hadoop1上
/usr/local/hadoop-2.6.0/sbin/start-all.sh

1.jpg


2.jpg
3.jpg
4.jpg
5.jpg

看到如上的情况就代表集群安装成功了

                    
                                                                                                                                                                                                                                                





欢迎光临 商会资讯 (http://smellage.com/) Powered by Discuz! X2.5