Ubuntu-16.10 hadoop-2.7.3 hive-1.2.1搭建

Ubuntu hadoop 伪分布模式搭建

2017年3月9日

11:10

》安装VMware

》安装ubuntu,虚拟机用户名和密码全部改为hadoop,其他的一路默认,设置的处理器如下:

防止虚拟机花屏和很卡,就关掉3D加速

 

 

》安装vmtools

如果按钮是灰色的,就将CD/DVD(其中一个即可)指向VMware下的linux.iso,然后点击确定退出,再点击虚拟机下面的可移动设备连接这个CD/DVD

 

安装好了之后,安装vim

命令:sudo apt-getinstall vim

报错:

出现这个问题可能是有另外一个程序正在运行,导致资源被锁不可用。而导致资源被锁的原因可能是上次运行安装或更新时没有正常完成。

 

输入以下两条命令:

sudo rm/var/cache/apt/archives/lock

sudo rm/var/lib/dpkg/lock

 

再进行vim的安装就OK了

 

》Java的安装

Hive依赖于Hadoop,而Hadoop依赖于Java。所以需要配置JDK

首先下载好JDK,再复制到虚拟机中,放在/home/download文件夹下,然后解压到主文件夹下(/usr/local)

首先在/hone/download文件夹下运行命令:

sudo tar zxvfjdk-8u121-linux-x64.tar.gz -C /usr/local

 

切换到/usr/local查看文件。已经有解压的文件了:
 

 

接下来配置环境变量了,打开/etc/profile文件。命令如下:

sudo gedit /etc/profile

在最后添加:

exportJAVA_HOME=/usr/local/jdk1.8.0_121 

 

exportJRE_HOME=/usr/local/jdk1.8.0_121/jre 

 

exportCLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 

 

exportPATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH

如图:然后点击右上角的save即可,然后点击左上角关闭。

 

然后重启虚拟机,输入:

命令:java -version

检查是否配置成功

安装成功。

 

》安装SSH

安装

sudo apt-get installopenssh-server

启动

sudo /etc/init.d/sshstart

设置免密码登录

$ ssh-keygen -t dsa -P '' -f~/.ssh/id_dsa

$ cat~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

$ exportHADOOP\_PREFIX=/usr/local/hadoop

 

由于这样安装后,还是无法面密码登录,需要输入localhost的密码,所以 尝试过很多种方法,最终得以解决。详见《SSH安装的N次失败》。

 

 

 

》安装hadoop

下载hadoop(hadoop-2.7.3.tar.gz),复制到虚拟机/home/download目录下:然后解压到/usr/local中,并改名hadoop

然后运行以下命令修改hadoop权限,确保所有的操作都是在用户hadoop下完成的:

命令:sudo chown -R hadoop:hadoop /usr/local/hadoop

 

配置.bashrc文件:

在文末添加,这样可以直接使用hadoop命令:

#HADOOPVARIABLES START

 

export JAVA_HOME=/usr/jdk1.8.0_121

 

exportHADOOP_INSTALL=/usr/local/hadoop

 

exportPATH=$PATH:$HADOOP_INSTALL/bin

 

exportPATH=$PATH:$HADOOP_INSTALL/sbin

 

exportHADOOP_MAPRED_HOME=$HADOOP_INSTALL

 

exportHADOOP_COMMON_HOME=$HADOOP_INSTALL

 

exportHADOOP_HDFS_HOME=$HADOOP_INSTALL

 

exportYARN_HOME=$HADOOP_INSTALL

 

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native

 

export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"

 

#HADOOPVARIABLES END

 

 

使用命令source ~/.bashrc,使文件生效。

测试:

 

 

打开hadoop目录下的etc/hadoop目录,配置一下几个文件:

 

配置hadoop-env.sh,添加:

export JAVA_HOME=/usr/local/jdk1.8.0_121

exportHADOOP=/usr/local/hadoop

exportPATH=$PATH:/usr/local/hadoop/bin

 

配置yarn-env.sh,添加:

 

 

core-site.xml 配置(伪分布模式):

由于此处新建了hadoop_tmp文件夹,则要在对应的目录下新建一个这个文件夹。

建立文件

 

 

配置hdfs-site.xml,配置:

<configuration>

<!-- 指定HDFS副本的数量 -->

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

</configuration>

 

配置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>127.0.0.1:8032</value>

  </property>

  <property>

    <name>yarn.resourcemanager.scheduler.address</name>

    <value>127.0.0.1:8030</value>

  </property>

  <property>

    <name>yarn.resourcemanager.resource-tracker.address</name>

    <value>127.0.0.1:8031</value>

  </property>

</configuration>

 

配置结束。

 

格式化namenode

命令:hdfs namenode-format

启动集群:start-dfs.sh

 

再启动集群后,测试jps的时候,java进程只有jps一个,显然,集群启动失败。

首先查看日志发现,是无法创建/usr/local/hadoop/hadoop_tmp/dfs..文件,其实在用命令“hdfs namenode -format”格式化 也有报错,并且明确说明了 namenode启动失败。然后就全部指向文件问题。首先检查是否存在hadoop_tmp这个文件,显然前面已经新建了。其次检查core-site.xml的配置有没有把文件地址写错,也没有错的话,就是权限问题了。

 

更改hadoop_tmp的权限,把hadoop用户添加进去。

sudo chmod a+rwx /usr/local/hadoop/hadoop_tmp

这样再次格式化nodename就没问题了。问题解决。

 

 

 

 

 

 

 

 

 

 

 

 

解压:

- zxvf

-z 是配合解压.GZ

-x 解开一个包文件

-v 显示详细信息

-f 必须,表示使用归档文件

 

 

来自 <http://blog.csdn.net/shiqidide/article/details/7582572

    1. chown username: /home/username/.ssh  
    2. chown username: /home/username/.ssh/*  
    3. chmod 700 /home/username/.ssh  
    4. chmod 600 /home/username/.ssh/*  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值