更新時間:2021-09-10 來源:黑馬程序員 瀏覽量:
對 Kerberos 有了基本了解后,我們開始進入安裝部署的步驟,首先是先準備基本的服務器環境。
本次課程基于使用的軟件環境如下:
CDH 5.14.4
hadoop2.6.0-cdh5.14.4
hive1.1.1-cdh5.14.4
CentOS 6.9 x64 操作系統
JDK 1.8 and jdk1.7(for maven)
apache-maven-3.0.5
Kerberos 使用在線yum庫提供的最新版本
除操作系統外,所有需要用到的安裝包,在課件內都有提供,同學們可以直接使用。本次課程使用4臺服務器來進行演示,分別是:
主機名cdh0(FQDN: cdh0.itcast.cn):hadoop的master節點,部署 namenode ,
resourcemanager , hive server2 , historyserver 等master角色 以及 Kerberos 的 客戶端
主機名cdh1(FQDN: cdh1.itcast.cn):hadoop的slave節點,部署 datanode , nodemanager 等slave角色 以及 Kerberos 的 客戶端
主機名CDH2(FQDN: cdh2.itcast.cn):同CDH1
主機名CDH3(FQDN: cdh3.itcast.cn):Kerberos的server端,部署 Kerberos server
硬件配置:
CDH0、CDH1、CDH2均為2核心3GB內存配置,CDH3為1核心1GB內存
同學們可以根據自己主機的配置情況做相應增刪
其中slave節點可以刪除一個,比如CDH2可以刪除不要,以節省內存開銷
如果內存比較大的同學可以給slave節點配置三個,來模擬更加真實的環境
基礎系統環境準備
a.關閉防火墻服務
chkconfig iptables off 關閉防火墻自啟
service iptables stop 關閉當前防火墻的運行
b. 配置主機名
修改 /etc/sysconfig/network 文件,設置HOSTNAME為需要的主機名
這里設置FQDN形式,保存即可
FQDN形式的主機名就是包含完整的主機所在域(所在組織)的主機名
如 cdh0.itcast.cn 其中cdh0是簡寫的主機名 .itcast.cn 是這臺主機的所在域 也就是domain
hadoop中配置建議使用FQDN形式的主機名。
c. 配置各個主機IP地址
老師演示的網段是 192.168.66.0 網段
下面演示的IP地址根據你虛擬機的網段來設置,自行修改
1.關閉 NetworkManager 服務和 selinux
# NetworkManager
service NetworkManager stop # 關閉
chkconfig NetworkManager off # 關閉開機自啟
# Selinux
vim /etc/sysconfig/selinux
設置SELINUX=disabled
然后重啟生效
2. 配置 ip : vim /etc/sysconfig/network-scripts/ifcfg-eth0DEVIDE="eth0" # 網卡名字
BOOTPROTO="static" # 靜態IP
ONBOOT="yes" # 開機啟動
TYPE="Ethernet" # 類型
IPADDR=192.168.66.200 # IP地址
NETMAST=255.255.255.0 # 子網掩碼
GATEWAY=192.168.66.2 # 網關地址
DNS1=192.168.66.2 # DNS1的地址
3. 執行 service network restart 重啟網卡執行到這一步網絡就配置好了,可以用secureCRT等工具連接服務器了
vim /etc/hosts
添加:
192.168.66.200 cdh0.itcast.cn cdh0
192.168.66.201 cdh1.itcast.cn cdh1
192.168.66.202 cdh2.itcast.cn cdh2
192.168.66.203 cdh3.itcast.cn cdh3
在每個機器都執行, 不要動原本的localhost的配置,可能會有bug
e. 安裝必要軟件(通過 yum 在線安裝)
執行:
yum -y install epel-release
yum install -y autoconf automake libtool cmake ncurses-devel openssl-devel lzo-devel
zlib-devel gcc gcc-c++ bzip2-devel cmake3 lrzsz ntp
所有機器上都執行
f. 配置ntp和時間
1. 修改時區: cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
2. 校對當前時間: ntpdate -u 0.cn.pool.ntp.org
3. 設置ntp服務并啟動和設置自啟
vim /etc/ntp.conf
在server那里最上面添加一行
server 0.cn.pool.ntp.org iburst
然后執行service ntpd start
執行 chkconfig ntpd on
所有機器上都執行
g. 創建用戶和組以及配置各自的ssh免密登錄
添加用戶
# 添加一個hadoop組
groupadd hadoop
# 添加用戶
useradd hadoop -g hadoop -p hadoop
useradd hive -g hadoop -p hive
useradd yarn -g hadoop -p yarn
useradd mapred -g hadoop -p mapred
或者一條命令搞定:
groupadd hadoop;useradd hadoop -g hadoop -p hadoop;useradd hive -g hadoop -p
hive;useradd yarn -g hadoop -p yarn;useradd mapred -g hadoop -p mapred
在cdh0 cdh1 cdh2三臺機器上執行
設置ssh免密登錄(可選)
可選,方便操作,課程演示做root賬戶的互相免密
執行 ssh-keygen -t rsa 一路回車就可創建當前賬戶的 ssh key
執行 ssh-copy-id 目標主機 即可讓當前機器的當前用戶免密登錄目標主機的當前用戶
h. 上傳Hadoop軟件包
上傳包
創建目錄 mkdir /bigdata 在 cdh0執行
上傳:
apache-maven-3.0.5-bin.tar.gz
hadoop-2.6.0-cdh5.14.4.tar.gz
hive-1.1.0-cdh5.14.4.tar.gz
并解壓到/bigdata 目錄下, 參考命令 tar -zxvf hive-1.1.0-cdh5.14.4.tar.gz -C /bigdata/
使用 scp 命令將 /bigdata 目錄復制到cdh1 和 cdh2
scp -r /bigdata cdh1:/
scp -r /bigdata cdh2:/
目錄/bigdata 用來安裝hadoop等組件,同學可以自行修改
i. 安裝jdk
上傳jdk1.7 和 jdk1.8到服務器并解壓
設置java home 為jdk1.8
在每個hadoop節點(cdh0,1,2)機器都執行
j. 配置環境變量
export HADOOP_HOME=/bigdata/hadoop-2.6.0-cdh5.14.4
export MAVEN_HOME=/bigdata/apache-maven-3.0.5
export HIVE_HOME=/bigdata/hive-1.1.0-cdh5.14.4
export JAVA_HOME=/usr/local/jdk1.8.0_221
export
PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$MAVEN_HOME/bin:$HIVE_HOME/bin:
$PATH
# export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
# export HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/native"
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/bigdata/hadoop-2.6.0-cdh5.14.4/lib/native
source /etc/profile
在每個hadoop節點(cdh0,1,2)機器都執行