美文网首页Hadoop实操
0110-如何给Kerberos环境下的CDH集群添加Gatew

0110-如何给Kerberos环境下的CDH集群添加Gatew

作者: Hadoop实操 | 来源:发表于2018-12-06 00:24 被阅读14次

    Fayson的github: https://github.com/fayson/cdhproject

    推荐关注微信公众号:“Hadoop实操”,ID:gh_c4c535955d0f,或者扫描文末二维码。

    1.文档编写目的

    Gateway节点又称为客户端节点,通常用作访问Hadoop集群的接口机。它主要会部署一些客户端的配置,脚本命令,比如HDFS的core-site.xml,hdfs-site.xml以及hadoop的操作命令。

    如果你使用的是Apache Hadoop,你只需要将hadoop相关服务的配置和脚本命令拷贝到客户端机器即可,但一旦集群的配置有所修改,你需要注意也同步到客户端机器。如果是CDH集群,客户端节点也会是Cloudera Manager管理的一台机器,它会被安装cloudera-scm-agent服务,以及CDH的Parcel,部署客户端配置Cloudera Manager会统一做,另外如果客户端机器出现异常,Cloudera Manager也会告警。

    增加一台Gateway节点,与安装CDH非常类似,你必须要注意一定要做好客户端机器的前置条件准备,参考《CDH安装前置准备》,否则会增加失败。前面Fayson介绍过在非Kerberos环境下部署Gateway节点,参考《如何给CDH集群增加Gateway节点》。本文则主要是介绍如何在Kerberos环境下给CDH集群增加Gateway节点。

    内容概述
    1.创建Gateway节点的主机模板
    2.Gateway节点的前置准备
    3.增加Gateway节点到集群并应用主机模板
    4.GateWay节点命令测试

    测试环境
    1.CDH5.13
    2.采用root用户操作
    3.CentOS6.5

    前置条件
    1.CDH5.13集群运行正常
    2.Gateway节点已准备,并准备好前置

    2.创建Gateway节点的主机模板

    1.从Cloudera Manager进入“主机模板”页面



    2.点击“创建”


    3.给模板命名,点击各个服务勾选相应的GateWay角色


    4.点击“创建”,确认创建成功.


    3.Gateway节点的前置准备

    前置准备请参考Fayson之前的文章《CDH安装前置准备》,主要包括以下步骤:
    1.确保OS的yum源可以正常使用,通过yum repolist命令可以查看到匹配的OS的所有包
    2.确保Cloudera Manager的yum源运行正常
    3.hosts文件配置,需要将Gateway节点的IP和hostname加入到CDH集群节点的hosts文件中,并同步到所有机器包括Gateway节点
    4.禁用SELinux
    5.关闭防火墙
    6.设置swap为10
    7.关闭透明大页面
    8.配置时钟同步
    <font color=red>请务必确保以上操作都已完成,并成功配置,否则接下来的增加节点操作会失败!</font>

    4.安装Kerberos客户端

    由于集群启用了Kerberos服务,所以需要在Gateway节点安装Kerberos客户端。
    1.在Gateway节点上执行如下命令

    [ec2-user@ip-172-31-31-212opt]$ sudo yum -y install krb5-libskrb5-workstation
    

    安装成功后查看安装的RPM包

    [ec2-user@ip-172-31-31-212opt]$ rpm -qa |grep krb
    krb5-workstation-1.15.1-8.el7.x86_64
    krb5-libs-1.15.1-8.el7.x86_64
    krb5-devel-1.15.1-8.el7.x86_64
    [ec2-user@ip-172-31-31-212 opt]$ 
    

    2.将CM集群中的krb5.conf文件拷贝至该Gateway节点

    [ec2-user@ip-172-31-22-86 ~]$ scp -i fayson.pem.txt /etc/krb5.conf ip-172-31-31-212:/home/ec2-user/
    

    3.在Gateway节点将krb5.conf文件拷贝至/etc目录下

    [ec2-user@ip-172-31-31-212 ~]$ sudo cp krb5.conf /etc/
    [ec2-user@ip-172-31-31-212 ~]$ sudo chown root. /etc/krb5.conf
    [ec2-user@ip-172-31-31-212 ~]$ ll /etc/krb5.conf
    -rw-r--r-- 1 root root 837 Dec  9 00:28 /etc/krb5.conf
    [ec2-user@ip-172-31-31-212 ~]$ 
    

    4.在GateWay节点测试Kerberos客户端是否部署成功

    [ec2-user@ip-172-31-31-212 ~]$ kinit -kt fayson.keytab fayson
    [ec2-user@ip-172-31-31-212 ~]$ klist
    Ticket cache: FILE:/tmp/krb5cc_1000
    Default principal: fayson@CLOUDERA.COM
    
    Valid starting       Expires              Service principal
    12/09/2017 00:31:53  12/10/2017 00:31:53  krbtgt/CLOUDERA.COM@CLOUDERA.COM
            renew until 12/16/2017 00:31:53
    [ec2-user@ip-172-31-31-212 ~]$
    

    有如上图所示则表示Kerberos客户端安装成功。

    5.增加Gateway节点的集群并应用主机模板

    1.进入“所有主机”页面



    2.点击“向群集添加主机”



    3.选择“经典向导”

    4.继续



    5.输入Gateway节点的IP或者hostname,点击搜索


    6.点击“继续”,选择“自定义存储库”,并输入Cloudera Manager的yum源http地址

    7.点击“继续”,勾选Java的两个选项

    8.点击“继续”,输入Gateway节点的ec2-user密码



    9.点击“继续”,等待cloudera-scm-agent在Gateway节点上安装

    安装完成点击“继续”

    10.点击“继续”,等待分发Parcel包并激活

    完成后,点击“继续”

    11.点击“继续”,进行主机检查

    12.完成主机检查,点击“继续”,选择主机模板

    13.点击“继续”,启动主机上的角色

    等待执行成功

    14.点击“继续”,部署客户端配置

    15.点击完成,查看主机列表GateWay节点的角色信息



    至此,给Kerberos环境下CDH集群增加新的Gateway节点完成。

    6.Gateway节点测试

    1.HDFS命令测试

    [ec2-user@ip-172-31-31-212 ~]$ hadoop fs -ls /
    

    2.HBase命令测试

    [ec2-user@ip-172-31-31-212 ~]$ hbase shell
    

    3.Hive命令测试

    [ec2-user@ip-172-31-31-212 ~]$ hive
    

    4.hadoop命令向集群提交作业

    [ec2-user@ip-172-31-31-212 ~]$ hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 5 5
    

    为天地立心,为生民立命,为往圣继绝学,为万世开太平。

    推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。


    原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操

    相关文章

      网友评论

        本文标题:0110-如何给Kerberos环境下的CDH集群添加Gatew

        本文链接:https://www.haomeiwen.com/subject/riogcqtx.html