在CentOS上部署和管理HBase涉及多个步骤,包括安装依赖项、配置环境、启动和停止服务,以及进行资源管理。以下是详细的步骤和指导:
安装JDK:
sudo yum install java-1.8.0-openjdk-devel
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64
export PATH=$JAVA_HOME/bin:$PATH
安装Zookeeper:
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9-bin.tar.gz
tar -zxvf zookeeper-3.5.9-bin.tar.gz
cd zookeeper-3.5.9
mkdir data
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
# 添加或修改以下配置
dataDir=/var/lib/zookeeper
clientPort=2181
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888
./bin/zkServer.sh start
安装HBase:
wget http://mirror.bit.edu.cn/apache/hbase/stable/hbase-1.4.6-bin.tar.gz
tar -zxvf hbase-1.4.6-bin.tar.gz
cd hbase-1.4.6
vi conf/hbase-env.sh
export HBASE_MANAGES_ZK=false
export HBASE_HOME=/usr/local/hbase-1.4.6
编辑 conf/hbase-site.xml
文件:<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://node1:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master.port</name>
<value>16000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>node1,node2,node3</value>
</property>
</configuration>
编辑 conf/regionservers
文件,添加所有region server的主机名:
node1
node2
node3
启动HBase:
./bin/start-hbase.sh
停止HBase:
./bin/stop-hbase.sh
监控HBase:
http://master-node:16010
。配置资源:
hbase-site.xml
文件来配置HBase的资源使用,例如调整内存设置:<property>
<name>hbase.regionserver.hlog.dir</name>
<value>/data/hbase/data/hlog</value>
</property>
<property>
<name>hbase.hstore.blockingStoreFiles</name>
<value>100</value>
</property>
<property>
<name>hbase.hstore.compactionThreshold</name>
<value>10</value>
</property>
高可用性配置:
硬件和操作系统配置:
vm.swappiness
设置为0)。确保使用64位操作系统。调整文件系统缓存和预读设置以提高I/O性能。HBase配置参数调整:
hbase.regionserver.memory
大小,以允许HBase使用更多内存。调整 hbase.regionserver.handler.count
以增加处理RPC请求的线程数。hbase.client.autoFlush
设置为 false
),并增加 hbase.client.write.buffer
大小。启用批量写入和批量读取,减少网络I/O操作。HBase表设计优化:
hbase.hcolumn.max.versions
)以节约存储空间。使用TTL(Time To Live)设置数据的存储生命周期。监控和日志:
通过上述步骤和策略,可以在CentOS上成功部署、配置和管理HBase,并优化其资源使用以提高性能和稳定性。