你好,游客 登录
背景:
阅读新闻

在Ubuntu 14.04 LTS上安装部署Hadoop 2.7.1(伪分布式)

[日期:2015-09-11] 来源:Linux公社  作者: [字体: ]

1、安装Ubuntu 14.04 Desktop LTS

  • 下载ISO文件,ubuntu-14.04.1-desktop-amd64.iso。
  • 在VirtualBox或者VMware中新建虚拟机,将ISO文件设置为启动光盘。
  • Windows 7下用VMware Workstation 10虚拟机安装 Ubuntu 14.04  http://www.linuxidc.com/Linux/2014-04/100473.htm
  • 一路下一步,在需要输入用户的地方,输入用户名linuxidc,直到系统安装完成。
  • 重启虚拟机,使用linuxidc登录系统。设置root的密码,输入 sudo passwd 命令:
    • [email protected]:~ $ sudo passwd
    • [sudo] password for linuxidc: (输入自己的密码)
    • 输入新的 UNIX 密码: (设置root密码)
    • 重新输入新的 UNIX 密码:(再次设置root密码) 
    • passwd:已成功更新密码
  • 为了便于后面操作,在 ubuntu内安装增强功能(virtualbox增强功能或者vmtools)
  • 添加用户到sudo组:
    • 命令: sudo adduser linuxidc sudo 。如果用户已经在此组内会提示。
  • 添加组hadoop,并将linuxidc添加至组hadoop( groups命令可以查看用户所在的组 ):
    • su
    • addgroup hadoop
    • usermod -a -G hadoop linuxidc
2、配置ssh免密码登录
  • 安装ssh server  sudo apt-get install openssh-server
  • cd ~/.ssh/   # 若没有该目录,请先执行一次ssh localhost

    ssh-keygen -t rsa # 会有提示,都按回车就可以

    cat id_rsa.pub >> authorized_keys # 加入授权

  • 使用 ssh localhost 试试能否直接登录
3、配置JDK
  • 到Oracle官网下载JDK1.7,http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html。 下载 jdk-7u79-linux-x64.tar.gz。
  • 由于准备将JDK安装至/usr/lib/jvm下,所以先到/usr/lib/目录下建立jvm文件夹
    • cd /usr/lib/
    • sudo mkdir jvm
  • 解压下载的安装包至jvm文件夹(jdk1.7.0_79)
    • sudo tar zxvf /home/linuxidc/桌面/jdk-7u79-linux-x64.tar.gz -C /usr/lib/jvm 

  • 设置JAVA_HOME:
    •  

      nano ~/.bashrc

    • 在第一行前面增加:export JAVA_HOME=/usr/lib/jvm/ jdk1.7.0_79,保存退出。
    • 使设置立即生效: source  ~/.bashrc
  • 测试JAVA_HOME是否设置成功,输出了上面设置的路径表示成功:
    • echo $JAVA_HOME
4、安装Hadoop2.7.1
  • 下载文件,http://hadoop.apache.org/releases.html,选择2.7.1的 binary格式下载 。文件名为:hadoop-2.7.1.tar.gz。
  • 我们选择将 Hadoop 安装至/usr/local/
    • sudo tar -zxvf   /home/linuxidc/桌面/ hadoop-2.7.1.tar.gz  -C /usr/local
    • cd /usr/local/

      sudo mv ./hadoop-2.7.1/ ./hadoop               # 将文件夹名改为hadoop

      sudo chown -R linuxidc ./hadoop                     # 修改文件权限

      测试安装是否成功,如果出现命令帮助表示成功:/usr/local/hadoop/bin/hadoop

  • 配置环境变量
    •  

      nano ~/.bashrc

    • 打开界面后,在之前配置的 JAVA_HOME后面输入:

export HADOOP_INSTALL= /usr/local/ hadoop

export PATH=$PATH:$HADOOP_INSTALL/bin

export PATH=$PATH:$HADOOP_INSTALL/sbin

export HADOOP_MAPRED_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_HOME=$HADOOP_INSTALL

export HADOOP_HDFS_HOME=$HADOOP_INSTALL

export YARN_HOME=$HADOOP_INSTALL

    • 使设置立即生效: source ~/.bashrc
    • 检查是否安装成功,执行命令,如果出现命令帮助表示成功:hdfs

5、配置伪分布式

  • 切换至配置文件目录:   cd  /usr/local/hadoop /etc/hadoop
  • 配置 core-site.xml,执行命令: nano core-site.xml 。将文件中的<configuration></configuration>替换为:
    • <configuration>

      <property>

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

      <value>file:/usr/local/hadoop/tmp</value>

      <description>Abase for other temporary directories.</description>

      </property>

      <property>

      <name>fs.defaultFS</name>

      <value>hdfs://localhost:9000</value>

      </property>

      </configuration>

  • 配置 hdfs-site.xml,执行命令: nano hdfs-site.xml ,修改为:
    • <configuration>

      <property>

      <name>dfs.replication</name>

      <value>1</value>

      </property>

      <property>

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

      <value>file:/usr/local/hadoop/tmp/dfs/name</value>

      </property>

      <property>

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

      <value>file:/usr/local/hadoop/tmp/dfs/data</value>

      </property>

      </configuration>

        关于Hadoop配置项的一点说明:

虽然只需要配置 fs.defaultFS 和 dfs.replication 就可以运行(官方教程如此),不过若没有配置 hadoop.tmp.dir 参数,则默认使用的临时目录为 /tmp/hadoo-hadoop,而这个目录在重启时有可能被系统清理掉,导致必须重新执行 format 才行。所以我们进行了设置,同时也指定 dfs.namenode.name.dir 和 dfs.datanode.data.dir,否则在接下来的步骤中可能会出错。

  • 配置yarn-site.xml,执行命令: nano 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>

      </configuration>

  • 配置mapred-site.xml
    • 从模板文件复制一个xml,执行命令: mv mapred-site.xml.template mapred-site.xml
    • 执行命令: nano mapred-site.xml
    • 将文件修改为

<configuration>

<property>

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

<value>yarn</value>

</property>

</configuration>

  • 配置完成后,执行格式化: hdfs namenode -format 。倒数第五行出现Exitting with status 0 表示成功,若为 Exitting with status 1 则是出错。
  • 启动hadoop所有的进程:

    start-all.sh

  • 查看各个进程是否正常启动,执行: jps 。如果一切正常,将看到下列结果:
2583 DataNode

2970 ResourceManager

3461 Jps

3177 NodeManager

2361 NameNode

2840 SecondaryNam

  • 【注意】若执行jps后提示:

程序 'jps' 已包含在下列软件包中:

* default-jdk
* ecj
* gcj-4.6-jdk

* openjdk-6-jdk

* gcj-4.5-jdk

* openjdk-7-jdk

请尝试:sudo apt-get install <选定的软件包>

那么请执行下面命令,手动设置系统默认JDK:

sudo update-alternatives --install /usr/bin/jps jps   /usr/lib/jvm/ jdk1.7.0_79 /bin/jps 1

sudo update-alternatives --install /usr/bin/javac javac  /usr/lib/jvm/ jdk1.7.0_79/bin/javac 300

sudo update-alternatives --install /usr/bin/java java  /usr/lib/jvm/ jdk1.7.0_79 /bin/java 300





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