在centos系統上搭建hdfs集群,需要經過多個步驟,包括java環境配置、hadoop安裝、環境變量設置、namenode格式化以及集群啟動等。以下步驟提供了一個簡明指南:
第一步:Java環境配置
首先,確認系統已安裝Java 8。可以使用以下命令進行安裝:
yum install -y java-1.8.0-openjdk-devel
然后,配置Java環境變量:
echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk" >> /etc/profile source /etc/profile java -version # 驗證Java版本
第二步:hadoop安裝
下載Hadoop安裝包并解壓到指定目錄(例如/usr/local/hadoop):
wget https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz tar -zxvf hadoop-3.2.1.tar.gz -C /usr/local/ ln -s /usr/local/hadoop/hadoop-3.2.1 /usr/local/hadoop/hadoop
第三步:配置ssh免密登錄
在主節點上生成SSH密鑰,并將其復制到所有節點:
ssh-keygen -t rsa ssh-copy-id hadoop11 ssh-copy-id hadoop12 ssh-copy-id hadoop13 ``` (將`hadoop11`, `hadoop12`, `hadoop13`替換為你的實際節點名稱) **第四步:Hadoop環境變量配置** 編輯`/etc/profile`文件,添加以下內容: ```bash export HADOOP_HOME=/usr/local/hadoop/hadoop-3.2.1 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin source /etc/profile
第五步:Hadoop配置文件配置
修改Hadoop配置文件,確保所有節點配置一致。關鍵配置如下:
- core-site.xml:
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop11:8020</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/usr/local/hadoop/data</value> </property> </configuration>
- hdfs-site.xml:
<configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>hadoop12:9868</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/usr/local/hadoop/data/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/usr/local/hadoop/data/datanode</value> </property> </configuration>
(請根據你的實際節點名稱和目錄進行修改)
第六步:HDFS集群初始化
在NameNode節點上執行以下命令格式化集群:
hdfs namenode -format
第七步:啟動HDFS集群
在任意一個節點上執行:
start-dfs.sh
第八步:驗證HDFS集群
訪問NameNode的Web界面 (http://hadoop11:50070) 驗證集群是否成功啟動。
重要提示:
- 確保所有節點的配置文件完全一致。
- 配置文件中所有路徑必須正確。
- 以上配置基于單機模式,生產環境通常需要高可用性(HA)配置,涉及zookeeper和JournalNode。
本指南提供了一個基本的HDFS集群部署流程,實際操作中可能需要根據具體環境進行調整。 請務必仔細檢查所有配置,并根據你的實際情況修改節點名稱和路徑。