网站建设佰首选金手指十八,洛阳seo培训,wordpress 翻译失效,电商首页设计规范实验名称 部署全分布模式HBase集群和实战HBase 实验性质 #xff08;必修、选修#xff09; 必修 实验类型#xff08;验证、设计、创新、综合#xff09; 综合 实验课时 2 实验日期 2023.11.07-2023.11.10 实验仪器设备以及实验软硬件要求 专业实验室#xff… 实验名称 部署全分布模式HBase集群和实战HBase 实验性质 必修、选修 必修 实验类型验证、设计、创新、综合 综合 实验课时 2 实验日期 2023.11.07-2023.11.10 实验仪器设备以及实验软硬件要求 专业实验室配有centos7.5系统的linux虚拟机三台 实验目的 1. 理解HBase数据模型。 2. 理解HBase体系架构。 3. 熟练掌握HBase集群的部署。 4. 了解HBase Web UI的使用。 5. 熟练掌握HBase Shell常用命令的使用。 6. 了解HBase Java API能编写简单的HBase程序。 实验内容实验原理、运用的理论知识、算法、程序、步骤和方法 1.HBase集群的部署原理 Hadoop生态环境 HBase通常部署在Hadoop生态环境上依赖HDFSHadoop Distributed File System存储数据。 ZooKeeper HBase集群通常依赖ZooKeeper进行协调和管理确保集群中的各个节点之间的一致性和可用性。 Master-RegionServer架构 HBase集群包含一个或多个Master节点和多个RegionServer节点。Master负责集群管理和元数据操作而RegionServer存储和处理实际的数据。 HBase根目录 HBase在HDFS上有一个根目录用于存储表的元数据和实际数据。这个目录会分散在HDFS上的不同节点上实现了数据的分布式存储。 2. HBase实战的实验原理 创建和管理表 使用HBase Shell或API创建表定义列簇、列等结构并观察表的分布情况。 数据写入和读取 向HBase表中写入数据并通过不同方式进行读取观察数据的分布和读写性能。 HBase过滤器 使用HBase过滤器来检索满足特定条件的数据例如列值、时间戳等。 HBase Coprocessors 实验使用HBase Coprocessors来进行数据处理例如计数、聚合等加强HBase的功能。 监控和性能调优 使用HBase的监控工具如HBase Web UI来监测集群的状态观察各节点的负载情况进行性能调优。 故障模拟 模拟节点故障观察HBase的自动恢复机制确保集群的可用性和容错性。 数据一致性 观察HBase在数据写入和更新时的一致性保证了解HBase的事务特性。 备份和恢复 实验备份和恢复HBase表确保在发生灾难性事件时能够迅速还原数据。 实验步骤 1.规划全分布模式HBase集群。 采用的是HBase版本是1.4.103个节点的机器名分别为master、slave1、slave2IP地址依次为192.168.18.100、192.168.18.101、192.168.18.102 2.部署全分布模式HBase集群。 1. 初始软硬件环境准备 1准备3台机器安装操作系统编者使用CentOS Linux 7.5。 2对集群内每一台机器配置静态IP、修改机器名、添加集群级别域名映射、关闭防火墙。 3对集群内每一台机器安装和配置Java要求Java 1.7或更高版本编者使用Oracle JDK 8u191。 4安装和配置Linux集群中主节点到从节点的SSH免密登录 2). 获取HBase HBase官方下载地址为https://hbase.apache.org/downloads.html建议读者下载stable目录下的当前稳定版本。编者采用的HBase稳定版本是2019年6月10日发布的HBase 1.4.10其安装包文件hbase-1.4.10-bin.tar.gz例如存放在master机器的/home/xuluhui/Downloads中。 3). 主节点上配置HBase HBase所有配置文件位于$HBASE_HOME/conf下具体的配置文件如前文图5-9所示。本实验中编者仅修改hbase-env.sh、hbase-site.xml、regionservers三个配置文件。 假设当前目录为“/opt/so/hbase-1.4.10”切换到普通用户如root下在主节点master上配置HBase的具体过程如下所示。 1编辑配置文件hbase-env.sh hbase-env.sh用于设置Linux/Unix环境下运行HBase要用的环境变量包括Java安装路径等使用“vim conf/hbase-env.sh”对其进行如下修改。 设置JAVA_HOME与master上之前安装的JDK位置、版本一致将第27行的注释去掉并修改为以下内容修改后的效果如图所示。 export JAVA_HOME/usr/java/jdk1.8.0_191/ 编辑配置文件hbase-env.sh中JAVA_HOME 将第46、47行的PermSize作为注释因为JDK8中无需配置修改后的效果如图所示。 编辑配置文件hbase-env.sh中PermSize JDK8下若PermSize配置不作为注释或删掉则启动HBase集群时会出现以下“warning”警告信息 设置HBASE_PID_DIR修改进程号文件的保存位置该参数默认为“/tmp”将第120行修改为以下内容如图所示。其中pids目录由HBase集群启动后自动创建。 编辑配置文件hbase-env.sh中HBASE_PID_DIR 设置HBASE_MANAGES_ZK将其值设置为false即关闭HBase本身的ZooKeeper集群将第128行修改为以下内容如图所示。 编辑配置文件hbase-env.sh中HBASE_MANAGES_ZK 2编辑配置文件hbase-site.xml hbase-site.xml是HBase核心配置文件包括HBase数据存放位置、ZooKeeper集群地址等配置项。在master机器上修改配置文件hbase-site.xml具体内容如下所示。 3编辑配置文件regionservers Regionservers用于设置运行HRegionServer从进程的机器列表每行1个主机名。在master机器上修改配置文件regionservers该文件原来内容为“localhost”修改为以下内容。 slave1 slave2 3.启动全分布模式HBase集群。 1. 启动HDFS集群 在主节点上使用命令“start-dfs.sh”启动HDFS集群使用的命令及运行效果如图5-23所示从图5-23中可以看出HDFS主进程NameNode成功启动slave1和slave2上的从进程DataNode此处未展示读者应保证HDFS所有主从进程都启动成功。 2. 启动ZooKeeper集群 由于本实验中HBase并未自动管理ZooKeeper所以用户需要手工启动ZooKeeper集群。在ZooKeeper集群的所有节点上使用命令“zkServer.sh start”启动ZooKeeper集群编者为了方便在节点master上使用ssh远程连接slave1、slave2完成了各个节点ZooKeeper的启动工作 3. 启动HBase集群 在主节点上启动HBase集群 而在从节点上 4.验证全分布模式HBase集群。 主节点上的webUI的界面是 从节点的webUI的界面 5.使用HBase Web UI。 1使用hbase shell 2打开HBase主节点的Web UI可以看到已建立的student表如图所示。 从HBase集群主节点的Web UI界面上查看student表 3使用命令“zkCli.sh -server master:2181,slave1:2181,slave2:2181”连接ZooKeeper客户端从ZooKeeper的存储树中也可以查看到建立的student表如图所示。 从ZooKeeper存储树中可查看到student表 4由于HBase底层存储采用HDFS所以打开HDFS Web UI也可以查看到建立的student表如图所示。 6. 关闭全分布模式HBase集群。 使用命令“stop-hbase.sh” 关闭HBase集群照本实验设置关闭HBase集群后HBase主节点master上的主进程HMaster、HBase从节点slave1、slave2上的从进程HRegionServer消失同时HBase主从节点上所有与HBase相关的ZooKeeper节点文件*.znode和进程号文件*.pid也依次消失。 实验结果与分析 1.集群启动 通过Web UI、HBase Shell以及其他工具确认HBase集群启动正常。 2.表的创建和管理 通过HBase Shell和Web UI查看已建立的表例如student表。 3.数据写入和读取 使用HBase Shell或API向表中写入数据并通过不同方式进行读取观察性能。 4.过滤器和Coprocessors 使用过滤器检索数据尝试使用Coprocessors进行数据处理验证功能。 5.监控和性能调优 使用HBase Web UI监测集群状态观察各节点负载情况进行性能调优。 6.故障模拟 模拟节点故障验证HBase的自动恢复机制确保集群容错性。数据一致性 观察数据写入和更新时的一致性了解HBase的事务特性。 7.备份和恢复 实验备份和恢复HBase表确认在灾难性事件时能够迅速还原数据。