Hadoop運行集群搭建 虛擬機環境準備 安裝虛擬機及基本配置 IP地址192.168.10.100、主機名稱hadoop100,記憶體4G、硬碟50G 測試下虛擬機聯網情況 1 [root@hadoop100 ~]# ping www.baidu.com 2 PING www.baidu.com ( ...
Hadoop運行集群搭建
虛擬機環境準備
安裝虛擬機及基本配置
-
IP地址192.168.10.100、主機名稱hadoop100,記憶體4G、硬碟50G
-
測試下虛擬機聯網情況
1 [root@hadoop100 ~]# ping www.baidu.com 2 PING www.baidu.com (14.215.177.39) 56(84) bytes of data. 3 64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=1 4 ttl=128 time=8.60 ms 5 64 bytes from 14.215.177.39 (14.215.177.39): icmp_seq=2 6 ttl=128 time=7.72 ms
-
安裝 epel-release
註:Extra Packages for Enterprise Linux 是為“紅帽系”的操作系統提供額外的軟體包, 適用於 RHEL、CentOS 和 Scientific Linux。相當於是一個軟體倉庫,大多數 rpm 包在官方 repository 中是找不到的)
[root@hadoop100 ~]# yum install -y epel-release
-
註意:如果 Linux 安裝的是最小系統版,還需要安裝如下工具;如果安裝的是 Linux 桌面標準版,不需要執行如下操作
net-tool:工具包集合,包含 ifconfig 等命令
[root@hadoop100 ~]# yum install -y net-tools
vim:編輯器
[root@hadoop100 ~]# yum install -y vim
關閉防火牆
-
關閉防火牆開機自啟
[root@hadoop100 ~]# systemctl stop firewalld
[root@hadoop100 ~]# systemctl disable firewalld.service
-
註意:在企業開發時,通常單個伺服器的防火牆時關閉的。公司整體對外會設置非常安全的防火牆
創建用戶snoopy,並修改用戶密碼
[root@hadoop100 ~]# useradd snoopy
[root@hadoop100 ~]# passwd snoopy
配置 snoopy 用戶具有 root 許可權
-
方便後期加 sudo 執行 root 許可權的命令
[root@hadoop100 ~]# vim /etc/sudoers
-
修改/etc/sudoers 文件,在%wheel 這行下麵添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
snoopy ALL=(ALL) NOPASSWD:ALL -
註意:snoopy這一行不要直接放到 root 行下麵,因為所有用戶都屬於 wheel 組,你先 配置了 atguigu 具有免密功能,但是程式執行到%wheel 行時,該功能又被覆蓋回需要 密碼。所以 snoopy 要放到%wheel 這行下麵。
在/opt 目錄下創建文件夾
-
並修改所屬主和所屬組
-
在/opt 目錄下創建 module、software 文件夾
[root@hadoop100 ~]# mkdir /opt/module
[root@hadoop100 ~]# mkdir /opt/software -
修改 module、software 文件夾的所有者和所屬組均為snoopy 用戶
[root@hadoop100 ~]# chown snoopy:snoopy /opt/module
[root@hadoop100 ~]# chown snoopy:snoopy /opt/softwar -
查看 module、software 文件夾的所有者和所屬組
[root@hadoop100 ~]# cd /opt/
[root@hadoop100 opt]# ll
總用量 12
drwxr-xr-x. 2 atguigu atguigu 4096 5 月 28 17:18 module
drwxr-xr-x. 2 root root 4096 9 月 7 2017 rh
drwxr-xr-x. 2 atguigu atguigu 4096 5 月 28 17:18 software
卸載自帶的jdk
-
如果虛擬機是最小化安裝不需要這一步
[root@hadoop100 ~]# rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps
-
rpm -qa:查詢所安裝的所有rpm軟體包
-
grep -i:忽略大小寫
-
xargs -n1:表示每次只傳遞一個參數
-
rpm -e –nodeps:強制卸載軟體
重啟虛擬機
[root@hadoop100 ~]# reboot
克隆虛擬機
開始克隆
-
克隆三台虛擬機Hadoop102、Hadoop103、Hadoop104
-
克隆時,要先關閉hadoop100
修改克隆機IP
修改虛擬機的靜態IP
[root@hadoop100 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
改為
TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="static" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="ens33" UUID="f1b4f112-6706-4d05-b097-d60abe63fea0" DEVICE="ens33" ONBOOT="yes" IPADDR="192.168.153.100" GATEWAY="192.168.153.2" DNS1="192.168.153.2"
查看Linux虛擬機的虛擬網路編輯器
-
編輯->虛擬網路編輯器->VMnet8
查看Windows系統適配器
-
VMware Network Adapter VMnet8的IP地址
-
保證Linux系統ifcfg-ens33文件中IP地址、虛擬網路編輯器地址和Windows系統VM8網路IP地址相同。
修改克隆機主機名
修改主機名稱
[root@hadoop100 ~]# vim /etc/hostname
hadoop102
配置Linux克隆機主機名稱映射hosts文件
[root@hadoop100 ~]# vim /etc/hosts
添加內容
1 192.168.10.100 hadoop100 2 192.168.10.101 hadoop101 3 192.168.10.102 hadoop102 4 192.168.10.103 hadoop103 5 192.168.10.104 hadoop104
重啟克隆機hadoop102
[root@hadoop100 ~]# reboot
修改windows的主機映射文件(hosts文件)
window7操作系統
-
進入 C:\Windows\System32\drivers\etc 路徑
-
打開hosts文件並添加如下內容,然後保存
192.168.10.100 hadoop100 192.168.10.101 hadoop101 192.168.10.102 hadoop102 192.168.10.103 hadoop103 192.168.10.104 hadoop104
window10操作系統
-
先拷貝出來,修改保存以後,再覆蓋即可
-
進入 C:\Windows\System32\drivers\etc 路徑
-
拷貝 hosts 文件到桌面
-
打開桌面 hosts 文件並添加如下內容
1 192.168.10.100 hadoop100 2 192.168.10.101 hadoop101 3 192.168.10.102 hadoop102 4 192.168.10.103 hadoop103 5 192.168.10.104 hadoop104
-
將桌面 hosts 文件覆蓋 C:\Windows\System32\drivers\etc 路徑 hosts 文件
安裝JDK和Hadoop
卸載現有的JDK
-
安裝JDK前,一定確保提前刪除了虛擬機自帶的JDK。
rpm -qa | grep -i java | xargs -n1
傳輸JDK和Hadoop
-
利用XShell傳輸工具將JDK和Hadoop的包導入opt目錄下的module文件夾下
-
查看是否導入成功
解壓JDK和Hadoop
-
解壓JDK到/opt/software目錄下
[root@hadoop102 software]$ tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/software/
-
解壓Hadoop到/opt/software下麵
[root@hadoop102 module]$ tar -zxvf hadoop-3.1.3.tar.gz -C /opt/software/
配置JDK和Hadoop環境變數
-
新建/etc/profile.d/my_file.sh文件
[root@hadoop102 ~]$ sudo vim /etc/profile.d/my_file.sh
-
添加內容
#JAVA_HOME export JAVA_HOME=/opt/software/jdk1.8.0_212 export PATH=$PATH:$JAVA_HOME/bin #HADOOP_HOME export HADOOP_HOME=/opt/software/hadoop-3.1.3 export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin
-
保存後退出
:wq
-
source一下/etc/profile文件,讓新的環境變數PATH生效
[root@hadoop102 ~]$ source /etc/profile
-
測試JDK是否成功
[root@hadoop102 ~]$ java -version
-
測試Hadoop是否安裝成功
[root@hadoop102 hadoop-3.1.3]$ hadoop version
-
重啟(java -version可以用就不用重啟)
[root@hadoop102 ~]$ reboot
Hadoop目錄
Hadoop目錄結構
[root@hadoop102 hadoop-3.1.3]$ ll
總用量 52
drwxr-xr-x. 2 atguigu atguigu 4096 5 月 22 2017 bin
drwxr-xr-x. 3 atguigu atguigu 4096 5 月 22 2017 etc
drwxr-xr-x. 2 atguigu atguigu 4096 5 月 22 2017 include
drwxr-xr-x. 3 atguigu atguigu 4096 5 月 22 2017 lib
drwxr-xr-x. 2 atguigu atguigu 4096 5 月 22 2017 libexec
-rw-r--r--. 1 atguigu atguigu 15429 5 月 22 2017 LICENSE.txt
-rw-r--r--. 1 atguigu atguigu 101 5 月 22 2017 NOTICE.txt
-rw-r--r--. 1 atguigu atguigu 1366 5 月 22 2017 README.txt
drwxr-xr-x. 2 atguigu atguigu 4096 5 月 22 2017 sbin
drwxr-xr-x. 4 atguigu atguigu 4096 5 月 22 2017 share
重要目錄
-
bin目錄:存放對Hadoop相關服務(hdfs,yarn,mapred)進行操作的腳本
-
etc目錄:Hadoop的配置文件目錄,存放Hadoop的配置文件
-
lib目錄:存放Hadoop的本地庫(對數據進行壓縮解壓縮功能)
-
sbin目錄:存放啟動或停止Hadoop相關服務的腳本
-
share目錄:存放Hadoop的依賴jar包、文檔、和官方案例