1.、环境及软件准备
Ambari-2.7.4和HDP-3.1.4下载 ,提取码:3rwq
环境:CentOS7(我这里使用的是CentOS7.9版本)、三台虚拟机,单节点内存13GB、存储80GB
软件:mysql5.7+、jdk8、ambari-2.7.4.0-centos7.tar.gz、HDP-3.1.4.0-centos7-rpm.tar.gz、HDP-UTILS-1.1.0.22-centos7.tar.gz
二、服务器初始化
1、主机名配置
vi /etc/hosts
查看hostname
2、配置服务器之间免密登录
ssh-keygen -q -N ''
ssh-copy-id 192.168.10.10
ssh-copy-id 192.168.10.11
ssh-copy-id 192.168.10.12
#不知道root密码的情况
复制当前主机/root/.ssh/id_rsa.pub的内容到其他主机的authorized_keys文件
验证ssh访问
ssh 192.168.10.10
3 关闭防火墙
systemctl status firewalld # 通过此命令查看防火墙状态
systemctl stop firewalld # 关闭防火墙
systemctl disable firewalld # 关闭防火墙开机自启
4、 关闭SELinux
# 临时性关闭(立即生效,但是重启服务器后失效)
setenforce 0 #设置selinux为permissive模式(即关闭)
setenforce 1 #设置selinux为enforcing模式(即开启)
# 永久性关闭(这样需要重启服务器后生效)
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
安装ambari-server的时候是需要关闭SELinux的,我们这里先提前将其关闭
2.4 时间同步
选一台服务器作时间服务器,这里以hdp1作为时间服务器,其他服务器以时间服务器时间为准
2.4.1 时间服务器配置(root用户)
安装ntp服务
yum install -y ntp
修改ntp配置文件
修改/etc/ntp.conf文件
vi /etc/ntp.conf
2.1 授权192.168.1.0-192.168.1.255网段上的所有机器可以从这台机器上查询和同步时间
修改
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
为
restrict 192.168.80.0 mask 255.255.255.0 nomodify notrap #我这里使用的网段为80,具体网段根据服务器的ip而定
2.2 集群在局域网和非局域网时间配置
集群在局域网中,不使用其他互联网上的时间
修改
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
为
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
集群使用互联网时间,这里使用阿里云时间服务器的时间
# 将原来的注释掉
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
# 添加如下
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server ntp3.aliyun.com iburst
server ntp4.aliyun.com iburst
server ntp5.aliyun.com iburst
server ntp6.aliyun.com iburst
server ntp7.aliyun.com iburst
2.3 当该节点丢失网络连接,依然可以采用本地时间作为时间服务器为集群中的其他节点提供时间同步
server 127.127.1.0
fudge 127.127.1.0 stratum 10
3 启动ntp服务并设置开机自启
systemctl start ntpd # 启动ntpd服务
systemctl enable ntpd # 配置ntpd服务开机自启
2.4.2 其他服务器配置(root用户)
-
非时间服务器都安装ntpdate服务
yum install -y ntpdate
-
同步时间
ntpdate hdp-1
-
定时同步时间 通过crontab编写定时任务
crontab -e # 添加如下内容 29,59 * * * * /usr/sbin/ntpdate hdp1 # 每小时的第29分和59分同步一次时间
到达时间点后通过
date
命令查看时间是否已经同步,当然配置间隔时间更短的任务,这样可以更快的看到效果。
三、环境初始化
1、创建安装目录
mkdir -p /var/www/html
# 先在/var/www/html目录下创建ambari、hdp、hdp-utils文件夹
mkdir /var/www/html/ambari
mkdir /var/www/html/hdp
mkdir /var/www/html/hdp-utils
2、创建hdfs和hadoop用户
adduser hdfs
adduser hadoop
passwd hadoop
passwd hdfs
3.给hdfs和hadoop用户赋予sudo权限
vi /etc/sudoers
hadoop ALL=(ALL) NOPASSWD:ALL
hdfs ALL=(ALL) NOPASSWD:ALL
4.添加用户组
#没有用户以及用户组 则创建
sudo groupadd hadoop
sudo useradd -r -g hadoop -m -d /home/hadoop hdfs
sudo groupadd hadoop
sudo useradd -g hadoop hdfs2
sudo passwd hdfs2
#如果用户已经存在则修改用户为hadoop组
sudo groupadd hadoop
sudo usermod -G hadoop hdfs
usermod -d /home/hdfs hdfs
sudo chgrp -R hadoop /var/www/html/ --修改文件夹下用户所属组
sudo chown -R hdfs /var/www/html/ -- 修改文件夹下所属用户
sudo chmod -R 775 /var/www/html/ --修改文件夹下所有文件权限
5、修改样本源目录权限
sudo chgrp -R hadoop /var/www/html/
sudo chown -R hdfs /var/www/html/
[hadoop@hdp-1 root]$ sudo chown -R hdfs /var/www/html/
[hadoop@hdp-1 root]$ sudo chown -R hdfs /var/www/html/ambari/
[hadoop@hdp-1 root]$ sudo chown -R hdfs /var/www/html/hdp
[hadoop@hdp-1 root]$ sudo chown -R hdfs /var/www/html/hdp-utils/
6、将安装包放入到/var/www/html/
ambari-2.7.6.3-centos7_8-x86_64.tar.gz
HDP-GPL-3.3.1.0-001-centos7_8-x86_64.tar.gz
HDP