- 搭建环境介绍:
- Linux系统选择的是ubuntu-16.04.5-server-amd64.iso,在VMWare上安装并运行。
- Hadoop version : hadoop-2.7.3.tar.gz
- HBase version : hbase-1.2.4-bin.tar.gz
- Jdk version : jdk-8u191-linux-x64.tar.gz
- 准备工作,下载安装包,并上传到ubuntu
Step1. 选择Hadoop version为2.7.3的版本并下载安装包,地址为:https://archive.apache.org/dist/hadoop/core/hadoop-2.7.3/
Step2. 选择HBase version为1.2.4的版本并下载安装包,地址为:
https://archive.apache.org/dist/hbase/1.2.4/
step3. 选择jdk-8u191下载安装包,地址为:
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
如下图所示,为我在win10系统下载的安装包,并上传到了Ubuntu。
- SSH免密登录
Step1. 配置ssh免密登录,执行ssh-keygen,会在~/.ssh/生成公私钥文件:id_rsa和id_rsa.pub
Step2. 执行cat id_rsa.pub >> authorized_keys
Step3. 修改authorized_keys权限,执行命令:chmod 600 authorized_keys
Step4. 执行ssh localhost.
- Jdk安装
Step1. 在home目录下创建一个文件夹,比如我的是hadoop_dev.
执行命令mkdir hadoop_dev. 并把下载好的jdk, Hadoop, hbase压缩包放在该目录下
Step2. 执行命令:tar zxf jdk-8u191-linux-x64.tar.gz.解压缩jdk.
Step3. 执行命令:sudo mv jdk1.8.0_191/ /usr/local/,把jdk安装包移动到/usr/local/下。
Step4. 执行命令:vim /etc/profile编辑环境配置文件/etc/profile.在文件末尾添加jdk的路径。如下图所示:
Step5. 执行命令:source /etc/profile,让配置文件生效。
Step6. 执行命令:java -version检查是否安装成功。如果安装成功,会显示如下图所示的信息:
- Hadoop伪分布式环境搭建
Step1. 执行命令:tar zxf hadoop-2.7.3.tar.gz,解压缩hadoop。
Step2. 执行命令:cd hadoop-2.7.3/etc/hadoop/, 进入到hadoop配置文件目录,如下图所示:
我们需要编辑以上5个文件,来搭建hadoop伪分布式环境。
Step3. 执行命令 vim hadoop-env.sh,编辑hadoop-env.sh.我们需要修改JAVA_HOME:export JAVA_HOME=/usr/local/jdk1.8.0_191。如下图所示:
Step4. 执行命令 vim hdfs-site.xml,编辑hdfs-site.xml。最后结果如果所示:
<configuration>
<property>
<name>dfs.replication</name> <!—存储副本的数量,因为是伪分布式的,所以datanode只有一个节点,所以这里设置成1-->
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name><!—namenode存储信息路径-->
<value>file:/home/yz/hadoop_dev/hadoop_data/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name><!—datanode存储信息路径-->
<value>file:/home/yz/hadoop_dev/hadoop_data/dfs/data</value>
</property>
</configuration>
把上面的,去掉<!--***-->部分,拷贝到文件里面去
配置文件里面的hadoop_data待会配置好了之后,需要手动去创建的。
Step4. 执行命令vim core-site.xml,编辑core-site.xml如下图所示:
为了方便拷贝,我也粘贴出来了:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/yz/hadoop_dev/hadoop_data</value>
</property>
<property>
<name>fs.defaultFS</name><!—hdfs默认的IP和端口-->
<value>hdfs://0.0.0.0:9000</value>
</property>
</configuration>
把上面的,去掉<!--***-->部分,拷贝到文件里面去
Step5. 执行命令 vim yarn-site.xml,编辑该文件。
为了方便编辑,可以执接拷贝下面文字:
<configuration>
<!-- Site specific YARN configuration properties -->
<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>
Step6. 执行命令 vim mapred-site.xml,编辑该文件:
对应的文字为:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>hdfs://localhost:9001</value>
</property>
</configuration>
Step7. 在hadoop-2.7.3目录下,创建hadoop_data
Step8. 进入到hadoop-2.7.3目录下的bin目录,执行命令./hdfs namenode -format
如果在输出信息末尾看到 “Exiting with status 0”,则表示执行成功。
Step9. 进入到hadoop-2.7.3/sbin目录下,执行./start-dfs.sh启动Hadoop集群.
Step10. 执行jps命令,查看是否已经启动了NameNode, SecondaryNameNode和DataNode进程,如果已经启动则说明以上步骤执行成功,hadoop集群已经运行起来。
- HBase伪分布式集群部署
Step1. 在hadoop_dev目录下,执行tar zxf hbase-1.2.4-bin.tar.gz,之后进入到hbase-1.2.4/conf/目录下。
Step2. 拷贝hadoop-2.7.3/etc/hadoop/目录下的core-site.xml和hdfs-site.xml到hbase-1.2.4/conf/目录下。
Step3. 执行命令: vim hbase-env.sh,编辑该文件,需要在文件末尾编辑如下信息:
export JAVA_HOME=/usr/local/jdk1.8.0_191
export HBASE_MANAGES_ZK=true
并且把文件中的下面两行注释掉
export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
Step4. 执行命令 vim hbase-site.xml, 编辑该文件
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/yz/hadoop_dev/hadoop_data/zookeeper</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master.maxclockskew</name>
<value>250000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>192.168.77.135</value>
</property>
</configuration>
Step5. 进入到hbase-1.2.4/bin目录下,执行./start-hbase.sh,启动hbase集群
Step6. 执行jps,查看当前启动的进程,如果是以下信息,则代表启动完成
Step7. 检测是否正常运行。
- 执行./hbase shell,进入到hbase命令行
- 执行status,查看状态
- Windows10 上的Eclipse连接ubuntu配置。
Step1. 在ubuntu上,执行ifconfig查看ip地址,我的是192.168.*.*.
Step2. 在ubuntu上,执行cat /etc/hostname,查看本机名,我的是ubuntu
Step3. 在ubuntu上,执行命令sudo vim /etc/hosts,编辑该文件.
Step4. 在win10系统上,进入到C:\Windows\System32\drivers\etc目录下,以管理员权限打开并编辑hosts文件。添加如下图所示信息:
- 验证是否可以连接成功。在win10的Eclipse写了一些代码,用来测试连接情况。只粘贴主要代码,如下图所示:
调试结果如下图所示: