鏈接工具備不少, 推薦使用XShell, 也可以使用其餘的, 因人而異.java
上傳工具也有不少, 推薦Xftp和fileZilla.
node
咱們使用四臺節點來搭建集羣, 將它們分別命名爲node01, node02, node03, node04(命名可任意). 除此以外, 再用一臺節點看成客戶端節點: client.linux
首先, 須要先建立node01節點, 建立過程即在虛擬機中安裝CentOS, 不會的可自行Bing, Google. 其他四臺節點等通用配置設置完成以後, 用VMware自帶的克隆功能克隆後稍加修改便可.web
cd /etc/sysconfig/network-scripts/ 進入該目錄, 找到ifcfg-eth0的文件,用vim打開修改 將ONBOOT=no 改成yes 設置其跟隨開機自啓動 將BOOTPROTP=dhcp改成static 設置IP的獲取由隨機改成靜態IP 再這以後添加如下內容(*注意 : 添加修改時, 不要加上說明用的中文*): IPADDR=192.168.75.133 手動設置的靜態IP PREFIX=24 GATEWAY=192.168.75.2 網關ip. 打開VMware的虛擬網絡編輯器, 選中nat模式查看nat設置中會有 DNS1=8.8.8.8 設置dns :wq 保存文件並退出 service network restart 退出後, 重啓網絡服務
網絡設置好以後, 就能夠在本地機中用XShell遠程鏈接虛擬機了. 怎麼鏈接自行bing, 咱們的操做一般是在鏈接工具上執行, 這樣會更加方便.vim
節點安裝ntp命令: yum install ntp -y 上網查找最新的時間服務器ntp1.aliyun.com, 可選擇其餘家的 同步時間: ntpdate ntp1.aliyun.com
使用上傳工具將jdk和hadoop的包傳到虛擬機中, 這裏筆者將jdk傳到/usr/local目錄中, 將hadoop傳到/opt/software/hadoop目錄中, 路徑因我的配置而異, 要記得本身存放的位置, 後文會對這些路徑進行配置, 到時需修改成與我的配置相關的路徑, 後續內容再也不重複此點.服務器
進入jdk存放的位置 cd /usr/local 解壓安裝包 tar -zxf jdk-8u181-linux-x64.tar.gz 給解壓出來的文件設置權限 chmod -R 777 jdk1.8.0_181 配置java環境變量 vim /etc/profile 在文件最後插入 export JAVA_HOME=/usr/local/jdk1.8.0_181 export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin 讓修改的文件生效 source /etc/profile 控制檯輸入java -version 來查看jdk是否生效.若是提示java版本則代表成功
vmware中克隆節點
網絡
克隆三個節點完成之後, 此時克隆的三個節點的主機名, 靜態ip地址, 網卡物理地址與第一個一致, 先修改一下它們:ssh
先設置節點網卡 vim /etc/udev/rules.d/70-persistent-net.rules
打開以後, 會有兩個網卡的信息
其中, eth0 是克隆的node01節點的信息, 因此這裏咱們要刪除這一行, 而後把eth1改成eth0, 同時複製ATTR(address)中的內容, 即克隆出來的虛擬機網卡的物理地址.編輯器
而後配置ip, 分別在每個節點上執行svg
vim /etc/sysconfig/network-script/ifcfg-eth0 將HWADDR修改成剛纔複製的內容 再修改IPADDR的IP地址, 只需改最後三位便可, 保證每一個節點的IP不一樣 我設置的IP與節點對應關係爲: 192.168.75.133 -- node01 192.168.75.134 -- node02 192.168.75.135 -- node03 192.168.75.136 -- node04 192.168.75.137 -- client
因爲虛擬機是克隆出來的, 節點名稱都相同, 須要再修改每一個節點的主機名
vim /etc/sysconfig/network 將NETWORKING設置爲yes 打開網絡 將HOSTNAME分別設爲node02, node03, node04,client 這裏須要重啓後才能生效, 但先彆着急, 等所有配置好以後, 再統一重啓生效.
爲了讓節點之間可以互相訪問到, 須要讓每一個節點知曉其餘節點的地址, 配置以下:
vim /etc/hosts 每一個節點執行該命令, 打開hosts文件進行修改 在五個節點中同時加入下列內容(這些是我本身設置的IP) 192.168.75.133 node01 192.168.75.134 node02 192.168.75.135 node03 192.168.75.136 node04 192.168.75.137 client
集羣啓動時, 須要訪問其餘節點(client節點除外), 爲了實現自動化(沒必要每次輸入密碼), 須要在每一個節點配置免密.
全部節點執行 ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa 生成公鑰和私鑰, 文件存放在~/.ssh目錄下
每一個節點上配置自身以及其餘節點的公鑰.
ssh-copy-id -i ~/.ssh/id_rsa.pub root@node01 ssh-copy-id -i ~/.ssh/id_rsa.pub root@node02 ssh-copy-id -i ~/.ssh/id_rsa.pub root@node03 ssh-copy-id -i ~/.ssh/id_rsa.pub root@node04
注:全部存儲的公鑰信息都可在 ~/.ssh/authorized_keys文件中查看
要想成功運行, 還須要關閉各個節點的防火牆.
臨時關閉防火牆(每次重啓節點都需手動執行)
service iptables stop
永久關閉(推薦)
chkconfig iptables off
這麼配下來, 大部分配置文件須要source或其餘命令使其生效, 建議重啓虛擬機.