建设网站用英文怎么说,企业网站建设的本质及特点,众筹网站开发周期,免费做问卷的网站目录 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
十三、安装Ranger
1.安装服务
(1)Choose Services (2)Assign Masters (3)Assign Slaves and Clients
选择不安装Ranger Tagsync
(4)Customize Services
设置RANGER ADMIN DB FLAVOR选择MySQL依据ambari使用的数据库来定 Ranger DB name设置ranger在数据库中的DB默认ranger Ranger DB hosthdp01.hdp.com选择安装MySQL的主机名 Ranger DB username设置ranger用户名默认rangeradmin Ranger DB password设置ranger密码此处设置lnydLNsy115 JDBC connect string for a Ranger database自动生成 DBA username填入数据库连接用户名默认root DBA password填入数据库连接密码此处设置lnydLNsy115 JDBC connect string数据库连接前面的信息填写好后会自动生成 在hdp01上设置ambari的MySQL JDBC
ambari-server setup --jdbc-dbmysql --jdbc-driver/opt/mysql-connector-java-5.1.49.jar然后在ambari界面点击“TEST CONNECTION”进行测试
设置RANGER USER INFO Sync Source选择“LDAP/AD” 子选项卡COMMON CONFIGS LDAP/AD URLldap://192.168.111.222:389 Bind Usercnadmin,dchdp315,dccom Bind User Password设置为lnydLNsy115 子选项卡USER CONFIGS Username Attributeuid User Object ClassposixAccount User Search BaseouPeople,dchdp315,dccom User Search Filtercn* User Search Scopesub User Group Name AttributememberUid 子选项卡GROUP CONFIGS Group Member AttributememberUid对应template.ldif中的memberUid属性 Group Name Attributecn Group Object ClassposixGroup Group Search BaseouGroup,dchdp315,dccom Group Search Filtercn* 设置RANGER AUDIT 未安装solr关闭向Solr审计功能将审计日志存储到HDFS 设置ADVANCED 此处的用户密码统一设置为lnydLNsy115 ADMIN Settings中的Ldap Base DN改为dchdp315,dccom Ranger Settings中的External URL设置为http://hdp02.hdp.com:6080此处设置为hdp01即可不应该设置为192.168.111.222的vIP否在调用相关URL时会使用principalHTTP/192.168.111.222HDP315.COM因为没有相关账号而报错401
(5)Review (6)Install,Start and Test (7)Summary 2.安装plugin
在CONFIGS-RANGER PLUGIN中启用对应服务的Plugin 启用Plugin后对应的服务hdfs重启
3.测试
(1)用户同步测试
在OpenLDAP上新建测试账号tenant2
ldapadd -x -w lnydLNsy115 -D cnadmin,dchdp315,dccom -f /root/template.ldif在ambari上重启UserSync服务以重新同步正常会周期性同步为了即时同步可重启该服务 登录Ranger界面http://192.168.111.201:6080查看用户确认OpenLDAP账号已经同步至Ranger上
(2)权限测试
以tenant1和tenant2为测试对象设置tenant1在hdfs上的目录为/testhdfs/tenant1tenant2在hdfs上的目录为/testhdfs/tenant2在Ranger上未设置任何权限策略的情况下 先以hdfs管理员账号nn/hdp01.hdp.comHDP315.COM登录kdc然后创建对应的目录和赋权
kinit -kt /etc/security/keytabs/nn.service.keytab nn/hdp01.hdp.comHDP315.COM
hdfs dfs -mkdir -p /testhdfs/tenant1
hdfs dfs -mkdir -p /testhdfs/tenant2
hdfs dfs -chmod 777 /testhdfs/tenant1
hdfs dfs -chmod 777 /testhdfs/tenant2
hdfs dfs -ls /testhdfsLDAP上已经有tenant1和tenant2两个账号还需要在kerberos中同步建立好对应的账号
kadmin.local
addprinc -randkey tenant1
addprinc -randkey tenant2
ktadd -kt /root/keytab/tenant1.keytab tenant1
ktadd -kt /root/keytab/tenant2.keytab tenant2分别以tenant1和tenant2账号登录kdc后上传测试文件到自身的目录下
kinit -kt /root/keytab/tenant1.keytab tenant1
hdfs dfs -put /root/file1 /testhdfs/tenant1/
hdfs dfs -ls /testhdfs/tenant1
kdestroy
kinit -kt /root/keytab/tenant2.keytab tenant2
hdfs dfs -put /root/file2 /testhdfs/tenant2/
hdfs dfs -ls /testhdfs/tenant2分别用两个账号查看对方目录下的文件内容目前是以hdfs自身的权限控制为准即777权限因此可以查看
kinit -kt /root/keytab/tenant1.keytab tenant1
hdfs dfs -cat /testhdfs/tenant2/file2
kdestroy
kinit -kt /root/keytab/tenant2.keytab tenant2
hdfs dfs -cat /testhdfs/tenant1/file1在Ranger上添加策略 设置完成后再次分别以tenant1和tenant2登录并查看权限情况
kinit -kt /root/keytab/tenant1.keytab tenant1
hdfs dfs -cat /testhdfs/tenant1/file1
hdfs dfs -cat /testhdfs/tenant2/file2
kinit -kt /root/keytab/tenant2.keytab tenant2
hdfs dfs -cat /testhdfs/tenant1/file1
hdfs dfs -cat /testhdfs/tenant2/file2说明权限已经生效账号仅能查看自身目录下的文件其他目录权限已被Ranger锁死
(3)联合授权
Ranger为HDFS提供联合授权模型
用于HDFS的Ranger插件检查Ranger策略如果存在策略则授予用户访问权限。如果Ranger中不存在策略则Ranger将默认使用HDFSPOSIX或HDFS ACL中的本机权限模型。 联合模型适用于Ranger中的HDFS和Yarn服务。对于其他服务例如Hive或HBaseRanger作为唯一授权者运行这意味着只有Ranger策略生效。 在HDFS中CONFIGS-ADVANCED-Advanced ranger-hdfs-security中设置 xasecure.add-hadoop-authorizationtrue表示启用联合授权即如果不存在权限则由hdfs权限控制false表示禁用联合授权hdfs的权限不再生效而是仅有Ranger来控制。
配置完成后重启hdfs服务 禁用Ranger上的tenant1策略然后用tenant1和tenant2账号分别查看因为/testhdfs/tenant1上没有策略虽然hdfs权限为777但因为非联合授权因此仍被Ranger拒绝访问而/testhdfs/tenant2在Ranger有策略控制因此tenant2仍有权限查看
(4)查看审计日志
配置审计日志在hdfs上存储路径为hdfs://hdp315/ranger/audit将所有租户的执行行为进行记录
kinit -kt /etc/security/keytabs/nn.service.keytab nn/hdp01.hdp.comHDP315.COM
hdfs dfs -cat /ranger/audit/hdfs/20230303/hdfs_ranger_audit_hdp02.hdp.com.1.log4.启用HA
Ambari上启用Ranger HA需要提前准备好负载均衡器ambari上只是在另外一台服务器上配置好Ranger实现两台的高可用关系但前面的负载不是Ambari来负责管理。前面的负载采用KeepAlivedHAProxy实现。 复用在OpenLDAP中的KeepAlivedHAProxy
(1)配置HAProxy
在hdp04和hdp05上修改配置文件中的部分内容/etc/haproxy/haproxy.cfg
#---------------------------------------------------------------------
# main frontend which proxys to the backends
#---------------------------------------------------------------------
frontend tcp_389_openldapbind *:389mode tcpstats uri /haproxy?statsdefault_backend tcp_389_openldapfrontend http_6080_rangerbind *:6080http-request set-header X-Forwarded-Proto httpstats uri /haproxy?statsdefault_backend http_6080_ranger#---------------------------------------------------------------------
# round robin balancing between the various backends
#---------------------------------------------------------------------
backend tcp_389_openldapmode tcpbalance roundrobinserver server1 hdp01.hdp.com:389 check weight 100server server2 hdp02.hdp.com:389 check weight 1backend http_6080_rangermode httpbalance roundrobincookie LB insertserver server1 hdp01.hdp.com:6080 maxconn 200 weight 10 cookie 1 check inter 5000 rise 3 fall 3server server2 hdp02.hdp.com:6080 maxconn 200 weight 10 cookie 2 check inter 5000 rise 3 fall 3启动服务
systemctl restart haproxy
systemctl status haproyx(2)Ambari上启用HA 确认状态