hadoop集群安装

1.1 设置hostname

(1)使用vi编辑/etc/sysconfig/network

     把HOSTNAME的值改为namenode1,保存退出。

  (2)执行hostname namenode,在当前环境中立即生效  

  (3)执行命令hostname查看设置结果

1.2 绑定ip与hostname

     说明:如下的ip和hostname以实际分配的为准

 

编辑文件/etc/hosts,增加ip与hostname的映射信息

192.168.6.10 namenode1
192.168.6.11 datanode01
192.168.6.12 datanode02

1.3 关闭防火墙

(1) 执行命令service iptables stop关闭防火墙

(2) 执行命令service iptables status查看防火墙是否正在运行

 

1.4 关闭防火墙的自动运行

  1. 执行命令chkconfig iptables off

1.5 重复1到5

在另外两台台服务器上执行2.1到2.5的步骤

 

1.6 设置ssh免密码登录

SSH(secure shell)免密码登录,各主机之间可以互相ping通

   (1)在namenode1中执行命令ssh-keygen -t rsa产生公钥私钥文件,产生的文件位于~/.ssh目录下

   (2)进入~/.ssh目录,执行命令cp id_rsa.pub authorized_keys

   (3)在其他四台机器执行上面的2步,然后把每一台机器上的authorized_keys中的内容拷贝到hadoop1的authorized_keys中,

    最后通过scp ~/.ssh/authorized_keys namenode2:~/.ssh命令把authorized_keys复制到每一台机器中。

 

1.7 解压hadoop安装文件

解压hadoop安装文件 tar -zvxf  hadoop-2.6.0.tar.gz

1.8   修改环境变量

 /etc/profile  中添加

export HIVE_HOME=/usr/local/apache/hadoop-2.6.0

export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

执行命令source /etc/profile使修改生效

1.9 创建临时文件夹

a. 具体操作前首先在hadoop根目录下创建以下文件夹:

mkdir tmp

mkdir dfs

mkdir dfs/data

mkdir dfs/name

 

注:这里新建的目录会在hdfs-site.xml中用到。实际上namenode节点上只需要dfs/name目录,datanode节点上只需要dfs/data 目录。

 

1.10   修改hadoop-env.sh

export JAVA_HOME=/usr/java/jdk1.7.0_75/

注:若没有配置JAVA_HOME,后续执行hadoop命令时会报如下错误:

1.11   修改yarn-env.sh

 

1.12   修改mapred-env.sh

 

1.13   修改slaves

  修改配置文件vim /usr/local/hadoop/hadoop-2.6.0/etc/hadoop/slaves,将各个datanode节点的hostname加进去:

 

1.14   配置core-site.xml

<configuration>

    <property>

    <name>fs.defaultFS</name>

    <value>hdfs://namenode1:9000</value>

        <description>The name of the default file system</description>

  </property>

    <property>

    <name>hadoop.tmp.dir</name>

    <value>/usr/local/apache/hadoop-2.6.0/tmp</value>

    <description>A base for other temporary directories</description>

  </property>

 

  <property>

    <name>hadoop.native.lib</name>

    <value>true</value>

    <description>Should native hadoop libraries, if present, be used.</description>

  </property>

 

</configuration>

1.15   配置hdfs-site.xml

<configuration>

     <property>

        <name>dfs.replication</name>

        <value>3</value>

    </property>

<property>

          <name>dfs.namenode.name.dir</name>

          <value>/usr/local/apache/hadoop-2.6.0/dfs/name</value>

</property>

<property>

        <name>dfs.datanode.data.dir</name>

        <value>/usr/local/apache/hadoop-2.6.0/dfs/data</value>

</property>

 

</configuration>

注:这里指定的dfs.namenode.name.dir与dfs.datanode.data.dir若不存在的话,后续start-dfs时会报错:

 

1.16   配置mapred-site.xml

<configuration>

   <property>

        <name>mapreduce.framework.name</name>

        <value>yarn</value>

    </property>

 

</configuration>

1.17   配置yarn-site.xml

<configuration>

 

<!-- Site specific YARN configuration properties -->

<property>

                <name>yarn.resourcemanager.hostname</name>

                <value>namenode1</value>

        </property>

        <property>

                <name>yarn.nodemanager.aux-services</name>

                <value>mapreduce_shuffle</value>

        </property>

 

</configuration>

注:Yarn是Hadoop推出整个分布式(大数据)集群的资源管理器,负责资源的管理和分配,基于Yarn我们可以在同一个大数据集群上同时运行多个计算框架,例如Spark、MapReduce、Storm。

 

1.18  启动并验证hadoop集群

a、格式化hdfs文件系统:hadoop namenode –format或者

hdfs namenode -format

 

该命令会启动,格式化,然后关闭namenode。

实际上格式化后,在namenode上会生成以下文件:

 

其中VERSION文件的内容如下:

 

该命令不会在datanode的dfs.datanode.data.dir 对应的目录下生成任何文件:

 

 

b、启动hdfs: start-dfs.sh

 

使用jps验证HDFS是否启动成功:

 

 

通过webui检查HDFS是否启动成功

http://namenode1:50070 或者直接输入IP,如图下所示

 

 

1.19  启动yarn

执行start-yarn.sh命令

 

 

使用jps验证yarn是否启动成功:

 

 

1.20  启动JobHistory

a、启动JobHistory Server:mr-jobhistory-daemon.sh start historyserver

 

 

使用jps验证JobHistory Server是否启动成功:

 

1.21  验证hadoop集群

创建文件夹:

hdfs dfs -mkdir -p /data/wordcount

hdfs dfs -mkdir -p /output

上传文件:

hdfs dfs -put /usr/local/hadoop/hadoop-2.6.0/etc/hadoop/*.xml /data/wordcount

查看上传文件是否成功:

hdfs dfs -ls /data/wordcount

 

 

尝试执行hadoop自带的wordcount程序:

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar wordcount  /data/wordcount /output/wordcount

下图可见,执行成功:

至此hadoop集群安装就完成了!!!

posted @ 2017-02-27 12:46  tony.tang  Views(1147)  Comments(0Edit  收藏  举报