hadoop叢集搭建(超詳細版)
1.準備好需要安裝的軟體
虛擬機器VMware12.pro
作業系統CentOS 6.5
遠端控制虛擬機器的終端SecureCRT8.1
2.在虛擬機器中安裝CentOS作業系統
安裝好虛擬機器,圖形介面如下圖
建立新的虛擬機器,選擇自定義(高階),點選下一步
虛擬機器硬體相容性預設,瀏覽需要安裝的CentOS6.5映象檔案
自定義使用者名稱和密碼(用於登入)
設定虛擬機器名稱和儲存路徑
處理器設定預設(後面可以修改),記憶體設為1GB
網路型別選擇NAT模式
選擇建立新虛擬磁碟
最大磁碟大小設為20GB,然後將虛擬磁碟儲存為單個檔案
將建立好的磁碟檔案儲存在虛擬機器指定目錄下
虛擬機器建立完成
3. 虛擬網路配置
編輯虛擬網路設定,選擇NAT模式
點選NAT設定,檢視網路資訊(後面設定ip會用到)
檢視主機ip地址
修改網路配置檔案,將BOOTPROTO值修改為”static”
重啟網路服務network
再次檢視主機ip
4. 更改主機名稱
修改主機名檔案(重啟永久生效)
檢視主機名hostname(檔案修改後沒有重啟主機名沒有生效,可以用hostname臨時生效)
複製master檔案兩次,重新命名為slave1和slave2,開啟虛擬機器檔案,然後按照同樣的方法設定兩個節點的ip和主機名
5.建立主機名和ip的對映
檢視是否能ping通
6.配置ssh免密碼登入
在root使用者下輸入ssh-keygen -t rsa 一路回車
祕鑰生成後在~/.ssh/目錄下,有兩個檔案id_rsa(私鑰)和id_rsa.pub(公鑰),將公鑰複製到authorized_keys並賦予authorized_keys600許可權
同理在slave1和slave2節點上生成祕鑰,然後將祕鑰複製到master節點上的authoized_keys
將master節點上的authoized_keys遠端傳輸到slave1和slave2的~/.ssh/目錄下
檢查是否免密登入(第一次登入會有提示)
7.關閉防火牆
關閉selinux(永久)
8.安裝JDK
三個節點安裝java並配置java環境變數
解壓壓縮包
在/etc/profile檔案裡新增jdk路徑
執行命令source /etc/profile使配置檔案生效,並檢視java版本資訊
9.安裝MySQL(主節點)
查詢系統已安裝的mysql
徹底解除安裝mysql及其所依賴的包
解壓MySQL包
安裝MySQL有關的三個rpm包,分別為server、client和devel包
啟動mysql /usr/bin/mysqld_safe --skip-grant-tables & 並登陸mysql資料庫
檢視mysql中的資料庫
10.安裝SecureCRT
操作比較簡單,安裝好的圖形介面如圖
連線好之後
12.搭建叢集
12.1 叢集結構
三個結點:一個主節點master兩個從節點 記憶體1GB 磁碟20GBIp地址 | 主機名 | Namenode | Secondary namenode | Datanode | Resource Manager | NodeManager |
192.168.63.16 | master | Y | Y | N | Y | N |
192.168.63.17 | slave1 | N | N | Y | N | Y |
192.168.63.18 | slave2 | N | N | Y | N | Y |
12.2 新建hadoop使用者及其使用者組
用adduser新建使用者並設定密碼將新建的hadoop使用者新增到hadoop使用者組前面hadoop指的是使用者組名,後一個指的是使用者名稱
賦予hadoop使用者root許可權
12.3 安裝hadoop並配置環境變數
由於hadoop叢集需要在每一個節點上進行相同的配置,因此先在master節點上配置,然後再複製到其他節點上即可。
將hadoop包放在/usr/目錄下並解壓
配置環境變數
在/etc/profile檔案中新增如下命令
12.4 搭建叢集的準備工作
在master節點上建立以下資料夾/usr/hadoop-2.6.5/dfs/name/usr/hadoop-2.6.5/dfs/data/usr/hadoop-2.6.5/temp12.5 配置hadoop檔案
接下來配置/usr/hadoop-2.6.5/etc//hadoop/目錄下的七個檔案slaves core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml hadoop-env.sh yarn-env.sh配置hadoop-env.sh
配置yarn-env.sh
配置slaves檔案,刪除localhost
12.6 執行hadoop
格式化Namenode
source /etc/profile