大数据技术(六)—— Hbase集群安装

目录

 

一、Hbase安装

1、准备工作

1.1、安装rsync

1.2、编辑脚本 

1.3、测试

2、安装Hadoop

3、安装zookeeper

3.1、下载最新稳定版

3.2、安装配置ZK

4、安装Hbase

4.1、解压文件

4.2、hbase-env.sh

4.3、backup-masters

4.4、配置hbase-site.xml

4.5、regionservers

4.6、创建软连接 

5、启动Hbase

5.1、分发数据

5.2、启动hdfs

5.3、启动zk,每个节点都启动

5.4、启动hbase

5.5、HBase页面和HDFS

6、编写脚本 

二、HBase Shell操作


 

一、Hbase安装

主机名

ip

master

zookeeper

RegionServer

hadoop1

192.168.139.176

hadoop2

192.168.139.214

backup

hadoop3

192.168.139.215

 

1、准备工作

1.1、安装rsync

sudo yum install rsync -y

1.2、编辑脚本 

vim xsync
#!/bin/bash#1. 判断参数个数
if [ $# -lt 1 ]
thenecho Not Enough Arguement!exit;
fi#2. 遍历集群所有机器
for host in hadoop1 hadoop2 hadoop3
doecho ====================  $host  ====================#3. 遍历所有目录,挨个发送for file in $@do#4. 判断文件是否存在if [ -e $file ]then#5. 获取父目录pdir=$(cd -P $(dirname $file); pwd)#6. 获取当前文件的名称fname=$(basename $file)ssh $host "mkdir -p $pdir"rsync -av $pdir/$fname $host:$pdirelseecho $file does not exists!fidone
done

1.3、测试

#创建文件
touch a.txt#分发文件,如果成功了再其他服务器上可以看到该文件
xsync a.txt 

2、安装Hadoop

大数据技术-Hadoop(一)Hadoop集群的安装与配置_安装hadoop集群-CSDN博客

3、安装zookeeper

3.1、下载最新稳定版

https://dlcdn.apache.org/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz

3.2、安装配置ZK

#解压文件
tar -zxf apache-zookeeper-3.8.4-bin.tar.gz #移动mv apache-zookeeper-3.8.4-bin /usr/local/zookeeper#进入安装目录,创建文件cd /usr/local/zookeeper#创建目录mkdir data logs #修改配置文件cd /usr/local/zookeeper/confmv zoo_sample.cfg zoo.cfg
 #添加以下内容,这里假设你一定设置好了hostnamedataDir =/usr/local/zookeeper/datadataLogDir=/usr/local/zookeeper/logsserver.1=hadoop1:2888:3888server.2=hadoop2:2888:3888server.3=hadoop3:2888:3888#修改myid这里写1
#分发文件,然后去其他服务器上,修改相应的/usr/local/zookeeper/data/myid 文件为2 和3
xsync /usr/local/zookeeper

4、安装Hbase

4.1、解压文件

#解压文件
tar -zxf hbase-2.6.1-bin.tar.gz -C /usr/local/

4.2、hbase-env.sh

#指定java环境变量
export JAVA_HOME=/usr/local/java#指定不使用自带的zk
export HBASE_MANAGES_ZK=false

4.3、backup-masters

vim backup-masters#添加如下内容,指定备用master
hadoop2

4.4、配置hbase-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration><!--指定数据路径--><property><name>hbase.rootdir</name><value>hdfs://hadoop1:8020/hbase</value></property><!--是否分布--><property><name>hbase.cluster.distributed</name><value>true</value></property><!--zk的地址--><property><name>hbase.zookeeper.quorum</name><value>hadoop1:2181,hadoop2:2181,hadoop3:2181</value></property><!--zk数据路径--><property><name>hbase.zookeeper.property.dataDir</name><value>/usr/local/zookeeper/data</value></property><!--指定端口--><property><name>hbase.master.port</name><value>16000</value></property><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property><!--解决shell报错--><property><name>hbase.wal.provider</name><value>filesystem</value></property></configuration>

4.5、regionservers

hadoop1
hadoop2
hadoop3

4.6、创建软连接 

ln -s /usr/local/hadoop-3.4.0/etc/hadoop/core-site.xml /usr/local/hbase-2.6.1/conf/core-site.xml
ln -s /usr/local/hadoop-3.4.0/etc/hadoop/hdfs-site.xml /usr/local/hbase-2.6.1/conf/hdfs-site.xml

5、启动Hbase

5.1、分发数据

#分发数据
xsync /usr/local/hbase-2.6.1/

5.2、启动hdfs

#启动
/usr/local/hadoop-3.4.0/sbin/start-dfs.sh #停止
/usr/local/hadoop-3.4.0/sbin/stop-dfs.sh 

5.3、启动zk,每个节点都启动

#启动
/usr/local/zookeeper/bin/zkServer.sh start #停止
/usr/local/zookeeper/bin/zkServer.sh stop

5.4、启动hbase

#方式1bin/hbase-daemon.sh start master
bin/hbase-daemon.sh start regionserver#方式2#启动
/usr/local/hbase-2.6.1/bin/start-hbase.sh#停止
/usr/local/hbase-2.6.1/bin/stop-hbase.sh

5.5、HBase页面和HDFS

192.168.139.176:16010

 

53c1844372dc7416a1722710f230b425.png

 

e3f88baed0bc329b6744bfc249433c70.png

6、编写脚本 

#!/bin/bashif [ $# -lt 1 ]
thenecho "No Args Input..."exit ;
ficase $1 in
"start")echo " =================== 启动 hadoop集群 ==================="echo " --------------- 启动 hdfs ---------------"ssh hadoop1 "/usr/local/hadoop-3.4.0/sbin/start-dfs.sh"echo " --------------- 启动 zk集群 ---------------"ssh hadoop1 "/usr/local/zookeeper/bin/zkServer.sh start"ssh hadoop2 "/usr/local/zookeeper/bin/zkServer.sh start"ssh hadoop3 "/usr/local/zookeeper/bin/zkServer.sh start"echo " --------------- 启动 hbase ---------------"ssh hadoop1 "/usr/local/hbase-2.6.1/bin/start-hbase.sh"
;;
"stop")echo " =================== 关闭 hadoop集群 ==================="echo " --------------- 关闭 hbase ---------------"ssh hadoop1 "/usr/local/hbase-2.6.1/bin/hbase-daemon.sh stop master"ssh hadoop1 "/usr/local/hbase-2.6.1/bin/hbase-daemon.sh stop regionserver"ssh hadoop1 "/usr/local/hbase-2.6.1/bin/stop-hbase.sh"ssh hadoop2 "/usr/local/hbase-2.6.1/bin/hbase-daemon.sh stop master"ssh hadoop2 "/usr/local/hbase-2.6.1/bin/hbase-daemon.sh stop regionserver"ssh hadoop2 "/usr/local/hbase-2.6.1/bin/stop-hbase.sh"ssh hadoop3 "/usr/local/hbase-2.6.1/bin/hbase-daemon.sh stop regionserver"echo " --------------- 关闭 zk ---------------"ssh hadoop1 "/usr/local/zookeeper/bin/zkServer.sh stop"ssh hadoop2 "/usr/local/zookeeper/bin/zkServer.sh stop"ssh hadoop3 "/usr/local/zookeeper/bin/zkServer.sh stop"echo " --------------- 关闭 hdfs ---------------"ssh hadoop1 "/usr/local/hadoop-3.4.0/sbin/stop-dfs.sh"
;;
*)echo "Input Args Error..."
;;
esacchmod +x hbase.sh

二、HBase Shell操作

#进入shell
/usr/local/hbase-2.6.1/bin/hbase shell#查看
list#创建表
create 'user','info'#插入数据
put 'user','1001','info:sex','male'
put 'user','1001','info:age','18'
put 'user','1002','info:name','Janna'
put 'user','1003','info:sex','female'
put 'user','1003','info:age','20'#查看表scan 'user'#表结构
describe 'user'#修改
put 'user','1001','info:name','tom'
put 'user','1001','info:age','30'#查看
get 'user','1001'
get 'user','1001','info:name'#统计条数
count 'user'#删除一行数据
deleteall 'user','1001'#删除列
delete 'user','1002','info:sex'#清空数据
truncate 'user'#删除表,先禁用再删除
disable 'user'
drop 'user'#获取配置信息
@shell.hbase.configuration.get("hbase.rpc.timeout")#设置配置信息
@shell.hbase.configuration.setInt("hbase.rpc.timeout", 61010)#预分隔表
create 't1','f',SPLITS => ['10','20','30']#创建namespace
create_namespace 'my_ns'#命名空间下创建表
create 'my_ns:my_table', 'user'#修改ns
alter_namespace 'my_ns', {METHOD => 'set', 'PROPERTY_NAME' => 'PROPERTY_VALUE'}#删除ns里的表disable 'my_ns:my_table'drop 'my_ns:my_table'#删除ns
drop_namespace 'my_ns'#退出
exit

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/498626.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

K8s集群平滑升级(Smooth Upgrade of K8S Cluster)

简介&#xff1a; Kubernetes ‌ &#xff08;简称K8s&#xff09;是一个开源的容器编排和管理平台&#xff0c;由Google开发并维护。它最初是为了解决谷歌内部大规模容器管理的问题而设计的&#xff0c;后来在2014年开源&#xff0c;成为云原生技术的核心组成部分。‌‌1 K8…

结合长短期记忆网络(LSTM)和无迹卡尔曼滤波器(UKF)的技术在机器人导航和状态估计中的应用前景

结合长短期记忆网络(LSTM)和无迹卡尔曼滤波器(UKF)的技术在机器人导航和状态估计中具有广泛的应用前景。如有滤波、导航方面的代码定制需求,可通过文末卡片联系作者获得帮助 文章目录 结合LSTM和UKF的背景结合LSTM和UKF的优势应用实例研究现状MATLAB代码示例结论结合LSTM和…

Spring源码下载与测试

引言 下载了Spring源码想阅读阅读&#xff0c;发现用的是Gradle&#xff0c;原来实习的时候公司用的也是Gradle&#xff0c;但不怎么会用&#xff0c;感觉相比于Maven&#xff0c;Gradle更适合非常大型的项目&#xff0c;因为他的jar包下载的是真快 下载 由于Spring6开始就强…

【HarmonyOS之旅】ArkTS语法(三) -> 渲染控制

目录 1 -> 条件渲染 2 -> 循环渲染 3 -> 数据懒加载 3.1 -> IDataSource类型说明 3.2 -> DataChangeListener类型说明 ArkTS也提供了渲染控制的能力。条件渲染可根据应用的不同状态&#xff0c;渲染对应状态下的UI内容。循环渲染可从数据源中迭代获取数据&…

再见2024,你好2025

再见2024&#xff0c;你好2025 1月2月3月4月5~10月11~12月一些收获读书跑步工作 为了让这篇博客不那么平淡&#xff0c;一句话可以总结为&#xff1a;平平无奇的琐碎&#xff0c;没有亮点成果。 也可以数字化概述&#xff1a;涨了1万粉&#xff0c;赚了10万&#xff0c;跑步300…

阴阳师の新手如何速刷5个SP/SSR?!(急速育成)

目标&#xff1a;攒5个SP/SSR式神&#xff0c;参与急速育成&#xff0c;省四个黑蛋&#xff08;想要快速升级技能而且经常上场的式神在攒够5个式神前先不升级&#xff09;【理论上组成&#xff1a;10蓝40蓝预约召唤福利20修行or抽卡】 关键点&#xff1a;蓝票&#xff0c;新手…

Kerberos用户认证-数据安全-简单了解-230403

hadoop安全模式官方文档&#xff1a;https://hadoop.apache.org/docs/r2.7.2/hadoop-project-dist/hadoop-common/SecureMode.html kerberos是什么 kerberos是计算机网络认证协议&#xff0c;用来在非安全网络中&#xff0c;对个人通信以安全的手段进行身份认证。 概念&#…

第 29 章 - ES 源码篇 - 网络 IO 模型及其实现概述

前言 本文介绍了 ES 使用的网络模型&#xff0c;并介绍 transport&#xff0c;http 接收、响应请求的代码入口。 网络 IO 模型 Node 在初始化的时候&#xff0c;会创建网络模块。网络模块会加载 Netty4Plugin plugin。 而后由 Netty4Plugin 创建对应的 transports&#xff0…

SQL 基础教程 - SQL SELECT 语句

SQL SELECT DISTINCT 语句 SELECT DISTINCT 语句用于返回唯一不同的值。 在表中&#xff0c;一个列可能会包含多个重复值&#xff0c;有时您也许希望仅仅列出不同&#xff08;distinct&#xff09;的值。 DISTINCT 关键词用于返回唯一不同的值。 SQL SELECT DISTINCT 语法 …

计算机网络基础知识(7)中科大郑铨老师笔记

协议层次及服务模型 计算机网络的分层设计方法&#xff0c;将复杂的网络功能分解为多个层次&#xff0c;每一层实现特定的功能。 互联网中的TCP/IP协议族&#xff0c;包括物理层、链 路层、网络层、传输层和应用层的功能。然后&#xff0c;数据传输的 过程&#xff0c;从应用层…

Microsoft word@【标题样式】应用不生效(主要表现为在导航窗格不显示)

背景 随笔。Microsoft word 2013基础使用&#xff0c;仅做参考和积累。 问题 Microsoft word 2013&#xff0c;对段落标题文字应用【标题样式】不生效&#xff08;主要表现为在导航窗格不显示&#xff09;。 图1 图2 观察图1和图2&#xff0c;发现图1的文字在应用【标题一】样…

TP 钱包插件版本的使用

目前 TokenPocket 的几个平台中&#xff0c;以 ios 和 安卓版本最为常见&#xff0c;其实很少有人知道&#xff0c;浏览器上有一个插件版本的 Tp, 用电脑多的话&#xff0c;这也是一个挺好的选择。 最新版本现在支持Chrome、Brave 浏览器、Edge&#xff08;Firefox及Opera正在…

微信流量主挑战:三天25用户!功能未完善?(新纪元4)

&#x1f389;【小程序上线第三天&#xff01;突破25用户大关&#xff01;】&#x1f389; 嘿&#xff0c;大家好&#xff01;今天是我们小程序上线的第三天&#xff0c;我们的用户量已经突破了25个&#xff01;昨天还是16个&#xff0c;今天一觉醒来竟然有25个&#xff01;这涨…

【AndroidAPP】权限被拒绝:[android.permission.READ_EXTERNAL_STORAGE],USB设备访问权限系统报错

一、问题原因 1.安卓安全性变更 Android 12 的安全性变更&#xff0c;Google 引入了更严格的 PendingIntent 安全管理&#xff0c;强制要求开发者明确指定 PendingIntent 的可变性&#xff08;Mutable&#xff09;或不可变性&#xff08;Immutable&#xff09;。 但是&#xf…

打印进度条

文章目录 1.Python语言实现(1)黑白色(2)彩色&#xff1a;蓝色 2.C语言实现(1)黑白颜色(2)彩色版&#xff1a;红绿色 1.Python语言实现 (1)黑白色 import sys import timedef progress_bar(percentage, width50):"""打印进度条:param percentage: 当前进度百分比…

ubuntu 使用samba与windows共享文件[注意权限配置]

在Ubuntu上使用Samba服务与Windows系统共享文件&#xff0c;需要正确配置Samba服务以及相应的权限。以下是详细的步骤&#xff1a; 安装Samba 首先&#xff0c;确保你的Ubuntu系统上安装了Samba服务。 sudo apt update sudo apt install samba配置Samba 安装完成后&#xff0c…

数据结构(哈希表)

背景 在对数据的日常处理中&#xff0c;查找是一项基本操作。通常&#xff0c;查找算法都是基于对比的&#xff0c;比如在一条链表中有n个节点&#xff0c;要找到其中的某个节点&#xff0c;最基本的思路就是从头到尾依次遍历每个节点&#xff0c;依次对比每个节点是否是想要的…

【每日学点鸿蒙知识】模拟器开启网络、长时任务、兼容性测试支持、丢帧定位、SO中访问rawfile等

1、模拟器如何开启网络&#xff1f; 模拟器使用的是电脑本身的网络&#xff0c;不通过代理即可访问网络。 2、创建子window后&#xff0c;锁屏很短时间内&#xff0c;应用会被杀死&#xff1f; 没开长时任务&#xff0c;锁屏和退后台保活要开长时任务。 应用退至后台后&…

如何解决Eigen和CUDA版本不匹配引起的错误math_functions.hpp: No such file or directory

Apollo9针对RTX40的docker环境里的Eigen库版本是3.3.4&#xff0c;CUDA是11.8: 编译我们自己封装模型的某些component代码时没问题&#xff0c;编译一个封装occ模型的component代码时始终报错: In file included from /usr/include/eigen3/Eigen/Geometry:11:0, …

Mac连接云服务器工具推荐

文章目录 前言步骤1. 下载2. 安装3. 常用插件安装4. 连接ssh测试5. 连接sftp测试注意&#xff1a;ssh和sftp的区别注意&#xff1a;不同文件传输的区别解决SSL自动退出 前言 Royal TSX是什么&#xff1a; Royal TSX 是一款跨平台的远程桌面和连接管理工具&#xff0c;专为 mac…