Hadoop原生平台安装HA版本
Hadoop原生平台安装HA版本V3.0
1. 增加了Resourcemanager的HA,并进行测试
2. 增加了Job History Serve的配置
3. 增加HBase的搭建
2018年 3 月27日
目录
1. 软件准备
1.1 基础软件
软件 |
版本 |
作用 |
Redhat系统镜像 |
7.0 |
提供Hadoop基础运行的平台 |
JDK |
8u161-linux-x64 |
提供hadoop运行环境 |
Hadoop |
2.8.3 |
Hadoop软件包 |
Zookeeper |
3.3.6 |
提供分布式协调服务 |
Hbase |
1.3.1 |
分布式数据库 |
备注:本实验手册基于以上软件搭建,使用其他版本可能存在少许差异。
1.2 其他软件
软件 |
版本 |
作用 |
Windows |
7 |
提供物理操作系统 |
Vmware workstation |
12.5.6 |
虚拟化功能实现,安装linux虚拟机 |
Xshell |
5.0 |
提供windows SSH访问 |
Xftp |
5.0 |
提供windows 传输文件至linux |
leomoon CPU V |
1.22 |
检查CPU及操作系统是否支持虚拟化功能 |
备注:以上软件可使用类似软件或其他版本代替,本实验手册仅保证上述软件上述版本能搭建成功,其他软件或其他版本可能存在少许差异。
1.3 Hadoop平台系统规划
系统 |
主机名 |
Ip |
部署服务 |
运行Hadoop用户 |
Redhat7.0 |
Hadoop1 |
192.168.10.30 |
Namenode DFSZKFailoverController datanode ResourceManager Nodemanager JournalNode QuorumPeerMain JobHistoryServer HMaster HRegionServer |
root |
Redhat7.0 |
Hadoop2 |
192.168.10.40 |
Namenode ResourceManager DFSZKFailoverController Datanode Nodemanager JournalNode QuorumPeerMain HMaster HRegionServer |
root |
Redhat7.0 |
Hadoop3 |
192.168.10.50 |
Datanode Nodemanager JournalNode QuorumPeerMain HRegionServer |
root |
备注:上述平台规划请根据自己需求进行规划。
QuorumPeerMain为zookeeper的服务
运行Hadoop用户为任意可登录用户都可以,本实验手册所有运行都是以root用户执行。
1.4 Hadoop平台目录及端口规划
主机 |
目录 |
权限 |
作用 |
Hadoop1 |
/hadoop/soft |
755 |
Hadoop软件安装目录 |
/hadoop/nn |
755 |
namenode文件存放目录,可单独挂盘 |
|
/hadoop/dn |
755 |
Datanode文件存放目录,可单独挂盘 |
|
/hadoop/tmp |
755 |
Hadoop临时文件目录 |
|
/hadoop/zookeeper |
755 |
Zookeeper文件存放路径 |
|
/hadoop/JN |
755 |
JournalNode文件存放路径 |
|
Hadoop2 |
/hadoop/soft |
755 |
Hadoop软件安装目录 |
/hadoop/nn |
755 |
namenode文件存放目录,可单独挂盘 |
|
/hadoop/dn |
755 |
Datanode文件存放目录,可单独挂盘 |
|
/hadoop/tmp |
755 |
Hadoop临时文件目录 |
|
/hadoop/zookeeper |
755 |
Zookeeper文件存放路径 |
|
/hadoop/JN |
755 |
JournalNode文件存放路径 |
|
Hadoop3 |
/hadoop/soft |
755 |
Hadoop软件安装目录 |
/hadoop/dn |
755 |
Datanode文件存放目录,可单独挂盘 |
|
/hadoop/tmp |
755 |
Hadoop临时文件目录 |
|
/hadoop/zookeeper |
755 |
Zookeeper文件存放路径 |
|
/hadoop/JN |
755 |
JournalNode文件存放路径 |
主机 |
端口 |
作用 |
192.168.10.30 |
50070 |
外部访问hdfs的web界面端口 |
8088 |
外部访问yarn的web界面端口 |
|
16010 |
外部访问Hbase的web界面端口 |
|
192.168.10.40 |
50070 |
外部访问hdfs的web界面端口 |
8088 |
外部访问yarn的web界面端口 |
|
16010 |
外部访问Hbase的web界面端口 |
备注:该处列出的为外部访问,服务与服务之间还有其他端口未列出。
2. 环境准备
2.1 Vmware workstation安装
- 请确保使用的物理机打开虚拟化功能(Inter VT或AMD V),如不确认可使用leomoon CPU V检测,如检测结果如下图,则表示CPU及操作都支持虚拟化,如不通过,则无法正常安装和使用Vmware workstation。
- 备注:leomoon CPU 可在如下网址下载(https://leomoon.com/static/?file=leomoon-cpu-v_win.zip
),该软件无需安装解压运行即可查看结果。
- 下载Vmware workstation,双击运行如下。(安装路径可以默认也可以自己设置,需要设置的点击更改即可设置。)
2.2 Redhat 7 安装
- Redhat 7采用虚拟化环境安装,虚拟化平台为Vmware Workstation。
- 虚拟安装安装如下图进行。
- 磁盘保持默认即可
至此一个虚拟机创建完成
- 首先对Vmware workstation进行简单设置,然后编辑虚拟机。如下图。
- 将 0 虚拟机开机,并选择安装 rhel7.0。
- 安装过程语言选择英语。(推荐使用英语,也可以选择中文。 如果选择英语, 安装完系统后, 默认语言也将为英文。)
- 区域选择亚洲,城市选择上海。
- 软件包选择 server with gui,安装图形界面
- 选择手动进行分区。
- 网络配置
- 配置完成后,开始安装
- 设置root密码,并创建一个普通账户,并设置密码。
- 完成安装后,重启,接受许可证,并关闭kdump。
- 选择我将下次注册,并单击完成。
- 重启后,redhat需要创建一个普通账户,如在安装时候未创建,则输入用户名和密码登录 0 系统, 到此, rhel7.0 操作系统安装完成。
2.3 Redhat IP及主机名配置
- 根据规划配置ip及主机名,打开虚拟机。
- 使用root登录主机,右键选择Open in Terminal
- 打开一个控制台,输入ifconfig查看现有网卡和ip
- 使用cd /etc/sysconfig/network-scripts/,进入网卡配置目录,查看当先目录是否存在一个ifcfg-enoxxxxxxx(不同的虚拟机该名字可能不一样,根据ifconfig显示的网卡名找到该网卡的配置文件)
- Vim ifcfg-eno16777736,编辑网卡配置文件。结果如下图:
- 使用systemctl restart nework.service重启网卡,使用ifconfig查看配置,正确输出如下图
- 根据规划修改主机名,如安装系统时已设置可忽略
- 执行hostnamectl set-hostname hdoop1,修改主机名并写入配置文件,使用hostname查看当前生效的主机名,使用cat /etc/hostname查看下次启动生效的主机名。
2.4 Xshell工具使用(可选)
- 使用xshell前提为,在安装操作系统时已正确配置ip,并且运行xshell的机器能ping通该ip。
- 双机打开xshell软件,输入ssh168.10.30 (ip为规划的Ip,并已配置在操作系统上),选择接受并保存,输入帐号密码,即可登录linux主机。
2.5 Redhat 7 防火墙,Selinux配置
- 防火墙及Selinux会导致后面实验出现问题,在此将其关闭。具体步骤如下。
- 默认redhat安装了firewall防火墙,并开机自动启动。
- 使用systemctl status firewalld.service查看防火墙状态
- 使用systemctl stop firewalld.service停止防火墙。
- 使用systemctl disable firewalld.service关闭开机自动启动防火墙。
- 使用systemctl status firewalld.service查看防火墙状态,下图表示firewall防火墙停止并开机不启动。
- systemctl status iptables.service检查iptables防火墙是否启动(redhat7默认使用firewall防火墙,如出现iptabls防火墙启动也需要关闭,关闭步骤同firewall)
- 关闭redhat7的selinux,使用getenforce查询selinux状态,使用setenforce 0,临时关闭selinux。
- 为保证下次selinux的永久关闭,需要修改配置,使用vim /etc/selinux/config,修改为如下结果。
备注:enforcing为selinux启动并运行
permissive为selinux只打印警告不阻止
disabled为彻底关闭selinux
2.6 Redhat 7 目录创建
- 使用root登录hadoop1,使用mkdir /hadoop创建目录,使用ls -dl /hadoop,查看目录结果如下
- 如规划的运行用户不为root,请使用root创建/hadoop后使用chown 运行用户 /hadoop,修改/hadoop的所有者,并切换到运行用户再在/hadoop下创建目录(可选)
- 使用cd /hadoop,在/hadoop下根据规划创建相应目录(如不创建也可以运行,在格式化的时候也会自动创建)
2.7 Redhat 7 主机名和ip对应关系
- 使用vim /etc/hosts编辑主机名和ip对应关系
2.8 Redhat 7 SSH互信
- ssh免密码登录如不配置,在启动集群时候需要输入每个节点的密码方可启动,未避免多次输入密码,可配置ssh免密码登录。
- 免密码登录只需要配置主节点到其余各节点即可。
- 在hadoop1上使用ssh-keygen生成一对公私密钥(敲3个回车)
- 使用ssh-copy-id拷贝公钥到需要被免密码的主机上,ssh-copy-id后面接需要免密码登录的ip(例如需要免密码登录168.10.40,输入ssh-copy-id 192.168.10.40,根据提示输入yes,再输入192.168.10.40的密码。使用ssh 192.168.10.40,检查免密码登录是否成功,如图,登录192.168.10.40无需输入密码即可登录)
2.9 上传软件包到redhat7
- 使用xftp上传软件包到168.10.30,双击打开xftp。设置如下,点击确认,输入redhat7.0的帐号密码(建议使用hadoop的运行账户)
- 打开本机需要上传软件所在目录,从左边拖到右边即开始上传。上传完成后可在右边看到上传的文件。
3. 软件安装及配置
3.1 环境检查
- 本环境检查近针对本实验手册规划的主机名及ip进行检 查。
- 主机名检查,使用hostname检查主机名,保证和规划的一下,hadoop1正确输出如下图。(每个节点都需要检查)
- IP检查,使用ifconfig检查现在ip,保证和规划的一下,hadoop1正确输出如下图。(每个节点都需要检查)
- 时间检查,使用date检查现在时间,保证所有节点一致,hadoop1输出如下图。(可选择安装配置NTP服务,保证集群中所有节点时间一致)(每个节点都需要检查)
- 防火前检查,使用systemctl status firewalld.service检查防火墙状态及运行情况,hadoop1正确输出如下图。(每个节点都需要检查)
- Selinux检查,使用getenforce检查现在selinux状态,hadoop1正确输出如下。(每个节点都需要检查)
- 节点网络连通性检查,使用ping命令,ping其他节点ip及主机名,保证能正常解析,正确输出如下图。(每个节点都需要检查)
- 本机主机名和ip对应关系,保证能正常解析,正确输出如下图。(每个节点都需要检查)
- ssh互信检查,使用ssh命令检查从168.10.30到所有节点免密码登录是否成功,正确输出如下。(在hadoop1节点需要检查,保证能ssh 到规划的所有ip都不需要密码,包括本节点)
- 目录检查,使用ls –dl 目录的路径,hadoop1输出如下(每个节点都需要检查)
- 软件包检查,使用tar–tvf 文件名1>/dev/null检查压缩包完整性,hadoop1正确输出如下(hadoop1需要检查)
3.2 JDK安装及配置
- 使用tar -zxvf jdk-8u161-linux-x64.gz -C /hadoop/soft解压jdk到指定目录。
- 使用chown -R root:root /hadoop/soft/jdk1.8.0_161修改jdk目录的所有者和所属组
- 检查jdk目录,正确输入如下图
- 配置root用户的环境变量,切换的家目录,使用vim .bash_profile编辑环境变量。添加如下内容。
(备注$JAVA_HOME/bin必须在$PATH前面,默认操作已经安装过一个java)
- 使用source.bash_profile重新加载环境变量,使用java –version查看现在java的版本,结果如下
- 使用scp–pr /hadoop/soft/jdk1.8.0_161 192.168.10.40:/haoop/soft scp –pr /hadoop/soft/jdk1.8.0_161 192.168.10.50:/haoop/soft,拷贝jdk到其他两个节点,并登录其他两个节点按照步骤e配置环境变量并使用java –version查看现在java的版本。
3.3 Zookeeper安装及配置
- 使用tar -zxvf zookeeper-3.3.6.tar.gz -C /hadoop/soft解压jdk到指定目录。
- 进入zookeeper的配置文件目录
- 默认情况下zookeeper的conf目录下只有cfg,无zookeeper的配置文件,使用cp zoo_sample.cfg zoo.cfg,然后使用vim zoo.cfg编辑该配置文件,配置如下
- 使用scp -rp zookeeper-3.3.6 192.168.10.40:/hadoop/soft/scp -rp zookeeper-3.3.6 192.168.10.50:/hadoop/soft/ 复制软件到其他节点指定目录下。
- 配置zookeeper环境变量,在运行用户家目录下,使用vim .bash_profile 编辑该文件,内容如下。(所有节点均要添加)
- 使用root用户登录Hadoop1进入dataDir指定的目录,cd /hadoop/zookeeper,执行echo 1 > myid
- 使用root用户登录Hadoop2进入dataDir指定的目录,cd /hadoop/zookeeper,执行echo 2 > myid
- 使用root用户登录Hadoop3进入dataDir指定的目录,cd /hadoop/zookeeper,执行echo 3 > myid
3.4 Hadoop安装及配置
- 使用tar -zxvf jdk-8u161-linux-x64.gz -C /hadoop/soft解压jdk到指定目录。
- 使用chown -R root:root /hadoop/soft/hadoop-2.8.3修改jdk目录的所有者和所属组
- 使用cd /hadoop/soft/hadoop-2.8.3/etc/hadoop/进入hadoop配置文件目录。
- 需要编辑hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml、slaves。
- 使用vim编辑hadoop-env.sh结果如下
- 使用vim编辑core-site.xml结果如下
<property>
<name>fs.defaultFS</name>
<value>hdfs://hahadoop</value>
</property>
<property>
<name>Hadoop.tmp.dir</name>
<value>/hadoop/tmp/</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>hadoop1:2181,hadoop2:2181,hadoop3:2181</value>
</property>
- 使用vim编辑hdfs-site.xml结果如下图
<configuration>
<property>
<name>dfs.nameservices</name>
<value>hahadoop</value>
</property>
<property>
<name>dfs.ha.namenodes.hahadoop</name>
<value>nn1,nn2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.hahadoop.nn1</name>
<value>hadoop1:8020</value>
</property>
<property>
<name>dfs.namenode.rpc-address.hahadoop.nn2</name>
<value>hadoop2:8020</value>
</property>
<property>
<name>dfs.namenode.http-address.hahadoop.nn1</name>
<value>hadoop1:50070</value>
</property>
<property>
<name>dfs.namenode.http-address.hahadoop.nn2</name>
<value>hadoop2:50070</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://hadoop1:8485;hadoop2:8485;hadoop3:8485/hahadoop</value>
</property>
<property>
<name>dfs.journalnode.edits.dir</name>
<value>file:///hadoop/jn</value>
</property>
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.client.failover.proxy.provider.hahadoop</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/root/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.connect-timeout</name>
<value>30000</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///hadoop/nn</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///hadoop/dn</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
- 由于默认没有mapred-site.xml文件,只有一个mapred-site.xml.template,使用cpmapred-site.xml.template mapred-site.xml,并使用vim编辑mapred-site.xml结果如下图
<configuration>
<property>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop1:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop1:19888</value>
</property>
</configuration>
- 使用vim编辑yarn-site.xml 结果如下图
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.connect.retry-interval.ms</name>
<value>30000</value>
</property>
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.ha.automatic-failover.embedded</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yarn-rm-cluster</value>
</property>
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>hadoop1</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>hadoop2</value>
</property>
<property>
<name>yarn.resourcemanager.recovery.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>hadoop1:2181,hadoop2:2181,hadoop3:2181</value>
</property>
<property>
<name>yarn.resourcemanager.address.rm1</name>
<value>hadoop1:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address.rm1</name>
<value>hadoop1:8034</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address.rm1</name>
<value>hadoop1:8088</value>
</property>
<property>
<name>yarn.resourcemanager.address.rm2</name>
<value>hadoop2:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address.rm2</name>
<value>hadoop2:8034</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address.rm2</name>
<value>hadoop2:8088</value>
</property>
<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>
- 使用vim编辑slaves结果如下图
记得编辑hadoop-env.sh和yarn-env.sh
- 配置root用户的环境变量,切换的家目录,使用vim .bash_profile编辑环境变量,添加如下内容。使用source .bash_profile加载环境变量。(所有节点均要添加)
- 使用hadoop version查询hadoop版本,正确输出如下
- 使用scp–pr /hadoop/soft/hadoop-2.8.3 192.168.10.40:/haoop/soft scp –pr /hadoop/soft/hadoop-2.8.3 192.168.10.50:/haoop/soft拷贝配置好的hadoop到其他两个节点,并按照步骤I编辑环境变量,使用hadoop version查看hadoop的版本,结果如下
3.5 HBase安装及配置
- 使用root登录进入软件包所在目录使用tar-zxvf hbase-1.3.1-bin.tar.gz -C /Hadoop/soft/ 解压Hbase安装目录。
- 进入Hbase配置文件目录,Hbase安装需要修改hbase-env.sh、habse-site.sh、regionservers。
- 编辑hbase-env.sh,需要修改jdk的位置,由于使用的jdk1.8,需要注释PerSize,由于Hbase默认使用的自带的zookeeper,在这里我们需要启用外部zookeeper,需要将HBASE_MANAGES_ZK设置为false。
- 编辑hbase-site.sh,最少要配置以下选项。
- 编辑regionservers,列出了你希望运行的全部 HRegionServer,一行写一个host(就像Hadoop里面的 slaves 一样). 列在这里的server会随着集群的启动而启动,集群的停止而停止。
- 创建并编辑backup-masters,backup-masters里面指定备份的Hmaster。
- 由于Hbase依赖于hdfs,为保证hbase的副本数和hdfs一致,需要集群运行hdfs-site.xml复制到habse的conf目录下。
- 为保证在任何位置可以使用hbase的命令,需要配置root的环境变量,编辑/root/.bash_profile。添加HBASE_HOME及PATH。
- 使用scp–pr /hadoop/soft/habse-1.3.1 root@hadoop2:/haoop/soft scp –pr /hadoop/soft/ habse-1.3.1 root@hadoop3:/haoop/soft拷贝配置好的Hbase到集群其他两个节点,并按照步骤I编辑root的环境变量,至此基本的hbase已经配置成功。
4. 测试
4.1 zookeeper启动
- 由于Hadoop依赖于zookeeper,zookeeper必须先于Hadoop启动否则启动Hadoop会出现异常
- 使用sh start启动zookeeper,需要在每个运行zookeeper服务的节点上运行该命令,正确输出如下。
- 使用使用sh status查看zookeeper的状态,可在每个节点上都运行该命令,正确输出如下,三个节点其中一个leader另外另个为follower。
4.2 Hadoop启动
- 使用root登录hadoop1、hadoop2、hadoop3,使用hadoop-daemon.sh start journalnode启动journalnode,并使用jps成功输出如下
- 在hadoop1上使用hdfs namenode –format格式化hdfs文件系统,正确输出如下。(仅在第一次启动之前需要格式化,后面启动不需要格式化)
- 在节点1启动namenode(hadoop-daemon.sh start namenode),然后让第二个节点namenode去同步第一个节点的namenode。使用root登录第二个namenode即hadoop2,使用hdfs namenode -bootstrapStandby,(这里需要输入一个Y)同步第一个namenode生成元信息,正确输出如图。(如果不进行这一步备namenode由于缺少元信息无法启动,在hadoop2的namnode日志中会出现ERROR namenode.NameNode: Failed to start namenode.
org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /hadoop/nn is in an inconsistent state: storage directory does not exist or is not accessible.)。昨晚同步之后然后在第二节点启动namenode。
- 在hadoop1上,使用hdfs zkfc–formatZK用来格式化zkfc,无报错及为成功(仅在第一次启动之前需要格式化,后面启动不需要格式化)。(如果不进行这一步,会出现namenode无法向zookeeper注册,会出现两个namenode都为备的状态。)
- 使用start-all.sh可同时启动hdfs及Yarn,启动截图如下。(如果没有配置ssh互信,启动时候需要输入每一台机器的密码),可能节点二的resourcemanager没有启动,必须要手动启动
- 在hadoop1使用mr-jobhistory-daemon.sh start historyserver启动JobHistoryServer,这样mapreduce运行历史任务可以查看。(可选)
- 启动成功可运行jps查看每个节点上运行的进程,正常情况如下。
- 使用hdfs haadmin -getServiceState nn1和hdfs haadmin -getServiceState nn2查看准备namenode的状态,如下图。
- 访问hdfs的web界面,使用浏览器打开http://192.168.10.30:50070和http://192.168.10.40:50070结果如下图能看到datanode的数据和启动datanode相同,表示启动成功。
- 使用yranrmadmin -getServiceState rm1查看准备resourcemanager的状态,如下图。
- 在确认hadoop1上resourcemanager成功启动且为激活状态,登录hadoop2使用yarn-daemon.sh start resourcemanager启动备用resourcemanager,并在hadoop2上使用yarn rmadmin -getServiceState rm2查看resourcemanager的状态如图。
- 访问yarn的web界面,使用浏览器打开http://192.168.10.30:8088,结果如下图,表示yarn正常正常启动。(如果resourcemanager是主备部署,登录备resourcemanager时候会自动跳转到主。)
4.3 HBASE的启动
- hbase依赖于zookeeper以及hdfs,需要保证hdfs及zookeeper已经正常运行,才可以开始启动hbase
- 使用start-hbase.sh启动habse的HMaster、RegionServer。
- 使用jps确保每个节点上对应的进程已成功启动。
- 使用Web输入http://192.168.10.30:16010,登录hbase的web界面。
4.4 HDFS HA测试
- 本实验手册为搭建HDFS的HA环境,现测试HDFS的HA
- 查看hadoop1为active,杀掉hadoop1的namenode,hadoop2的namenode自动升级为active,如下图。
4.5 YARN HA测试
- 查看hadoop1的ResourceManager为active,杀掉hadoop1的ResourceManager,hadoop2的ResourceManager自动升级为active,如下图。
- 在hadoop1使用yarn-daemon.sh start resourcemanager启动resourcemanager。
4.6 Hbase HA测试
- 打开hbase的web界面,查看主备的hbase。
- 登录hadoop1使用jps查看HMaster的进程id,并使用kill杀掉HMaster。
- 使用web界面查看备用HMaster的状态,如下图,备用Hmaster已经成功提升为主Hmaster
4.7 HDFS测试
- 在hadoop1上使用hdfs 命令上传文件到hdfs文件系统,执行hdfs dfs -put /etc/passwd / 上传文件到hdfs的跟目录,使用hdfs dfs –ls / 查看hdfs跟下面的文件,正确结果如下图。
- 在hadoop2上使用hdfs dfs -get /passwd/root/ 下载刚刚上传的文件到家目录
4.8 Hbase测试
- 使用hbaseshell进入hbase的shell命令行。(上述会有一个jar冲突的警告,如果需要消除,需要删除hbase上那个jar包即可)
- 查看集群状态和节点数量,使用status
- 创建表,create‘test’,‘c1’( hbase创建表create命令语法为:表名、列名1、列名2、列名3……)
- 查看表,list
- 给表写入数据,put 'test','rowkey','c1','test'(导入数据的命令put的语法为表名、行值、列名(列名可加冒号,表示这个列簇下面还有子列)、列数据)
- 全表扫描数据(scan 'test')
- 查询表的数据(get‘test’,’rowkey’),根据条件查询,查询test表中row为rowkey的值。
- 删除表,在删除表之前需要先让表失效才能删除。使用disable‘test’,使表失效。drop ‘test’删除表。
4.9 Yarn2.0测试(wordcount任务)
- 原文件位于本机,执行hadoop jar /hadoop/soft/hadoop-2.8.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.3.jar wordcount file:///etc/passwd /wordcount任务完成如下图。
- 使用hdfs dfs -cat hdfs://192.168.10.30:8020/wordcount/part-r-00000,查看输出结果,如下图。
- 将文件上传到hdfs,使用hdfsdfs -put /etc/passwd hdfs://192.168.10.30/ 执行hadoop jar /hadoop/soft/hadoop-2.8.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.3.jar wordcount passwd /wordcountpasswd,运行如下
- 使用hdfs dfs -cat hdfs://192.168.10.30:8020/wordcountpasswd/part-r-00000,查看输出结果,如下图。
5. Hadoop、Zookeeper配置文件
- 点赞
- 收藏
- 关注作者
评论(0)