在CentOS上搭建HBase集群涉及多个步骤,包括安装Java、配置Hadoop、下载和配置HBase等。以下是一个基本的指南:
HBase需要Java环境,推荐使用OpenJDK或Oracle JDK。
sudo yum install java-1.8.0-openjdk-devel
验证安装:
java -version
HBase依赖于Hadoop,因此需要先配置Hadoop集群。
wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz
tar -xzvf hadoop-3.3.1.tar.gz -C /opt
编辑/opt/hadoop-3.3.1/etc/hadoop/core-site.xml:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
编辑/opt/hadoop-3.3.1/etc/hadoop/hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
编辑/opt/hadoop-3.3.1/etc/hadoop/mapred-site.xml:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
编辑/opt/hadoop-3.3.1/etc/hadoop/yarn-site.xml:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
在master节点上执行:
/opt/hadoop-3.3.1/bin/hdfs namenode -format
在master节点上启动HDFS和YARN:
start-dfs.sh
start-yarn.sh
wget https://archive.apache.org/dist/hbase/2.4.9/hbase-2.4.9-bin.tar.gz
tar -xzvf hbase-2.4.9-bin.tar.gz -C /opt
编辑/opt/hbase-2.4.9/conf/hbase-site.xml:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,zookeeper1,zookeeper2</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/var/lib/zookeeper</value>
</property>
</configuration>
编辑/opt/hbase-2.4.9/conf/hbase-env.sh:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export HBASE_MANAGES_ZK=true
在master节点上启动HBase:
/opt/hbase-2.4.9/bin/start-hbase.sh
访问HBase Web UI:
http://master:16010/master-status
你应该能看到HBase Master和RegionServer的状态。
确保防火墙允许HBase所需的端口:
sudo firewall-cmd --permanent --zone=public --add-port=16010/tcp
sudo firewall-cmd --permanent --zone=public --add-port=16020/tcp
sudo firewall-cmd --permanent --zone=public --add-port=16030/tcp
sudo firewall-cmd --permanent --zone=public --add-port=2181/tcp
sudo firewall-cmd --reload
确保Zookeeper集群已经启动并运行。你可以使用以下命令启动Zookeeper:
/opt/hbase-2.4.9/bin/zkServer.sh start
验证Zookeeper状态:
/opt/hbase-2.4.9/bin/zkServer.sh status
通过以上步骤,你应该能够在CentOS上成功搭建一个HBase集群。根据实际需求,可能还需要进行更多的配置和优化。