Hadoop HDFS 3.3.1分散式儲存搭建

KunlunDB發表於2022-01-17
前言


看了標題會不會詫異,怎麼崑崙分散式資料庫玩起了分散式檔案系統?
 
因為崑崙分散式資料庫0.9版本起,要增加HDFS分散式檔案備份功能 ,所以開發小哥哥工作中,就順便把學習的過程分享出來。
 
HDFS(HadoopDistributed File System)是Hadoop專案的核心子專案,是分散式計算中資料儲存管理的基礎。

是基於流資料模式訪問和處理超大檔案的需求而開發的,可以執行於廉價的商用伺服器上。
 
它所具有的高容錯、高可靠性、高可擴充套件性、高獲得性、高吞吐率等特徵為海量資料提供了不怕故障的儲存,為超大資料集(Large Data Set)的應用處理帶來了很多便利。
 
HDFS是開源的,儲存著Hadoop應用將要處理的資料,類似於普通的Unix和Linux檔案系統,不同的是它是實現了google的GFS檔案系統的思想,是適用於大規模分散式資料處理相關應用的、可擴充套件的分散式檔案系統。
 
下面我們詳細介紹在兩臺CENTOS8的虛擬機器上,搭建HDFS分散式檔案儲存系統:
 
一、配置基本環境
 
1.1  修改主機名,並重啟生效
    vim /etc/hosts192.168.207.164         centos8-0192.168.207.165         centos8-1
     
    1.2  關閉防火牆並設定開機不啟動
      systemctl stop firewalld.servicesystemctl disable firewalld.service
       
      1.3  關閉 Selinux 並設定開機不啟動
        setenforce 0vim /etc/selinux/configSELINUX=disabled
         

        另一臺機器,重複1.1-1.3步驟

         

        1.4  配置免密登陸

         

        1.4.1  使用 root 使用者登陸系統生成金鑰:

          ssh-keygen

          一直回車確定 (生成的金鑰檔案在 /root/.ssh下 id_rsa 、id_rsa.pub )

           

          1.4.2  配置自己對自己的免密登陸:

            ssh-copy-id centos8-0

            (另一臺機器 ssh-copy-id centos8-1 )根據提示輸入 yes 輸入密碼( centos8-0 就是你當前第一臺的主機名)。

             

            1.4.3  將金鑰檔案複製到第二臺主機上:

              ssh-copy-id centos8-1

              (另一臺機器 ssh-copy-id centos8-0 ),根據提示輸入 yes 根據提示輸入對方主機的 root 密碼

              1.4.4  配置完免密登陸後,相互測試一下,能不能免密登入:

                ssh centos8- (ssh centos8-1)

                二、安裝java環境
                 
                2.1  下載java二進位制包:

                2.2  解壓縮,移到 /usr/ocal
                  tar zxf jdk-8u131-linux-x64.tar.gzmv jdk1.8.0_131 /usr/local
                   
                  2.3  配置環境變數

                  開啟 /etc/profile 在檔案末尾加入如下內容:
                    export JAVA_HOME=/usr/local/jdk1.8.0_131export JRE_HOME=/usr/local/jdk1.8.0_131/jreexport PATH=$PATH:$JAVA_HOME/binexportCLASSPATH=.:$JAVA_HOME/lib:/dt.jar:$JAVA_HOME/lib/tools.jarexportLD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amd64:$JAVA_HOME/jre/lib/amd64/server
                     
                    2.4  使環境變數生效
                      source /etc/profile

                      2.5  測試安裝是否成功
                        java -version

                        2.6  複製到第二臺機器
                          scp -r /usr/local/jdk1.8.0_131/root@centos8-1:/usr/local/scp /etc/profile root@centos8-1:/etc/
                           
                          2.7  第二臺虛擬機器 centos8-1
                            source /etc/profile

                            三、Hadoop安裝
                             
                            3.1  Hadoop 各個版本下載地址:

                            https: / /archive.apache.org/dist /hadoop/common /

                            3.2  建議把 hadoop 放在 /home 目錄 CENTOS8 根目錄空間太小
                              mkdir /home/hadoop/tar zxf hadoop-3.3.1.tar.gz mkdir /home/hadoop/tmp -pmkdir /home/hadoop/dfs/data -pmkdir /home/hadoop/dfs/name -p
                               
                              3.3  開啟並修改 /etc/profile 在檔案末尾加入如下內容:
                                exportHADOOP_HOME=/home/hadoop/hadoop-3.3.1exportPATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
                                 
                                3.4  使環境變數生效
                                  source /etc/profile

                                  3.5  配置 hadoop-env.sh
                                    cd /home/hadoop/hadoop-3.3.1/etc/hadoopvim hadoop-env.sh
                                    然後尾部加入:
                                      export JAVA_HOME=/usr/local/jdk1.8.0_131export HDFS_NAMENODE_USER=rootexport HDFS_DATANODE_USER=rootexport HDFS_DATANODE_SECURE_USER=rootexport HDFS_SECONDARYNAMENODE_USER=rootexport HADOOP_SHELL_EXECNAME=root
                                       
                                      3.6  配置 core-site.xml
                                        <configuration><property><name>fs.defaultFS</name><value>hdfs://centos8-0:9000</value></property><property><name>hadoop.tmp.dir</name><value>/home/hadoop/tmp</value></property></configuration>
                                         
                                        3.7  配置 hdfs-site.xml
                                          <configuration><property><name>dfs.replication</name><value>2</value></property><property><name>dfs.namenode.name.dir</name><value>/home/hadoop/dfs/name</value></property><property><name>dfs.datanode.name.dir</name><value>/home/hadoop/dfs/data</value></property><property><name>dfs.namenode.secondary.http-address</name><value>centos8-1:9000</value></property><property><name>dfs.permissions</name><value>false</value></property></configuration>
                                           
                                          3.8  配置 wroks ,新增如下:
                                            centos8-0centos8-1
                                             
                                            3.9  複製到其他機器
                                              scp -r /home/hadoop root@centos8-1:/home/scp /etc/profile root@centos8-1:/etc/
                                               
                                              第二臺虛擬機器 centos8-1
                                                source /etc/profile

                                                3.10  初始化 namenode 節點, 第二臺機器也要初始化
                                                  hdfs namenode -format

                                                  3.11  在第一臺機器啟動服務:
                                                    start-dfs.sh

                                                    3.12  訪問測試:

                                                    預設瀏覽地址 http://192.168.207.164:9870/

                                                    透過 Utilities->Browse thefile system 檢視檔案,從WINDOWS網頁端上傳檔案會失敗,需要增加如下:
                                                      C:\Windows\System32\drivers\etc\hosts192.168.207.164         centos8-0192.168.207.165         centos8-1
                                                       
                                                      3.13  命令列測試
                                                        hadoop fs -ls /hadoop fs -mkdir /mytesthadoop fs -copyFromLocal test.txt/test.txthadoop fs -appendToFile test.txt/test.txthadoop fs -cat /test.txt

                                                        至此Hadoop HDFS 3.3.1 分散式儲存搭建完成

                                                        點選閱讀原文

                                                        推薦閱讀





                                                        THE END


                                                        來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70011764/viewspace-2852632/,如需轉載,請註明出處,否則將追究法律責任。

                                                        相關文章