HBase 复习 ---- chapter07
HBase 复习 ---- chapter07
-
部署 HBase(运维)
1:部署 HBase 实际是部署了三个技术(hadoop + zookeeper + hbase)
hadoop = hdfs + mapreduce + common
hdfs = namenode + datanode + secondaryNamenode
yarn = ResourceManager(JobTracker)+ NodeManager(TaskTracker)
zookeeper = zookeeper集合 + zookeeper客户端
zookeeper集合 = zookeeper Leader + zookeeper Flowers = QuorumPeerMain
HBase = HMaster + HRegionServer
namenode + datanode + secondaryNamenode
ResourceManager + NodeManager
QuorumPeerMain
HMaster+HRegionServer -
这个八个技术如何进行部署呢?
niit01-master: namenode+datanode+nodemanager
niit02-master: SecondaryNamenode+datanode+nodemanager
niit03-master: ResourceManager+datanode+nodemanager -
上面那些组件要求内存+CPU?
namenode secondaryNamenode QuorumPeerMain HMaster HRegionServer nodemanager -
上面那些组件要求磁盘?
datanode HRegionServer nodemanager -
SLA:服务级别协议是指提供服务的企业与客户之间就服务的品质、水准、性能等方面所达成的双方共同认可的协议或契约。
-
集群类型:从小到大(我们书上讲的集群类型是比较原始的,真实的和这个会有差距)
-
原型集群:(cpu拥有 4–6 核,24–32 GB RAM 和 4 T SATA 磁盘)
原型集群是没有严格的 SLA 的集群,可以将其关闭。
它通常少于 10 个节点。
可以在原型集群中的单个节点上并置多个服务。 -
小型生产集群(10-20 台服务器)(cpu拥有 6–8 核,32–64 GB RAM 和 8 T SATA 磁盘 双电源 RAID:提高磁盘利用率+容错能力 ) 少于 10 个从节点很难进行操作。
如果要部署生产集群,请考虑使用相对更好的主节点硬件。 双电源和 RAID 可能已成为日常工作。
流量/工作量不多的小型生产集群可以并置服务。
对于小型集群,单个 HBase Master 可以。
单个 ZooKeeper 可以用于小型集群,并且可以与 HBase Master 并置。如果运行 NameNode和 JobTracker 的主机 足够强大,则也可以在其上放置 ZooKeeper 和 HBase Master。 这样可以省去您购买额外机器的麻烦。
单个 HBase Master 和 ZooKeeper 限制了可维护性 -
中型生产集群(最多约 50 台服务器 20-50)(cpu拥有 8–10 核,32–64 GB RAM 和 8 T SATA 磁盘 双电源 RAID:提高磁盘利用率+容错能力 )
最多可能有 50 个节点属于此类别。
出于性能原因,我们建议您不要并置 HBase 和 MapReduce。如果并置,请在单独的硬件上部署NameNode 和 JobTracker。
应当部署三个 ZooKeeper 和三个 HBase 主节点,尤其是在生产系统中。
不要为 NameNode 和 Secondary NameNode 的硬件而便宜。 -
大型生产集群(>=50 台服务器)(cpu拥有 10–12 核,64–128 GB RAM 和 16 T SATA 磁盘 双电源 RAID:提高磁盘利用率+容错能力 )
中型集群的所有情况都适用,只是您可能需要五个可以与 HBase Master 搭配使用的ZooKeeper 实例。
确保 NameNode 和 Secondary NameNode +HregionServer有足够的内存,具体取决于群集的存储容量。 -
hbase 的配置
环境变量:JAVA_HOME HBASE_CLASSPATH
内存: HBASE_HEAPSIZE HBASE_OPTS
其他设置:HBASE_MANAGES_ZK=false -
设置 SSH 免密登录
A 主机免密登录 B 主机
A 主机操作:
ssh-keygen -t rsa:生成公钥和密钥
ssh-copy-id B主机:A 主机将公钥发送给 B 主机
A 主机连接 B 主机,第一次需要密码验证,验证通过,后期 A 主机连接 B 主机就不要密码验证了。 -
修改主机名
vi /etc/hosts
- 创建用户(root 用户)
useradd hadoop
passwd Hadoop
- 复制 Hadoop + HBase
- 修改
HBASE_HOME/conf/regionserves - 启动
- 删除节点:
方式一:
kill -9 regionserver process number(不推荐)
方式二:
hbase-daemon.sh stop regionserver(也不推荐,好一点)
方式三:
graceful_stop.sh (推荐)
步骤介绍:
1、首先停止负载均衡
2、将节点名称上的数据移动到其他节点
3、关闭服务
- 在不停止服务器在线业务的情况下,调整配置参数.
cd $HBASE_HOME/bin
./graceful_stop.sh --restart --reload debug Node name
参数介绍:
restart:删除数据后重新启动
reload:移动数据后停止服务
debug:输出有关执行过程的信息
Node Name:指定要停止的节点
- 故障排除:
Hbase fsck
HBase 提供了 HBCK 工具来检查数据一致性。
数据一致性是指:
1、将每个区域正确分配给一个区域服务器,并且该区域的位置信息和状态正确。
2、每个表都是完整的,每个可能的行键都可以对应一个唯一的区域。
3、与查询相关的命令收集的用法。
相关文章:
HBase 复习 ---- chapter07
HBase 复习 ---- chapter07部署 HBase(运维) 1:部署 HBase 实际是部署了三个技术(hadoop zookeeper hbase) hadoop hdfs mapreduce common hdfs namenode datanode secondaryNamenode yarn ResourceManager&a…...
跟我一起写Makefile--个人总结
此篇笔记是根据陈皓大佬《跟我一起写Makefile》学习所得 文章目录换行符clean变量make的自动推导另类风格的Makefile清空目标文件的规则cleanMakefile总述显示规则隐晦规则变量的定义注释引用其它的Makefile环境变量MAKEFILESmake的工作方式书写规则规则举例规则的语法在规则中…...
设计模式之为什么要学好设计模式
目录1 回顾软件设计原则2 设计模式总览3 经典框架都在用设计模式解决问题1 回顾软件设计原则 不用设计模式并非不可以,但是用好设计模式能帮助我们更好地解决实际问题,设计模式最重要的是解耦。设计模式天天都在用,但自己却无感知。我们把设…...
大数据时代的小数据神器 - asqlcell
自从Google发布了经典的MapReduce论文,以及Yahoo开源了Hadoop的实现,大数据这个词就成为了一个行业的热门。在不断提高的机器性能和各种层出不穷的工具框架加持下,数据分析开始从过去的采样抽查变成全量整体,原先被抽样丢弃的隐藏…...
【呕心沥血】整理全栈自动化测试技术(三):如何编写技术方案
前面两篇笔记我介绍了自动化测试前期调研注意事项和前置准备阶段切入点,有同学在后台提问: “做完前期的调研和准备工作,领导要求写一个落地方案并评审,自动化测试的落地方案该怎么写”? 首先这个要求我觉得挺正常&a…...
67. 二进制求和
文章目录题目描述竖式模拟转换为十进制计算题目描述 给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 示例 1: 输入:a “11”, b “1” 输出:“100” 示例 2: 输入:a “1010”, b “1011” …...
1555数列极差(队列 优先队列 )
目录 题目描述 解题思路 代码部分 题目描述 在黑板上写了N个正整数作成的一个数列,进行如下操作:每一次擦去其中的两个数a和b,然后在数列中加入一个数a*b1,如此下去直至黑板上剩下一个数,在所有按这种操作方式最后得…...
代码随想录算法训练营第二十七天 | 93.复原IP地址,78.子集,90.子集II
一、参考资料复原IP地址题目链接/文章讲解:https://programmercarl.com/0093.%E5%A4%8D%E5%8E%9FIP%E5%9C%B0%E5%9D%80.html 视频讲解:https://www.bilibili.com/video/BV1XP4y1U73i/子集题目链接/文章讲解:https://programmercarl.com/0078.…...
jvm类加载器
概念 Bootstarp ClassLoader (引导类加载器) 加载String等核心的类Ext ClassLoader (拓展类加载器)System ClassLoader (系统类加载器) 加载用户自定义的类 关系 BootstrapClassLoader 包含 ExtClassLoaderExtClassLoader 包含 SystemClassLoader彼此是包含关系,不…...
Rust学习入门--【7】Rust 数据类型
类型系统 对于任何一门语言都是重中之重,因为它体现了语言所支持的不同类型的值。 类型系统 也是 IT 初学者最难啃的三座大山之一,而类型系统之所以难以理解,主要是没有合适的现成的参考体系。 我们说类型系统 存在的目的,就是 …...
阅读MySQL必知必会,查缺补漏
MySQL自带数据库 information_schema:是MySQL自带的数据库,主要保持MySQL数据库服务器的系统信息,比如数据库的名称,数据库表的名称,字段名称,存储权限等。 performance_schema:是MySQL系统自…...
MySQL数据库10——多表连接查询
数据如果在多个表里面,需要进行连接查询。 一般在pandas里面merge合并会用到一个索引,按这个索引的规则进行合并叫做有规则的等值连接。若不按规则连接,遍历两两组合的所有可能性,叫做笛卡尔积。 笛卡尔积连接 通常人们都会设置…...
华为OD机试 - 括号检查(Python)| 真题含思路
括号检查 题目 现有一字符串 仅由 (,),{,},[,] 六种括号组成,若字符串满足以下条件之一,则为无效字符串 任意类型的左右括号数量不相等 存在未按正确顺序(先左后右)闭合的括号, 输出括号的最大嵌套深度 若字符串无效则输出 0 0 <= 字符串长度 <= 100000 输入 一个只…...
安全渗透测试中的一款免费开源的超级关键词URL采集工具
安全渗透测试中的一款免费开源的超级关键词URL采集工具。 #################### 免责声明:工具本身并无好坏,希望大家以遵守《网络安全法》相关法律为前提来使用该工具,支持研究学习,切勿用于非法犯罪活动,对于恶意使…...
数据资产管理实践白皮书(6.0版)解读
目录 第一章数据资产管理概述 ( 一 ) 数据资产管理和数据要素的关系...
c/c++开发,无可避免的函数指针使用案例
一、函数指针简介 函数指针是指指向函数而非指向对象的指针。像其他指针一样,函数指针也指向某个特定的类型。函数类型由其返回类型以及形参表确定,而与函数名无关。例如: char* (*pf1)(char * p1,char *p2); 这是一个函数指针,其…...
QT(12)-QThreadPool
1 简介 QThreadPool是Qt框架中的一个类,提供了一组工作线程池。该线程池自动管理一组工作线程,在线程可用时分配任务。使用线程池的主要优点是,它可以减少创建和销毁线程的开销,因为可以重复使用线程。 线程池设计用于场景中&am…...
【Java|golang】1138. 字母板上的路径
我们从一块字母板上的位置 (0, 0) 出发,该坐标对应的字符为 board[0][0]。 在本题里,字母板为board [“abcde”, “fghij”, “klmno”, “pqrst”, “uvwxy”, “z”],如下所示。 我们可以按下面的指令规则行动: 如果方格存…...
Flink 1.14从简单到源码第三讲
文章目录 1.flink多流操作Api1.1split 分流操作1.2.侧输出流1.3.connect 连接操作1.4.union 操作1.5 coGroup 协同分组1.6 join1.7 broadcast 广播2.process3.并行度和Api3.1 任务提交简单流程3.2 task与算子链4. Flink 时间相关(窗口计算)4.1时间语义(窗口计算)4.2 新版api指定…...
淘宝API接口系列,获取购买到的商品订单列表,卖出的商品订单列表,订单详情,订单物流,买家信息,收货地址列表,买家token
custom自定义API操作buyer_order_list获取购买到的商品订单列表buyer_order_detail获取购买到的商品订单详情buyer_order_express获取购买到的商品订单物流buyer_address_list收货地址列表buyer_address_add添加收货地址buyer_info买家信息buyer_token买家tokenseller_order_li…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...
(转)什么是DockerCompose?它有什么作用?
一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...
网络编程(UDP编程)
思维导图 UDP基础编程(单播) 1.流程图 服务器:短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...
技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...
C++实现分布式网络通信框架RPC(2)——rpc发布端
有了上篇文章的项目的基本知识的了解,现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...
sshd代码修改banner
sshd服务连接之后会收到字符串: SSH-2.0-OpenSSH_9.5 容易被hacker识别此服务为sshd服务。 是否可以通过修改此banner达到让人无法识别此服务的目的呢? 不能。因为这是写的SSH的协议中的。 也就是协议规定了banner必须这么写。 SSH- 开头,…...
Qt学习及使用_第1部分_认识Qt---Qt开发基本流程
前言 学以致用,通过QT框架的学习,一边实践,一边探索编程的方方面面. 参考书:<Qt 6 C开发指南>(以下称"本书") 标识说明:概念用粗体倾斜.重点内容用(加粗黑体)---重点内容(红字)---重点内容(加粗红字), 本书原话内容用深蓝色标识,比较重要的内容用加粗倾…...
