设为首页 收藏本站
查看: 1135|回复: 0

[经验分享] Redhat上Hadoop2.2.0安装配置说明

[复制链接]

尚未签到

发表于 2016-5-15 07:01:15 | 显示全部楼层 |阅读模式
  Redhat上Hadoop2.2.0安装配置说明
1. 建立用户,用户组都为hadoop
创建组:groupadd hadoop,
创建用户:useradd -g hadoop hadoop
设置用户密码:passwd hadoop
2. 修改主机名
# hostname Master
#vim /etc/sysconfig/network
HOSTNAME=Master
所有namenode和datanode都要配置主机名
3. 修改host文件
#vim /etc/hosts
在文件里面添加类似如下配置:
192.168.13.62 Master
192.168.13.63 Slave01
192.168.13.64 Slave02
并用scp命令复制到其他所有机器,即所有namenode和datanode做相同配置
4. 关闭防火墙
1) 查看防火墙是是否已关闭:
执行 chkconfig iptables status,如果得到哪下图所示,则表示防火墙已关闭,否则表示已启动防火墙


执行 Chkconfig --list | grep iptables,得到如下结果,如果3和5都为on,表示开机自动启动防火墙

2) 关闭防火墙方法:
永久性生效的方法: 
开启: chkconfig iptables on
关闭: chkconfig iptables off

即时生效,重启后失效的方法
开启: service iptables start
关闭: service iptables stop

Redhat 使用了Selinux来增强安全性,其关闭的办法为:
1) 永久有效:
Vi /etc/selinux/config 将其中SELINUX=”” 值 改为disabled
2) 即时生效
Set enforce 0
3) 查看selinux状态命令
Sestatus,如下图所示,则表示已关闭


5. 配置SSH无密码登陆
1) 登录到master机器,然后进入到/home/hadoop/目录,
2) 创建.ssh目录:mkdir .ssh
3) 进入.ssh目录,执行ssh-keygen –t rsa命令,生成密钥文件
4) 进入.ssh目录,执行ssh-keygen –t dsa命令,生成密钥文件
5) 在.ssh目录下生成了id_rsa  id_rsa.pub 和id_dsa  id_dsa.pub四个文件
6) 把 id_rsa.pub 和 id_dsa.pub追加到授权的 key 里面去。 执行命令 cat      /home/hadoop/.ssh/id_rsa.pub  >> /home/hadoop/.ssh/authorized_keys
7) 执行ssh localhost 如果不需要输入密码,则表示密钥生成成功
8) 修改权限: 执行 chmod 600  /home/hadoop/.ssh/authorized_keys
9) 将公钥复制到所有的 slave 机器上 :scp /home/hadoop/.ssh/authorized_keys hadoop@192.168.13.63:/home/hadoop/.ssh /   
然后 输入 yes ,最后 输入 Slave01机器的密码
10) 在master主机上执行: ssh Slave01 ,如果不需要输入密码,则表示配置成功
11) 进入所有datanode机器,然后从第3)步重复执行,即生成密钥文件,将id_rsa.pub,id_dsa.pub两个文件复制到master节点上,并将其追加到master节点的/home/hadoop/.ssh/authorized_keys文件中
12) 然后分别在datanode上使用ssh master命令,如果无需输入密码,则表示namenode与所有datanode节点相互通信都已打通,无需密码
6. 安装hadoop程序
1) 安装JDK,这里就省略具体安装说明
2) 上传hadoop安装程序hadoop-2.2.0.tar.gz到master服务器上的/home/hadoop/目录下
3) 执行tar –zxvf hadoop-2.2.0.tar.gz 解压,会在/home/hadoop/目录下生成hadoop-2.2.0目录
4) 修改hadoop-2.2.0/etc/hadoop/hadoop-env.sh
修改JAVA_HOME值(export JAVA_HOME=/home/hadoop/jdk1.6.0_06)
5) 修改hadoop-2.2.0/etc/hadoop/core-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
      <property>
           <name>fs.defaultFS</name>
           <value>hdfs://192.168.13.62:9000</value>
      </property>
     <property>
            <name>io.file.buffer.size</name>
             <value>131072</value>
        </property>
     <property>
            <name>hadoop.tmp.dir</name>
            <value>/home/hadoop/hadoop-2.2.0/hadoop_tmp</value>
     </property>
     <property>
           <name>hadoop.proxyuser.hadoop.hosts</name>

           <value>*</value>
    </property>
    <property>
           <name>hadoop.proxyuser.hadoop.groups</name>
           <value>*</value>
   </property>
</configuration>

配置该文件时,要在/home/hadoop/hadoop-2.2.0目录下建立临时目录hadoop_tmp
6) 修改hadoop-2.2.0/etc/hadoop/slaves,将datanode节点配置到该文件中,其内容如下:
Slave01
Slave02
7) 修改配置文件hadoop-2.2.0/etc/hadoop/hdfs-site.xml
<configuration>

<property>
   <name>dfs.namenode.secondary.http-address</name>
   <value>192.168.13.62:9001</value>
</property>

<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hadoop/hdfs/name</value>
</property>

    <property>
<name>dfs.datanode.data.dir</name>
<value>/home/hadoop/hdfs/data</value>
</property>

<property>
<name>dfs.replication</name>
<value>2</value>
</property>

<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>

</configuration>
8) 修改hadoop-2.2.0/etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>192.168.13.62:10020</value>
</property>
<property>
   <name>mapreduce.jobhistory.webapp.address</name>
   <value>192.168.13.62:19888</value>
   </property>
</configuration>
9) 修改hadoop-2.2.0/etc/hadoop/yarn-env.sh
export JAVA_HOME=/home/hadoop/jdk1.6.0_06/
10) 修改hadoop-2.2.0/etc/hadoop/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>192.168.13.62:8032</value>
   </property>
   <property>
   <name>yarn.resourcemanager.scheduler.address</name>
   <value>192.168.13.62:8030</value>
   </property>
   <property>
   <name>yarn.resourcemanager.resource-tracker.address</name>
   <value>192.168.13.62:8031</value>
   </property>
   <property>
   <name>yarn.resourcemanager.admin.address</name>
   <value>192.168.13.62:8033</value>
   </property>
   <property>
   <name>yarn.resourcemanager.webapp.address</name>
   <value>192.168.13.62:8088</value>
   </property>
</configuration>
11) 复制hadoop-2.2.0目录到所有datanode机器上的/home/hadoop/目录下
scp -r /home/hadoop/hadoop-2.2.0 hadoop@Slave01: /home/hadoop/
scp -r /home/hadoop/hadoop-2.2.0 hadoop@Slave02: /home/hadoop/

后期如果要修改相关配置文件,可以写一个脚本,批量复制到各个节点服务器上,如下内容:
一、节点之间传递数据:
第一步:vi scp.sh
第二步:把下面内容放到里面(记得修改下面红字部分,改成自己的)
#!/bin/bash
#slave1
scp /home/hadoop/hadoop-2.2.0/etc/hadoop/core-site.xml hadoop@slave01:~/
scp /home/hadoop/hadoop-2.2.0/etc/hadoop/hdfs-site.xml hadoop@slave01:~/                     
#slave2
scp /home/hadoop/hadoop-2.2.0/etc/hadoop/core-site.xml hadoop@slave02:~/
scp /home/hadoop/hadoop-2.2.0/etc/hadoop/hdfs-site.xml hadoop@slave02:~/
第三步:保存scp.sh
第四步:bash scp.sh执行

12) 配置环境变量
登录master机器,在/home/hadoop/目录下,编辑.bash_profile文件,添加如下内容:
export PATH
export JAVA_HOME=/home/hadoop/jdk1.6.0_06
export CLASS_PATH=JAVA_HOME/lib;$JAVA_HOME/jre/lib
export JAVA_HOME CLASSPATH TOMCAT_HOME

export HADOOP_HOME=/home/hadoop/hadoop-2.2.0
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$JAVA_HOME/bin:$JAVA_HOME/j

export HADOOP_DEV_HOME=/home/hadoop/hadoop-2.2.0
export PATH=$PATH:$HADOOP_DEV_HOME/bin
export PATH=$PATH:$HADOOP_DEV_HOME/sbin
export HADOOP_MAPARED_HOME=${HADOOP_DEV_HOME}
export HADOOP_COMMON_HOME=${HADOOP_DEV_HOME}
export HADOOP_HDFS_HOME=${HADOOP_DEV_HOME}
export YARN_HOME=${HADOOP_DEV_HOME}
export HADOOP_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
export HDFS_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
export YARN_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
运行 source .bash_profile 使得环境变量立即生效
13) 在master机器格式化,hdfs必须先格式化才能用
hadoop namenode format
14) 启动hdfs:进入/home/hadoop/hadoop-2.2.0/sbin目录下,运行
./start-dfs.sh
15) 启动yarn
./start-yarn.sh
16) master有如下进程

17) slave01有如下进程


此时hadoop集群已全部配置完成!!!

7. 验证部署是否成功
1) 输入http://192.168.13.62:8088/cluster 查看yarn是否正常部署

DSC0000.png

2) 验证hdfs文件系统
hadoop fs -mkdir hdfs://192.168.13.62:9000/testfolder 创建testfolder目录

hadoop fs -ls hdfs://192.168.13.62:9000/  列出所有文件列表

3) http://192.168.13.62:50070/dfshealth.jsp 查看hdfs节点运行状态


DSC0001.png


   

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-217051-1-1.html 上篇帖子: 远程登陆vncserver在redhat下详细配置 下篇帖子: Liunx RedHat 9 下面Redmin的安装手册
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表