更新时间: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)机器都执行