HBase安装配置:一键自动安装配置

news2024/11/18 9:32:26

使用shell脚本一键下载、安装、配置HBase(单机版)

1. 把下面的脚本复制保存为/tmp/install_hbase.sh文件

#!/bin/bash

# 安装之前确保安装目录有写入权限,若没有,自行增加
# 安装版本
zk_version="2.4.8"
# 安装目录
zk_installDir="/opt/module"

install_hadoop() {
  local version=$1
  local installDir=$2

  # 下载地址
  local downloadUrl="https://archive.apache.org/dist/hbase/$version/hbase-$version-bin.tar.gz"
  # 检查安装目录是否存在,不存在则创建
  if [ ! -d "${installDir}" ]; then
    echo "创建安装目录..."
    sudo mkdir -p "${installDir}"
    if [ $? -ne 0 ]; then
      echo "${installDir}目录创建失败,即将退出"
      exit 1
    fi
  fi

  # 使用test命令检查目录写入权限
  if ! test -w "${installDir}"; then
      sudo chmod a+w "${installDir}"
      if [ $? -ne 0 ]; then
        echo "${installDir}目录增加写入权限失败,请确保用户有root权限,即将退出"
        exit 1
      fi
  fi

  if test -f /tmp/hbase-"$version"-bin.tar.gz; then
    echo "/tmp/hbase-$version-bin.tar.gz文件已存在"
  else
    # 下载hbase
    echo "开始下载hbase..."
    wget "$downloadUrl" -P /tmp
  fi

  if test -d "${installDir}"/hbase-"$version"; then
    sudo rm -rf "${installDir}"/hbase-"$version"
  fi
  echo "开始解压hbase..."
  tar -zxvf /tmp/hbase-"$version"-bin.tar.gz -C "${installDir}"

  # 配置HBase是否管理ZooKeeper
  echo 'export HBASE_MANAGES_ZK=false' >> /opt/module/hbase-2.4.8/conf/hbase-env.sh

  if test -n "$(grep '#HBASE_HOME' ~/.bashrc)"; then
    echo "HBASE_HOME已存在"
  else
    # 设置HBase用户环境变量
    echo >> ~/.bashrc
    echo '#HBASE_HOME' >> ~/.bashrc
    echo "export HBASE_HOME=${installDir}/hbase-${version}" >> ~/.bashrc
    echo 'export PATH=$PATH:$HBASE_HOME/bin' >> ~/.bashrc
  fi

  # 配置hbase
  hbasesite="\
  <configuration>\n\
      <!--指定HBase集群的分布式模式-->\n\
      <property>\n\
          <name>hbase.cluster.distributed</name>\n\
          <value>false</value>\n\
      </property>\n\
      <!--指定HBase的临时目录路径,临时目录用于存放HBase运行时产生的临时文件,如日志、临时数据等-->\n\
      <property>\n\
          <name>hbase.tmp.dir</name>\n\
          <value>${installDir}/hbase-${version}/tmp</value>\n\
      </property>\n\
      <!--用于控制HBase是否强制执行对流式能力的安全检查-->\n\
      <property>\n\
          <name>hbase.unsafe.stream.capability.enforce</name>\n\
          <value>false</value>\n\
      </property>\n\
      <!--指定HBase数据的存储位置-->\n\
      <property>\n\
          <name>hbase.rootdir</name>\n\
          <value>hdfs://$(hostname):8020/hbase</value>\n\
      </property>\n\
  </configuration>\
  "
  sed -i '/<configuration>/,/<\/configuration>/c '"$hbasesite"'' "$installDir"/hbase-"$version"/conf/hbase-site.xml
  echo "hbase的配置文件:hbase-site.xml配置完成"

  echo "$(hostname)" > "$installDir"/hbase-"$version"/conf/regionservers

  rm -f /tmp/hbase-"$version"-bin.tar.gz
  echo "hbase下载、安装、配置完成"
}

install_hadoop "$zk_version" "$zk_installDir"

2. 增加执行权限

chmod a+x /tmp/install_hbase.sh

3. 执行/tmp/install_hbase.sh

/tmp/install_hbase.sh

执行之后等待下载、安装、配置完成,如下图:
在这里插入图片描述

4. 加载环境变量

source ~/.bashrc

5.启动/停止HBase

启动HBase

/opt/module/hbase-2.4.8/bin/start-hbase.sh

查看是否启动成功

jps

启动成功如下图:
在这里插入图片描述

浏览器访问HBaseUI界面:http://192.168.198.101:16010
如下图:
在这里插入图片描述

停止HBase

/opt/module/hbase-2.4.8/bin/stop-hbase.sh

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

5G承载网和大客户承载的演进

文章目录 移动4/5G承载网联通和电信4/5G承载网M-OTN&#xff08;Metro-optimized OTN&#xff09;&#xff0c;城域型光传送网PeOTN&#xff08;packet enhanced optical transport network&#xff09;&#xff0c;分组增强型OTN板卡增强型PeOTN集中交叉型PeOTN VC-OTN&#x…

如何从 Android 手机恢复已删除的视频

您是否曾经丢失过手机中的任何数据&#xff1f;如今&#xff0c;由于 Android 上的应用程序崩溃、根进程停止、Android 更新失败等等&#xff0c;数据丢失很普遍。错误删除是丢失视频、录音和音乐副本的另一种可能的方式。 丢失包含有关新完成的项目的重要信息的视频或婚礼、周…

Day47力扣打卡

打卡记录 多边形三角剖分的最低得分&#xff08;区间DP&#xff09; 链接 class Solution:def minScoreTriangulation(self, values: List[int]) -> int:n len(values)f [[0] * n for _ in range(n)]for i in range(n - 3, -1, -1):for j in range(i 2, n):f[i][j] mi…

Linux 系统是如何收发网络包的?

一、Linux 网络协议栈 如下是TCP/IP四层网络模型&#xff0c;实际上Linux 网络协议栈与它相似 下图是Linux 网络协议栈 二、Linux 接收网络包的流程 1.网卡是计算机里的一个硬件&#xff0c;专门负责接收和发送网络包&#xff0c;当网卡接收到一个网络包后&#xff0c;会通过…

如何快速了解一家公司?

在炒股过程中&#xff0c;我们想要了解一家公司是否具有投资价值&#xff0c;需要查看和阅读很多公司的相关资料。股民们自行去查询往往会花费很多的时间精力&#xff0c;所以专业的炒股软件一般都会给股民提供这些现成的资料。 在金斗云智投APP内&#xff0c;进入到个股详情页…

SCA技术进阶系列(四):DSDX SBOM供应链安全应用实践

一、SBOM的发展趋势 数字时代&#xff0c;软件已经成为维持生产生活正常运行的必备要素之一。随着容器、中间件、微服务、 DevOps等技术理念的演进&#xff0c;软件行业快速发展&#xff0c;但同时带来软件设计开发复杂度不断提升&#xff0c;软件供应链愈发复杂&#xff0c;软…

28.线段树与树状数组基础

一、线段树 1.区间问题 线段树是一种在算法竞赛中常用来维护区间的数据结构。它思想非常简单&#xff0c;就是借助二叉树的结构进行分治&#xff0c;但它的功能却非常强大&#xff0c;因此在很多类型的题目中都有它的变种&#xff0c;很多题目都需要以线段树为基础进行发展。…

Windows server 2016 FTP服务器的搭建

FTP&#xff08;File Transfer Protocol&#xff09;是一个用来在两台计算机之间传输文件的通信协议。这两台计算机中&#xff0c;一台是FTP服务器&#xff0c;另一台是FTP 客户端。 1.安装FTP服务与建立FTP站点 1.1 打开服务器管理器——单击仪表盘的添加角色和功能 1.2 持续…

Gavin Wood:财库保守主义偏离了初心,应探索 Fellowship 等更有效的资金部署机制

波卡创始人 Gavin Wood 博士最近接受了 The Kusamarian 的采访&#xff0c;分享了他的过往经历、对治理的看法&#xff0c;还聊到了 AI、以太坊、女巫攻击、财库等话题。本文整理自 PolkaWorld 对专访编译的部分内容&#xff0c;主要包含了 Gavin 对治理、财库提案、生态资金分…

听GPT 讲Rust源代码--src/tools(4)

题图由AI生成 File: rust/src/tools/rust-analyzer/crates/hir-ty/src/interner.rs 在Rust源代码中&#xff0c;rust/src/tools/rust-analyzer/crates/hir-ty/src/interner.rs这个文件是rust-analyzer工具的一部分&#xff0c;它定义了用于将类型系统中的实体进行唯一标识和共享…

15.oracle的 listagg() WITHIN GROUP () 行转列函数使用

1.使用条件查询 查询部门为20的员工列表 -- 查询部门为20的员工列表 SELECT t.DEPTNO,t.ENAME FROM SCOTT.EMP t where t.DEPTNO 20 ; 效果&#xff1a; 2.使用 listagg() WITHIN GROUP () 将多行合并成一行(比较常用) SELECT T .DEPTNO, listagg (T .ENAME, ,) WIT…

uniapp小程序分包页面引入wxcomponents(vue.config.js、copy-webpack-plugin)

实例&#xff1a;小程序添加一个源生小程序插件&#xff0c;按照uniapp官方的说明&#xff0c;要放在wxcomponents。后来发现小程序超2m上传不了。 正常的编译情况 会被编译到主包下 思路&#xff1a;把wxcomponents给编译到分包sub_package下 用uniapp的vue.config.js自定义…

【报名】2023产业区块链生态日暨 FISCO BCOS 开源六周年生态大会

作为2023深圳国际金融科技节系列活动之一&#xff0c;由深圳市地方金融监督管理局指导&#xff0c;微众银行、金链盟主办的“2023产业区块链生态日暨FISCO BCOS开源六周年生态大会”将于12月15日下午14:00在深圳举办。 今年的盛会将进一步升级&#xff0c;以“FISCO BCOS和TA的…

C/C++,图算法——求强联通的Tarjan算法之源程序

1 文本格式 #include <bits/stdc.h> using namespace std; const int maxn 1e4 5; const int maxk 5005; int n, k; int id[maxn][5]; char s[maxn][5][5], ans[maxk]; bool vis[maxn]; struct Edge { int v, nxt; } e[maxn * 100]; int head[maxn], tot 1; vo…

Nacos多数据源插件

Nacos从2.2.0版本开始,可通过SPI机制注入多数据源实现插件,并在引入对应数据源实现后,便可在Nacos启动时通过读取application.properties配置文件中spring.datasource.platform配置项选择加载对应多数据源插件.本文档详细介绍一个多数据源插件如何实现以及如何使其生效。 注意:…

动态规划 | 139. 单词拆分、多重背包

139、单词拆分 dp[i]&#xff1a;长度为 i 的字符串可以有字典中出现的单词拼接出来。 if s[j: i] in wordDict and dp[j] true 则 dp[i] true dp[0] true, 因为后续均由dp[0]推出。 从前向后遍历 public static boolean wordBreak(String s, List<String> wordDi…

简单取证-MISC-bugku-解题步骤

——CTF解题专栏—— 题目信息&#xff1a; 题目&#xff1a;简单取证 作者&#xff1a;Tokeii 提示&#xff1a;flag格式为flag{用户名_对应的密码} 例如flag{administrator_bugku} 解题附件&#xff1a; 解题思路&#xff1a; 取证自己属实不太擅长&#xff0c;所以找个题…

JMX的使用

1. 定义和意义 JMX是Java Management Extention的缩写&#xff0c;出发点是让外部通过属性/方法来读取或设置程序状态。对于提供对外服务的程序来说&#xff0c;天生就有这样的能力&#xff0c;Web程序通过HTTP接口对外暴露&#xff0c;RPC应用通过RPC接口暴露。不过带来的问…

如何快速选出一支好股票?

俗话说得好&#xff1a;股票选得好&#xff0c;收益少不了&#xff01;不用多说&#xff0c;相信大伙儿都知道选一支好股票究竟有多重要。 但是选股可不像咱们去菜市场买菜一样&#xff0c;看着顺眼就成。选股&#xff0c;其实是一个专业性特别强的技术活儿。 目前最常用的选股…

微信开发者工具真机调试连接状态在正常和未连接之间反复横跳

开启局域网模式能解决这个问题&#xff0c;目前只找到这一个方法