1、对于Hadoop版本的选择
可以进入官网http://hbase.apache.org/ 之后点击如下图所示的连接可进入相关界面
这里是关于Hbase和jdk的版本间的需求
这个是HBase和Hadoop的相关版本的需求
根据需求可进行下载,一般选取Hadoop-2.4或者Hadoop-2.5版本
2.对于Hive版本的选择
3.先决准备
(1)时间
- 一台机器,如果是完全分布式安装则选择多台机器。
- 每台机器时间一致,相差30秒以内。因为校验方面也进行时间相关的校验。可以通过以下的命令实现时间同步,其中04181143 代表的是4月18日11点43分,该时间自己指定
[root@localhost java]# date 04181143
(2)每台必须进行主机名和ip映射的设置。
通过[root@node3 ~]# vi /etc/sysconfig/network
和
[root@node3 ~]# vi /etc/sysconfig/network
命令实现对主机名和IP的修改
(3)安装java环境,并且JDK的环境变量必须配置好。
- 在/usr/目录下创建java目录
[root@node3 ~]# mkdir/usr/java
[root@node3 ~]# cd /usr/java
- 下载,然后解压
[root@node3 java]# curl -O http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz
[root@node3 java]# tar -zxvf jdk-7u79-linux-x64.tar.gz
- 设置环境变量
[root@node3 java]# vi /etc/profile
- 在环境变量中添加下面的内容
#set java environment
JAVA_HOME=/usr/java/jdk1.7.0_79
JRE_HOME=/usr/java/jdk1.7.0_79/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
- 对配置进行验证
[root@localhost java]# java -version
(4)关闭防火墙
[root@node3 java]# service iptables stop (暂时关闭)
[root@node3 java]# chkconfig iptables off(永久关闭)
(5)免密设置
(详细步骤可见http://blog.csdn.net/fightingboyws/article/details/73822112)
- ssh-keygen 回车
[root@node3 java]# ssh-keygen
- cd /root/.ssh/
把生成好的公钥内容拷贝到其他机器上,包括自己。在namenode所在的主机上,
[root@node3 java]# ssh-copy-id -i id_rsa.pub root@centos02
拷到对方机器的 .ssh/authorized_keys中,这样只要对方的authorized_keys中有其它机子的公钥,那么登陆到其他机子就不需要密码。
- 登陆验证。exit 退出。每测试一次,退出一次。
4.伪分布式安装
(1) 官网下载hadoop-2.5.1,并将其上传到opt文件夹中
(2) 解压hadoop-2.5.1
[root@node3 ~]# tar -xvf /opt/hadoop-2.5.1_x64.tar.gz
这样解压后的文件在root文件上,将其移动到opt文件中
[root@node5 opt]# mv hadoop-2.5.1/ /opt/
(3) 配置环境变量
通过下面的代码进入环境变量的配置
[root@node3 opt]# vi ~/.bash_profile
更改如下:
可以查看bin和sbin中的文件来区别这两个文件的不同。可以发现bin是关于如何使用的方面。sbin是关于程序的启动。
[root@node3 opt]# source ~/.bash_profile
[root@node3 opt]# hadoop
通过以上指令的运行出现如下图所示的话,即配置成功。
(4) 修改配置文件
通过指令可以查看Hadoop相关配置文件的位置,如下图
①对hadoop-env.sh配置文件进行修改
首先通过一下指令进入配置文件
[root@node3 hadoop]# vi hadoop-env.sh
保存退出即可
②对core-site.xml文件进行编辑
<name>hadoop.tmp.dir</name>
<value>file:/home/hadoop/tmp</value>
这个是代表元数据的存储位置,默认是在临时文件夹中,存储时容易丢失故需要修改。
<name>fs.defaultFS</name>
<value>hdfs://node3:9000</value>
这个是程序访问HDFS的入口,9000代表接口,可以按照情况修改
保存退出
③对hdfs-site.xml配置文件的修改
(5) 格式化namenode
[root@node3 java]# hdfs namenode -format
在此处如果多次重复的格式化,将会报错,状态码将是1,因为他的clusterID所要求的,在报错信息中都会给提示说:clusterID错误,应该为XX(概述)。所以只需根据报错信息修改clusterID即可。
对文件进行格式化之后将在home的目录下生成一个hadoop文件,如下图所示:
(6) 启动hdfs
[root@localhost java]# start-dfs.sh
过程中均填yes,输入密码
完成后,通过jps指令查看进程,可以发现存在datenode、namedate、secondarynode这三个进程。
还可以通过[root@node5 hadoop]# netstat -npl | grep java
代码实现对端口的查看,其中50070端口可以实现通过浏览器对HDFS的访问。
通过在浏览器中输入虚拟机的IP地址和端口号,即可通过win系统访问虚拟机的相关信息,如下图所示:
如有错误望多指教