使用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