平顶山企业网站建设,大连网站建设价格,加工平台英语,创建直播平台目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger Part.14 安装YARNMR Part.15 安装HIVE Part.16 安装HBase Part.17 安装Spark2 Part.18 安装Flink Part.19 安装Kafka Part.20 安装Flume
十一、安装Kerberos
1.安装
服务端在hdp01上安装
yum install -y krb5-server libkadm5客户端在hdp01-05上安装可选后面ambari启用kerberos的时候也会安装
ansible all -m yum -a namekrb5-workstation statepresent2.修改krb5.conf
在hdp01上修改配置文件/etc/krb5.conf
includedir /etc/krb5.conf.d/[logging]default FILE:/var/log/krb5libs.logkdc FILE:/var/log/krb5kdc.logadmin_server FILE:/var/log/kadmind.log[libdefaults]dns_lookup_realm falseticket_lifetime 24hrenew_lifetime 7dforwardable truerdns falsepkinit_anchors /etc/pki/tls/certs/ca-bundle.crtdefault_realm HDP315.COMdefault_ccache_name KEYRING:persistent:%{uid}[realms]HDP315.COM {kdc hdp01.hdp.comadmin_server hdp01.hdp.com}[domain_realm].hdp315.com HDP315.COMhdp315.com HDP315.COM
3.修改kdc配置
修改/var/kerberos/krb5kdc/kdc.conf
[kdcdefaults]kdc_ports 88kdc_tcp_ports 88[realms]HDP315.COM {master_key_type aes256-ctsacl_file /var/kerberos/krb5kdc/kadm5.acldict_file /usr/share/dict/wordsadmin_keytab /var/kerberos/krb5kdc/kadm5.keytabsupported_enctypes aes256-cts:normal aes128-cts:normal des3-hmac-sha1:normal arcfour-hmac:normal camellia256-cts:normal camellia128-cts:normal des-cbc-md5:normal des-cbc-crc:normal}支持的加密方式务必要删掉des-hmac-sha1:normal否则后续添加hdfs等服务会报WARNINGnamenode启动和HA时都会出现问题 WARN security.UserGroupInformation: Not attempting to re-login since the last re-login was attempted less than 60 seconds before server.AuthenticationFilter (AuthenticationFilter.java:doFilter(608)) - Authentication exception: GSSException: Failure unspecified at GSS-API level (Mechanism level: Encryption type DES3 CBC mode with SHA1-KD is not supported/enabled) 修改/var/kerberos/krb5kdc/kadm5.acl给数据库管理员admin添加ACL权限*代表全部
*/adminHDP315.COM *4.创建数据库
创建数据库其中HDP315.COM与/etc/krb5.conf对应且需要设置管理员密码lnydLNsy115该命令会在/var/kerberos/krb5kdc/创建principal数据库。
kdb5_util create -r HDP315.COM
ll /var/kerberos/krb5kdc/如果遇到数据库已经存在的提示且需要重建数据库时可以把/var/kerberos/krb5kdc/目录下的principal的相关文件都删除掉。 启用服务
systemctl start krb5kdc
systemctl start kadmin
systemctl status krb5kdc
systemctl status kadmin创建管理员admin以及keyta文件/var/kerberos/krb5kdc/kadm5.keytab kdc配置文件中指定了管理员的密码文件为kadmin5.keytab因此新建账号admin密码存放在了kadmin5.keytab中相当于获得了管理员身份管理员的权限则由kadmin.acl中进行控制。账号需要为XXX/adminHDP315.COM对应到kadmin5.acl中的格式。
kadmin.local
addprinc -pw lnydLNsy115 admin/adminHDP315.COM
ktadd -k /var/kerberos/krb5kdc/kadm5.keytab -norandkey admin/adminHDP315.COM确认是否可以登录分别用密码和keytab两种方式登录
kinit admin/adminHDP315.COM
klist
kdestroy
kinit -kt /var/kerberos/krb5kdc/kadm5.keytab admin/adminHDP315.COM
klist进一步验证是否有管理员权限用kadmin登录成功则表示权限无问题
kadmin -p admin/adminHDP315.COM -k -t /var/kerberos/krb5kdc/kadm5.keytab5.Abmari启用Kerberos
(1)安装JCE
对于Kerberos系统来说默认使用的AES-256来进行加密。在集群启用Kerberos之前必须在Ambari集群上的每个节点上都装有JCE。 如果使用的是Oracle JDK则必须在群集中的所有主机上分发和安装JCE包括Ambari Server安装JCE后需要重新启动Ambari Server如果使用的是OpenJDKOpenJDK的某些发行版会自动提供无限强度的JCE因此不需要安装JCE。 JCE与JDK版本是对应的需要根据JDK的版本来选择JCE版本下载JCE的zip包并解压到$JAVA_HOME/jre/lib/security目录下。
unzip /opt/jce_policy-8.zip -d /opt/
cd /root/ansible/
ansible all -m copy -a src/opt/UnlimitedJCEPolicyJDK8/local_policy.jar dest/usr/local/jdk1.8.0_351/jre/lib/security/
ansible all -m copy -a src/opt/UnlimitedJCEPolicyJDK8/US_export_policy.jar dest/usr/local/jdk1.8.0_351/jre/lib/security/重启ambari server
ambari-server restart
ambari-server status(2)启用Kerberos
确认相关准备工作是否完成并勾选 安装方式说明
选项说明Using an existing MIT KDCAmbari服务器和集群主机都可以通过网络访问KDC和KDC管理主机。手头有KDC管理凭证。Install a new MIT KDC安装一个新的MIT KDCUsing an existing IPA使用现有的IPAUsing an existing ADAmbari服务器和集群主机可以通过网络访问域控制器并能够解析域控制器的DNS名称。已配置LDAP连接。服务主体的Active Directory用户容器已经创建并准备就绪。例如“OUHadoop,OUPeople,dcapache,dcorg”在前面提到的用户容器上Active Directory管理凭据具有“创建、删除和管理用户帐户”的委托控制。Using manual Kerberos setup集群主机可以通过网络访问KDC。每个集群主机上都安装了Kerberos客户端实用程序(如kinit)。已经在Ambari服务器主机和集群中的所有主机上设置了Java加密扩展(JCE)。在完成向导之前Service和Ambari主体将在KDC中手动创建。在完成向导之前服务和Ambari主体的按键将手动创建并分发到集群主机。
配置Kerberos信息 【KDC信息】 KDC hostshdp01.hdp.com Realm nameHDP315.COM Domainshdp315.com 【Kadmin】 Kadmin hosthdp01.hdp.com Admin principaladmin/adminHDP315.COM Admin passwordlnydLNsy115 在集群启用Kerberos后会自动创建出已安装服务如zookeeper等的principal按照约定服务账号是principal/instanceREALM格式用户账号是principalREALM后续所有服务的操作安装/卸载等都需要用对应的principal来进行认证以增强安全性keytab文件存储在/etc/security/keytab/目录下
6.确认开启kerberos后的zk配置
查看zk的server配置/etc/zookeeper/conf/zookeeper_jaas.conf
Server {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTabtrue
storeKeytrue
useTicketCachefalse
keyTab/etc/security/keytabs/zk.service.keytab
principalzookeeper/hdp01.hdp.comHDP315.COM;
};配置中指定了连接ZooKeeper的principal和keytab要求因此后面再用客户端zkCLi连接时需要以此凭证连接
7.常用指令
(1)Kerberos管理员
登录Kerberos server
kadmin.local 用户名列出所有Kerberos用户
kadmin.local -q listprincs添加Kerberos用户
kadmin.local -q addprinc [options] principaloptions主要为 -randkey随机生成一个值作为principal的key -pw设置密码此选项一般用在脚本中 修改Principal用户信息
kadmin.local -q modprinc [options] principal修改Principal密码
kadmin.local -q change_password [-randkey] [-keepold] [-e keysaltlist] [-pw password] principal删除Principal信息
kadmin.local -q delete_principal [-force] principal生成keytab认证文件
kadmin.local -q ktadd [-k[eytab] keytab] [-q] [-e keysaltlist] [-norandkey] [principal | -glob princ-exp](2)Kerberos普通用户
获取票据credentials
klist列出所有的Kerberos票据credentials信息
klist -k /root/tenant5.keytab更新Kerberos票据credentials信息更新后可以看到Expires时间发生变化
kinit -R -kt keytab principal销毁kerberos票据credentials
kdestroy