龙空技术网

CDH集群添加Gateway节点

不凡的Arya 92

前言:

而今大家对“centos7cdh集群”都比较关心,你们都想要学习一些“centos7cdh集群”的相关文章。那么小编同时在网摘上搜集了一些对于“centos7cdh集群””的相关资讯,希望你们能喜欢,你们一起来学习一下吧!

公司新采购了一批服务器用于CDH集群搭建,第一批次20台服务器CDH集群已经搭建完毕,又采购来几台用于集群跳板机和调度框架等的安装,作为跳板机首先需要将其作为Gateway节点加到CDH集群,该过程大致分为以下几步:

主机模板创建Gateway节点安装前准备集群添加Gateway节点

以下为CDH集群添加Gateway节点的步骤

1.创建主机模板

在CM首页,选择主机模板

主机模板创建

注:主机模板定义了多组角色组,利用这些角色组可以轻松地扩展群集,方法是用角色填充新主机。例如,要通过利用 DataNodes、TaskTrackers 和 RegionServers 添加更多的主机来扩展现有的群集,可以按照适合新主机的硬件配置的方式创建和配置包含角色组(每个角色类型一个角色组)的主机模板,然后可以将该主机模板应用到新主机,同时通过单次操作创建所有的角色。您还可以将主机模板应用到包含已有角色的主机以重新配置这些主机。包含已有角色的主机将会获得新的角色,但是不会丢失现有角色。

点击 创建

主机模板创建

给模板起个名字,然后点击各个服务勾选相应的Gateway角色

选择Gateway

创建成功后如下

主机模板

2.节点安装Gateway前的准备工作2.1 所有节点的hosts文件添加新节点

echo "10.130.128.121 oscdh-121">> /etc/hosts

同时需要在gateway节点增加其他节点主机映射。

2.2 关闭防火墙及清空规则,并关闭selinux

# 查看防火墙开启状态[root@localhost dauser]# systemctl status firewalld# 已关闭● firewalld.service - firewalld - dynamic firewall daemon   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)   Active: inactive (dead)     Docs: man:firewalld(1)# 未关闭的话执行如下命令[root@localhost dauser]# systemctl stop firewalld[root@localhost dauser]# systemctl disable firewalld# 清空规则[root@localhost dauser]# iptables -F# 查看并关闭selinux[root@localhost dauser]# cat /etc/selinux/config# This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:#     enforcing - SELinux security policy is enforced.#     permissive - SELinux prints warnings instead of enforcing.#     disabled - No SELinux policy is loaded.SELINUX=disabled# SELINUXTYPE= can take one of three values:#     targeted - Targeted processes are protected,#     minimum - Modification of targeted policy. Only selected processes are protected. #     mls - Multi Level Security protection.SELINUXTYPE=targeted# SELINUX=enforcing时,改为SELINUX=disabled,设置后重启生效
2.3 设置时间同步
# 查看节点时间和时区[root@localhost dauser]# timedatectl      Local time: Mon 2021-06-07 22:59:29 CST  Universal time: Mon 2021-06-07 14:59:29 UTC        RTC time: Mon 2021-06-07 22:59:48       Time zone: Asia/Shanghai (CST, +0800)     NTP enabled: yesNTP synchronized: no RTC in local TZ: yes      DST active: n/a# date查看时间[root@localhost dauser]# dateMon Jun  7 23:00:56 CST 2021      # 拷贝ntp相关rpm包,到gateway节点scp -P18822 -r downloads root@10.130.128.121:/root/# 安装ntprpm -ivh autogen-libopts-5.18-5.el7.x86_64.rpmrpm -ivh ntp-4.2.6p5-29.el7.centos.x86_64.rpm# 同步时间[root@localhost ntp]# /usr/sbin/ntpdate oscdh-101 7 Jun 16:18:46 ntpdate[34722]: step time server 10.130.128.101 offset -28740.755359 sec
2.4 节点安装jdk
mkdir /usr/javatar -zxvf jdk-8u181-linux-x64.tar.gz -C /usr/java/# 修正所属用户及用户组chown -R root:root /usr/java/jdk1.8.0_181# 设置环境变量echo "export JAVA_HOME=/usr/java/jdk1.8.0_181" >> /etc/profileecho "export PATH=/usr/java/jdk1.8.0_181/bin:${PATH}" >> /etc/profilesource /etc/profilewhich java
2.5 节点放置MySQL连接jar包
mkdir -p /usr/share/java/# 重命名不不能带版本号cp mysql-connector-java-5.1.47.jar /usr/share/java/mysql-connector-java.jar
2.6 设置swappiness
echo "vm.swappiness=10" >> /etc/sysctl.conf# 检查设置是否生效sysctl -p
2.7 安装kerberos客户端

将kerberos相关离线包拷贝到节点目录下,然后安装

# 安装kerberos客户端yum localinstall -y --nogpgcheck \krb5-libs-1.15.1-50.el7.x86_64.rpm \krb5-workstation-1.15.1-50.el7.x86_64.rpm \libkadm5-1.15.1-50.el7.x86_64.rpm

分发配置文件

scp -P18822 -r /etc/krb5.conf root@10.130.128.121:/etc/

测试是否kerberos客户端是否安装成功

# 如果没有hdfs在KDC服务器添加一个kinit hdfs# 输入密码登录后,klist查看一下[root@localhost ~]# klistTicket cache: FILE:/tmp/krb5cc_0Default principal: hdfs@BI.COMValid starting       Expires              Service principal06/07/2021 17:42:06  06/08/2021 17:42:06  krbtgt/BI.COM@BI.COM        renew until 06/14/2021 17:42:06

注:集群启用了Kerberos认证时才有这一步操作。

3.添加Gateway节点3.1 CM首页-主机-Add Hosts

Add Hosts

3.2 选择 Add hosts to cluster

增加主机到集群

增加主机到集群

3.3 进入安装引导页面

点击继续之后等一会儿(几分钟)会进入安装引导页面

安装引导页面

3.4 根据主机ip和ssh端口进行搜索

匹配主机

3.5 配置自定义存储库

自定义存储库配置

自定义存储库即parcel包的存储位置,由于集群安装时在oscdh-101节点上装了http服务,同时将parcel包放在如下路径

自定义存储库

通过http可以查看parcel包位置,所以自定义存储库设置路径为

浏览器查看parcel包

3.6 设置JDK安装选项

JDK安装选项设置

3.7 设置登录gateway节点的用户名和密码

gateway节点用户名密码

注:安装 Cloudera 包需要有主机的 root 访问权限。此安装程序将通过 SSH 连接到您的主机,然后直接以 root 用户身份登录,或者以另一个具有变为 root 用户的无密码 sudo/pbrun 权限的用户身份登录。

3.8 进入parcels安装页面

parcels安装页面

安装失败了,重试之后还是不行,由于集群安装时,没有配置节点间免密,每个节点预先安装并启动了CM的agent和dameon,参照集群安装方式在每个节点上安装CM的agent和dameon。

3.9 在gateway节点部署CM的agent和daemons包

# 从其他节点拷贝scp -P18822 -r cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm root@10.130.128.121:/root/cdh631/scp -P18822 -r cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm root@10.130.128.121:/root/cdh631/# 安装rpm -ivh cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm --nodeps --forcerpm -ivh cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm --nodeps --force

修改/etc/cloudera-scm-agent/config.ini文件

# 设置为CM Server节点名server_host=oscdh-101

启动gateway节点的agent服务

# 启动service cloudera-scm-agent start# 查看状态service cloudera-scm-agent status
3.10 重新增加主机

点击增加主机,此时可以发现几个节点直接都可以看到了

添加主机

3.11 进入parcel包安装页面

parcel包安装

3.12 检查主机正确性

parcels包安装完毕后,会自动检查主机正确性,检查结果如下

检查主机正确性

解决透明大页面问题

Psycopg2的警告不必理会(集群选择的MySQL存储CM数据,Psycopg2是用来连接PostGreSQL数据库的),透明大页面问题解决方法如下(在所有提示主机执行):

# 临时生效echo never > /sys/kernel/mm/transparent_hugepage/defragecho never > /sys/kernel/mm/transparent_hugepage/enabled# 添加到初始化脚本,永久生效echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.localecho 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local

执行完毕后,重新运行检查主机正确性,运行完已无其他报错。

点击继续进入选择主机模板页面,选择前面创建好的Gateway模板

选择主机模板

3.13 开始安装Gateway

安装Gateway

安装完毕后点击继续,CM会自动部署客户端配置,部署完毕点击完成即可。

标签: #centos7cdh集群