hadoop-(1)集群安装及配置

来源:互联网 发布:淘宝a货店铺推荐 编辑:程序博客网 时间:2024/05/24 06:45
环境准备
主节点master:redhat 6.4 192.168.1.11
从节点slave1:centos 6.5 192.168.1.12
Hadoop-2.6.3
jdk 1.8

1、安装jdk
1)下载jdk放到了 /opt/software/ 目录下
2)移动到 /usr/java/目录下
cd  /usr
mkdir java
cd /opt/software
 mv jdk-8u66-linux-x64.rpm /usr/java/ 
3)jdk-8u66-linux-x64.rpm赋予可执行权限
        chmod  chmod 755 jdk-8u66-linux-x64.rpm 
4)安装jdk
         rpm -ivh jdk-8u66-linux-x64.rpm 
5)配置环境变量
        vi  /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_66export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport PATH=$JAVA_HOME/bin:$PATH
6)测试
    java -version
7)echo $PATH
如果误删除了rpm安装的文件夹,可执行如下命令强制删除后,重新安装:

 rpm -qa|grep jdk
 rpm -e --nodeps jdk1.8.0_66-1.8.0_66-fcs.x86_64
 rpm -ivh jdk-8u66-linux-x64.rpm

2、安装ssh
master节点
注意master和slave节点都是在普通用户下
ssh-keygen -t rsa

cp id_rsa.pub authorized_keys 
chmod 644 authorized_keys  
scp authorized_keys slave1:/home/szh/.ssh 


slave1节点
cd ~/.ssh
ssh-keygen -t rsa
chmod 644 authorized_keys  

此时主节点执行ssh localhost和ssh slave1都可以无密码登录了

ssh localhost


ssh slave1


注意:slave1机器要无密码登录master同样需要将slave1节点的id_rsa.pub的内容拷贝到authorized_keys文件
查看master和slave1节点的authorized_keys,都可以看到
          cat authorized_keys

          ssh master

    

3、安装Hadoop
1)解压hadoop-2.6.3  
2)配置环境变量:vi /etc/profile 在最后面添加如下代码:


使之生效:source /etc/profile
3)vi /etc/hosts文件 在最后面添加如下内容:
192.168.1.11    master
192.168.1.12    slave1

slave1节点的文件也要添加

192.168.1.11    master

192.168.1.12    slave1


4)修改Hadoop配置文件core-site.xml 公共配置文件,hdfs、yarn、mapreduce都有可能读
[root@master ~]#  cd /opt/software/hadoop/hadoop-2.6.3/etc/hadoop/

[root@master ~]#vi  core-site.xml 



<configuration>        <property>                <name>hadoop.tmp.dir</name>                <value>/opt/software/hadoop/hadoop-2.6.3/tmp</value><!--namenode、datanode存放数据的位置,tmp目录不用自己创建,进程启动后会自己创建,namenode将创建tmp/dfs/name,datanode创建tmp/dfs/data -->        </property>        <property>                <name>fs.defaultFS</name>                <value>hdfs://master:9000</value>  <!-- hdfs://namenode地址:端口号,意味着hadoop也可以用其他文件系统,如本地文件系统file:// -->      </property></configuration>


5)修改Hadoop配置文件Hadoop-env.sh和yern-env.sh,在开头添加如下环境变量
export JAVA_HOME=/usr/java/jdk1.8.0_66
6)修改Hadoop配置文件hdfs-site.xml
[root@master ~]#vi hdfs-site.xml
<configuration>        <property>                <name>dfs.replication</name>                <value>1</value>        </property> <!--       <property>                <name>dfs.namenode.name.dir</name>                <value>/opt/software/hadoop/hadoop-2.6.3/tmp/dfs/name</value>        </property>        <property>                <name>dfs.datannode.data.dir</name>                <value>/opt/software/hadoop/hadoop-2.6.3/tmp/dfs/data</value>        </property>  --></configuration>
注意: core-site配置了hadoop.tmp.dir,上述两个配置默认就是这样的。dfs.namenode.name.dir的默认目录是/opt/software/hadoop/hadoop-2.6.3/tmp/dfs/name,集群启动后在主节点的tmp目录下可以看到
dfs.datannode.data.dir的默认目录是/opt/software/hadoop/hadoop-2.6.3/tmp/dfs/data,集群启动后在从节点的tmp目录下可以看到

7)修改Hadoop配置文件mapred-site.xml
<configuration>        <property>                <name>mapred.job.tracker</name>                <value>master:9001</value>        </property>        <property>                <name>mapreduce.framework.name</name>                <value>yarn</value>        </property></configuration>
8)修改Hadoop配置文件yarn-site.xml
<configuration>         <property>                 <name>yarn.resourcemanager.hostname</name>                 <value>master</value>         </property>         <property>                 <name>yarn.nodemanager.aux-services</name>                 <value>mapreduce_shuffle</value>   <!--    做中间数据调度的时候用什么机制  -->        </property> </configuration> 
9)配置masters和slaves主从节点
[root@master ~]#  cd /opt/software/hadoop/hadoop-2.6.3/etc/hadoop/
[root@master ~]#vi  masters
输入master

[root@master ~]#vi slaves
输入slave1

10)Hadoop集群若要用普通用户启动,执行chown -R szh:szh hadoop-2.6.3/
[root@master ~]#  chown -R szh:szh hadoop-2.6.3/

11)配置结束,将Hadoop-2.6.3整个copy到slave1机器
[root@master ~]#  scp -r /opt/software/hadoop/hadoop-2.6.3 slave1:/opt/software/hadoop/

4、启动Hadoop集群
1)关闭所有机器的防火墙
[root@master ~]# service iptables stop

2)启动前先格式化一个新的分布式文件系统

$ cd hadoop-2.6.3
$ bin/hadoop namenode -format

显示has been successfully formatted即格式化成功
3)启动所有节点,sbin目录下启动
[szh@master sbin]$ ./start-all.sh 
4)启动完可以通过如下ip查看集群
http://192.168.1.11:50070/
http://192.168.1.11:8088/

0 0
原创粉丝点击