学而时习之,不亦说乎。由于工作需要,需要现搭建大数据测试环境,就快速攒了一个,记录一下过程。
这次用的是Ambari2.7.4,因为2.7.5有些资源下载不了,用它的原因就是图方便,赶时间,而且是Apache的亲儿子,稳定性也不错。
主要参考了官方文档,仔细参照着部署是可以成功的,由于要使用国内镜像,还是有些不同,记录下来,当做总结。
文档地址:https://docs.cloudera.com/HDPDocuments/Ambari/Ambari-2.7.4.0/index.html
开始之前先查看支持列表:https://supportmatrix.hortonworks.com/
我装的Ambari是2.7.4,HDP是3.1.4,左上角有个按钮,可以下载一个报告,里面包括全部所需组件和支持的系统。
然后就要准备两台服务器,我用两个闲置电脑装了CentOS7.8,两个节点,hadoop-01和hadoop-02,IP分别为192.168.199.123和192.168.199.124,一主一从。接下来正式开始:
一、准备工作
1.关闭防火墙
// 暂停防火墙服务
systemctl stop firewalld.service
// 设置防火墙服务开机不自启
systemctl disable firewalld.service
// 查看防火墙服务开机不自启是否设置成功,disabled表示设置成功
systemctl is-enabled firewalld.service
// 查看防火墙状态
systemctl status firewalld.service
2.修改selinux
//临时生效selinux设置
setenforce 0
//修改配置文件
vi /etc/selinux/config
把SELINUX=enforcing修改为SELINUX=disabled
3.修改host
vi /etc/hosts
增加以下新的host
修改network文件
vi /etc/sysconfig/network
增加以下内容
# Created by anaconda
NETWORKING=yes
HOSTNAME=hadoop-01
执行以下命令
//设置主机名
hostnamectl set-hostname hadoop-01
//查询主机名
hostname
同样修改另一台机器的hostname为hadoop-02
4.修改yum源
//先安装wget
yum install -y wget
// 备份yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
// 下载阿里云repo文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
// 生成缓存
yum makecache
5.安装ntp
// 安装 ntp 服务
yum install -y ntp
// 开启并设置开机自启ntp服务
systemctl start ntpd
systemctl enable ntpd
// 查看ntp服务状态
systemctl status ntpd
6.安装JDK
略。
7.关闭THP
cat /sys/kernel/mm/transparent_hugepage/defrag
cat /sys/kernel/mm/transparent_hugepage/enabled
得到的结果都是[always] madvise never,需要将其关闭。
vi /etc/rc.d/rc.local
在末尾追加以下代码
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
并给 该文件赋权
chmod +x /etc/rc.d/rc.local
reboot之后在执行查看命令,结果变为 always madvise [never],说明已关闭。
8.打开最大文件设置
检查最大文件描述符数的当前值
ulimit -Sn
ulimit -Hn
如若输出小于10000,则将其设置为10000
ulimit -n 10000
以上准备工作要在两台服务器上都做。
二、安装Ambari Server
1.开启双向免密登录
ssh-keygen -t rsa
在 /root/.ssh下面会生成id_rsa和id_rsa.pub两个文件,再使用ssh-copy-id命令将公钥传到另一台机器上
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.199.124
同时也要给自己一份公钥,不然在后面注册主机时会报Permission denied
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.199.123
此时就可以免密访