伪分布HBase的安装与部署
1.实训目标
(1)熟悉掌握使用在Linux下安装伪分布式HBase。
(2)熟悉掌握使用在HBase伪分布式下使用自带Zookeeper。
2.实训环境
环境 | 版本 | 说明 |
Windows 10系统 | 64位 | 操作电脑配置 |
VMware | 15 | 用于搭建所需虚拟机Linux系统 |
Linux系统 | CentOS 7 | 已配置完成,并命名为hadoop能正常使用 |
伪分布式Hadoop | 3.1.4 | 用于HBase伪分布式的配置 |
软件 | 版本 | 说明 |
HBase | 2.5.6 | 最新稳定版本 |
3.实训说明
通过本小节学习,可知HBase内置也有Zookeeper,但为了对HBase的HMaster节点的高可用管理,更好的使用HBase,配置分布式HBase时使用的是外部Zookeeper集群。但如果只是简单的测试,并不需要存储海量数据,使用分布式HBase集群,会造成资源浪费,因此,可以选择使用伪分布式的HBase和HBase内置的Zookeeper以节约资源。请基于HBase 2.5.6版本实现伪分布式的HBase集群搭建。
4.实训步骤
4.1上传HBase安装包并解压
利用FinalShell软件将HBase安装包hbase-2.5.6-bin.tar.gz上传至虚拟机hadoop的/opt目录下。
使用“tar”命令将HBase解压至/usr/local目录下,具体实现如以下代码所示:
tar -zxvf /opt/hbase-2.5.6-bin.tar.gz -C /usr/local/
4.2修改配置文件并设置环境变量
HBase伪分布式安装,需要修改的配置文件有hbase-env.sh、hbase-site.xml、regionservers和/etc/profile。
通过“cd /usr/local/hbase-2.5.6/conf”命令进入HBase的conf目录下。
(1)配置HBase的环境变量
执行“vi /etc/profile”命令,对profile文件修改,添加HBase环境变量,内容如代码4-1所示。
代码4-1 修改profile
#HBASE_HOME
export HBASE_HOME=/usr/local/hbase-2.5.6
export PATH=$PATH:$HBASE_HOME/bin
切换到命令模式,输入命令“:wq”保存退出。执行命令“source /etc/profile”进行刷新。
(2)修改配置文件hbase-env.sh
执行“vi hbase-env.sh”命令,修改配置文件hbase-env.sh,添加内容如代码4-2所示。切换到命令模式,输入命令“:wq”保存退出。
其中HBASE_CLASSPATH设置为Hadoop配置文件的目录,JAVA_HOME设置为JDK的路径,HBASE_MANAGES_ZK设置为ture,使用HBase自带的Zookeeper。
export HBASE_CLASSPATH=/usr/local/hadoop-3.1.4/etc/hadoop
export JAVA_HOME=/usr/local/jdk1.8.0_161
export HBASE_MANAGES_ZK=true
(3)修改配置文件hbase-site.xml
执行命令“mkdir /usr/local/hbase-2.5.6/data”创建data文件夹,存放Zookeeper快照。
执行“vi hbase-site.xml”命令,修改配置文件hbase-site.xml,创建文件夹命令与添加的内容如代码4-3所示。切换到命令模式,输入命令“:wq”保存退出。
其中hbase.rootdir是RegionServer的共享目录,用来持久化HBase,设置为HDFS的地址;hbase.zookeeper.property.dataDir是存放Zookeeper快照的路径,需要提前创建好文件夹;为了避免出现启动时出现无法找到HMaster进程的错误,设置hbase.unsafe.stream.capability.enforce为false。
//创建data文件夹
mkdir /usr/local/hbase-2.5.6/data
//hbase-site.xml配置内容
<configuration><property><name>hbase.rootdir</name>
<value>hdfs://hadoop:8020/hbase</value>
<description>配置HBase的数据存放再HDFS中</description></property><property><name>hbase.zookeeper.property.dataDir</name>
<value>/usr/local/hbase-2.5.6/data/zookeeper</value>
<description>配置存放Zookeeper快照的路径</description></property><property><name>hbase.cluster.distributed</name>
<value>true</value>
<description>开启Hbase的分布式模式</description>
</property>
<property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value>
</property>
</configuration>
(4)修改配置文件regionservers
执行“vi regionservers”命令,修改配置文件regionservers,如代码4-4所示。由于不是安装分布式的HBase集群,所以只需填写hadoop即可。切换到命令模式,输入命令“:wq”保存退出。
hadoop
4.3开启HBase
(1)启动HBase
配置文件都已修改完成,开启伪分布式HBase,并使用自带的Zookeeper,验证安装是否成功。首先启动伪分布式Hadoop,然后启动伪分布式HBase,命令如代码4-5所示。“jps”查看进程,发现已有HMaster、HRegionServer、HQuorumPeer进程(HBase有内置的zookeeper),代表HBase启动成功。结果如图4-1所示。
//启动伪分布式hadoop
start-all.sh
//启动hbase命令
start-hbase.sh
//查看进程
jps
(2)访问HBase自带web配置页
2.1关闭防火墙
输入命令“systemctl stop firewalld.service”
2.2打开浏览器访问HBase自带web配置页
浏览器输入网址:http://192.168.15.128:16010/
2.3效果图如下
相关文章:

伪分布HBase的安装与部署
1.实训目标 (1)熟悉掌握使用在Linux下安装伪分布式HBase。 (2)熟悉掌握使用在HBase伪分布式下使用自带Zookeeper。 2.实训环境 环境 版本 说明 Windows 10系统 64位 操作电脑配置 VMware 15 用于搭建所需虚拟机Linux系统 …...

Python语言基础与应用-北京大学-陈斌-P40-39-基本扩展模块/上机练习:计时和文件处理-给算法计时-上机代码
Python语言基础与应用-北京大学-陈斌-P40-39-基本扩展模块/上机练习:计时和文件处理-给算法计时-上机代码 上机代码: # 基本扩展模块训练 给算法计时 def factorial(number): # 自定义一个计算阶乘的函数i 1result 1 # 变量 result 用来存储每个数的阶…...

Sqllab第一关通关笔记
知识点: 明白数值注入和字符注入的区别 数值注入:通过数字运算判断,1/0 1/1 字符注入:通过引号进行判断,奇数个和偶数个单引号进行识别 联合查询:union 或者 union all 需要满足字段数一致&…...
【Golang星辰图】图像和多媒体处理的创新之路:Go语言的无限潜能
图像处理、音视频编辑,Go语言不再局限:揭秘opencv和goav的威力 前言: 在当今的数字时代,图像处理和多媒体技术在各个领域中的应用越来越广泛。无论是计算机视觉、图像处理还是音视频处理,选择合适的库和工具至关重要。本文将介绍…...

MES管理系统中电子看板都有哪些类型?
随着工业信息化和智能制造的不断发展,MES管理系统已经成为现代制造业不可或缺的重要工具。MES管理系统通过集成和优化生产过程中的各个环节,实现对生产过程的实时监控、调度和管理,提高生产效率和质量。 在生产制造过程中,看板管…...

【Flutter 面试题】await for 如何使用?
【Flutter 面试题】await for 如何使用? 文章目录 写在前面解答补充说明完整代码示例运行结果详细说明 写在前面 🙋 关于我 ,小雨青年 👉 CSDN博客专家,GitChat专栏作者,阿里云社区专家博主,51…...
MongoDB聚合运算符:$dayOfWeek
$dayOfWeek返回日期中“星期”的部分,值的范围1-7,即Sunday~Saturday。 语法 { $dayOfWeek: <dateExpression> }参数说明: <dateExpression>为可被解析为Date、Timestamp或ObjectID的表达式<dateExpression>也可以是一个…...

Visual Studio单步调试中监视窗口变灰的问题
在vs调试中,写了这样一条语句 while((nfread(buf, sizeof(float), N, pf))>0) 然而,在调试中,只要一执行while这条语句,监视窗口中的变量全部变为灰色,不能查看,是程序本身并没有报错,能够继…...

【Selenium】selenium介绍及工作原理
一、Selenium介绍 用于Web应用程序测试的工具,Selenium是开源并且免费的,覆盖IE、Chrome、FireFox、Safari等主流浏览器,通过在不同浏览器中运行自动化测试。支持Java、Python、Net、Perl等编程语言进行自动化测试脚本编写。 官网地址&…...

【2024-完整版】python爬虫 批量查询自己所有CSDN文章的质量分:附整个实现流程
【2024】批量查询CSDN文章质量分 写在最前面一、分析获取步骤二、获取文章列表1. 前期准备2. 获取文章的接口3. 接口测试(更新重点) 三、查询质量分1. 前期准备2. 获取文章的接口3. 接口测试 四、python代码实现1. 分步实现2. 批量获取文章信息3. 从exce…...

Nuxt3: useFetch使用过程常见一种报错
一、问题描述 先看一段代码: <script setup> const fetchData async () > {const { data, error } await useFetch(https://api.publicapis.org/entries);const { data: data2, error: error2 } await useFetch(https://api.publicapis.org/entries);…...
当代计算机语言占比分析
在当今快速发展的科技领域,计算机语言作为程序员的工具之一,扮演着至关重要的角色。随着技术的不断演进,各种编程语言层出不穷,但在实际开发中,哪些计算机语言占据主导地位?本文将对当代计算机语言的占比进…...

基于大模型和向量数据库的 RAG 示例
1 RAG 介绍 RAG是一种先进的自然语言处理方法,它结合了信息检索和文本生成技术,用于提高问答系统、聊天机器人等应用的性能。 2 RAG 的工作流程 文档加载(Document Loading) 从各种来源加载大量文档数据。这些文档…...

【C语言】比较两个字符串大小,strcmp函数
目录 一,strcmp函数 1,strcmp函数 2,函数头文件: 3,函数原型: 4,返回取值: 二,代码实现 三,小结 一,strcmp函数 1,strcmp函数 …...

深入理解与应用Keepalive机制
目录 引言 一、VRRP协议 (一)VRRP概述 1.诞生背景 2.基本理论 (二)VRRP工作原理 (三)VRRP相关术语 二、keepalive基本理论 (一)基本性能 (二)实现原…...

嵌入(embedding)概念
嵌入(embedding)在数学和相关领域中的确是指将一个数学对象在保持其某些关键性质不变的前提下,注入到一个更大或更高维的空间中。这个过程不仅仅是简单的映射,而是要求注入的对象在新空间中的表现形式能够完整反映原有对象的内在结…...

豆瓣书影音存入Notion
使用Python将图书和影视数据存放入Notion中。 🖼️介绍 环境 Python 3.10 (建议 3.11 及以上)Pycharm / Vs Code / Vs Code Studio 项目结构 │ .env │ main.py - 主函数、执行程序 │ new_book.txt - 上一次更新书籍 │ new_video.…...
Lucene 分词 示例代码
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute; import org.apache.lucene.analysis.TokenStream; import org...
2.18 校招 实习 内推 面经
绿*泡*泡VX: neituijunsir 交流*裙 ,内推/实习/校招汇总表格 1、自动驾驶一周资讯 - 李想回应“年终奖有点大”;智界升级为奇瑞独立事业部;小鹏汽车春节累计智驾总里程公布 自动驾驶一周资讯 - 李想回应“年终奖有点大”&…...

spring中事务失效的场景有哪些?
异常捕获处理 在方法中已经将异常捕获处理掉并没有抛出。 事务只有捕捉到了抛出的异常才可以进行处理,如果有异常业务中直接捕获处理掉没有抛出,事务是无法感知到的。 解决:在catch块throw抛出异常。 抛出检查异常 spring默认只会回滚非检…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...
【Java学习笔记】Arrays类
Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...

Debian系统简介
目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版ÿ…...
Linux简单的操作
ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)
Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败,具体原因是客户端发送了密码认证请求,但Redis服务器未设置密码 1.为Redis设置密码(匹配客户端配置) 步骤: 1).修…...