安装和配置Sentry
本文主要记录安装和配置Sentry的过程,关于Sentry的介绍,请参考Apache Sentry架构介绍。
1. 环境说明系统环境:
操作系统:CentOs 6.6 Hadoop版本:CDH5.4 运行用户:root这里,我参考使用yum安装CDH Hadoop集群一文搭建了一个测试集群,并选择cdh1节点来安装sentry服务。
2. 安装在cdh1节点上运行下面命令查看Sentry的相关组件有哪些:
$ yum list sentry* sentry.noarch 1.4.0+cdh5.4.0+155-1.cdh5.4.0.p0.47.el6 @cdh sentry-hdfs-plugin.noarch 1.4.0+cdh5.4.0+155-1.cdh5.4.0.p0.47.el6 @cdh sentry-store.noarch 1.4.0+cdh5.4.0+155-1.cdh5.4.0.p0.47.el6 @cdh
以上组件说明:
3. 配置
参考sentry-site.xml.service.template,来修改Sentry的配置文件 /etc/sentry/conf/sentry-site.xml。
配置 sentry service 相关的参数property name sentry.service.admin.group /name value impala,hive,solr,hue /value /property property name sentry.service.allow.connect /name value impala,hive,solr,hue /value /property property name sentry.verify.schema.version /name value false /value /property property name sentry.service.reporting /name value JMX /value /property property name sentry.service.server.rpc-address /name value cdh1 /value /property property name sentry.service.server.rpc-port /name value 8038 /value /property property name sentry.service.web.enable /name value true /value /property
如果需要使用kerberos认证,则还需要配置以下参数:
property name sentry.service.security.mode /name value kerberos /value /property property name sentry.service.server.principal /name value /value /property property name sentry.service.server.keytab /name value /value /property配置 sentry store 相关参数
sentry store可以使用两种方式,如果使用基于SimpleDbProviderBackend的方式,则需要设置jdbc相关的参数:
property name sentry.store.jdbc.url /name value jdbc:postgresql://cdh1:5432/sentry /value /property property name sentry.store.jdbc.driver /name value org.postgresql.Driver /value /property property name sentry.store.jdbc.user /name value sentry /value /property property name sentry.store.jdbc.password /name value sentry /value /property
Sentry store的组映射sentry.store.group.mapping有些两种配置方式:org.apache.sentry.provider.common.HadoopGroupMappingService或者org.apache.sentry.provider.file.LocalGroupMapping,当使用后者的时候,还需要配置sentry.store.group.mapping.resource参数,即设置Policy file的路径。
property name sentry.store.group.mapping /name value org.apache.sentry.provider.common.HadoopGroupMappingService /value /property property name sentry.store.group.mapping.resource /name value /value description Policy file for group mapping. Policy file path for local group mapping, when sentry.store.group.mapping is set to LocalGroupMapping Service class. /description /property配置客户端的参数:
配置Sentry和hive集成时的服务名称,默认值为HS2,这里设置为server1:
property name sentry.hive.server /name value server1 /value /property初始化数据库
如果配置 sentry store 使用 posrgres 数据库,当然你也可以使用其他的数据库,则需要创建并初始化数据库。数据库的创建过程,请参考 Hadoop自动化安装shell脚本,下面列出关键脚本。
yum install postgresql-server postgresql-jdbc -y ln -s /usr/share/java/postgresql-jdbc.jar /usr/lib/hive/lib/postgresql-jdbc.jar ln -s /usr/share/java/postgresql-jdbc.jar /usr/lib/sentry/lib/postgresql-jdbc.jar su -c "cd ; /usr/bin/pg_ctl start -w -m fast -D /var/lib/pgsql/data" postgres su -c "cd ; /usr/bin/psql --command \"create user sentry with password sentry; \" " postgres su -c "cd ; /usr/bin/psql --command \"drop database sentry;\" " postgres su -c "cd ; /usr/bin/psql --command \"CREATE DATABASE sentry owner=sentry;\" " postgres su -c "cd ; /usr/bin/psql --command \"GRANT ALL privileges ON DATABASE sentry TO sentry;\" " postgres su -c "cd ; /usr/bin/pg_ctl restart -w -m fast -D /var/lib/pgsql/data" postgres
然后,修改 /var/lib/pgsql/data/pg_hba.conf 内容如下:
# TYPE DATABASE USER CIDR-ADDRESS METHOD # "local" is for Unix domain socket connections only local all all md5 # IPv4 local connections: #host all all 0.0.0.0/0 trust host all all 127.0.0.1/32 md5 # IPv6 local connections: #host all all ::1/128 nd5
如果是第一次安装,则初始化 sentry 的元数据库:
$ sentry --command schema-tool --conffile /etc/sentry/conf/sentry-site.xml --dbType postgres --initSchema Sentry store connection URL: jdbc:postgresql://cdh1/sentry Sentry store Connection Driver : org.postgresql.Driver Sentry store connection User: sentry Starting sentry store schema initialization to 1.4.0-cdh5-2 Initialization script sentry-postgres-1.4.0-cdh5-2.sql Connecting to jdbc:postgresql://cdh1/sentry Connected to: PostgreSQL (version 8.4.18) Driver: PostgreSQL Native Driver (version PostgreSQL 9.0 JDBC4 (build 801)) Transaction isolation: TRANSACTION_REPEATABLE_READ Autocommit status: true 1 row affected (0.002 seconds) No rows affected (0.004 seconds) Closing: 0: jdbc:postgresql://cdh1/sentry Initialization script completed Sentry schemaTool completed
如果是更新,则执行:
$ sentry --command schema-tool --conffile /etc/sentry/conf/sentry-site.xml --dbType postgres --upgradeSchema4. 启动
在cdh1上启动sentry-store服务:
$ /etc/init.d/sentry-store start
查看日志:
$ cat /var/log/sentry/sentry-store.out
查看sentry的web监控界面http://cdh1:51000/。
Sentry 10 升级到 Sentry 20 Sentry 是一个用于监控前后端出错和统计上报分析一体的一个开源软件系统。 Sentry 适合中等规模以上的网站的开发及生产线上出错管理。Sentry可以适应多租户多项目的管理。功能很完善。
ambari自定义服务集成,你还没掌握吗? 之前,在 github 上开源了 ambari-Kylin 项目,可离线部署,支持 hdp 2.6+ 及 hdp 3.0+ 。github 地址为:https://github.com/841809077/ambari-Kylin ,欢迎 star 。 这段时间,陆续有不少朋友通过公众号联系到我,问我相关的集成步骤。周末休息,索性将 ambari 自定义服务集成的原理给大家整理出来。 它其实不难,但是网络上并没有多少这方面的资料分享,官方也很少,所以学习门槛就稍微高了一些。但你如果能持续关注我,我相信你能快速上手。
安装 OushuDB Ambari 插件 我们假设用户已经安装了HDP Ambari,并且已经安装了HDFS和Zookeeper。安装步骤可以参考: ● https://docs.hortonworks.com/HDPDocuments/Ambari/Ambari-2.4.2.0/index.html ● https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.5.3/index.html
Sentry到Ranger—简明指南 Cloudera Data Platform (CDP)通过合并来自Cloudera Enterprise Data Hub (CDH)和Hortonworks Data Platform (HDP)这两个传统平台的技术,为客户带来了许多改进。CDP 包括新功能以及一些先前存在的安全和治理功能的替代方案。CDH 用户的一项重大变化是将 Sentry 替换为 Ranger 以进行授权和访问控制。
雨客 微博@JavaChen,这里的所有博客文章来自http://blog.javachen.com/。
相关文章
- 【Python3网络爬虫开发实战】1.2.6-aiohttp的安装
- 记 Mac Pro 系统升级后,编译安装 PHP-5.6.28 / PHP-7.0 报错修复过程
- 【主机】vnc 介绍以及安装时注意的问题
- 华为超聚变2288H V5 服务器安装Windows系统后 PCI数据捕获和信号处理控制器 出现感叹号
- centos7: vsftpd安装及启动: ftp配置(以虚拟用户为例)
- Windows 安装配置 Apache .zip
- SQOOP安装部署
- Ubuntu 14.04下NFS安装配置
- 【学习总结】快速上手Linux玩转典型应用-第7章-WebServer安装和配置讲解
- windows环境安装和配置Apache-Tomcat7.0
- macos:安装homebrew( Homebrew 4.0.10-119 / macos 12.4)
- Ubuntu20.04安装、配置openvas 9
- Linux - VNC的安装、配置与使用
- linux(centos8):安装分布式事务服务seata(file单机模式,seata 1.3.0/centos 8.2)
- 如何使用yum来下载RPM包而不进行安装
- CICD详解(八)——gitlab安装与配置
- golang安装:GOPATH环境变量无需配置说明(>1.13)
- CentOS7/8安装容器管理工具Podman
- pip install jieba安装慢,安装失败,安装不解决办法
- 〖Python零基础入门篇②〗- Python编程环境搭建 - Pycharm 简介、安装与配置
- Nginx 负载均衡服务器的下载与安装 【window10】
- windows下nvm安装node之后npm命令找不到问题解决办法
- 【Linux之Shell脚本实战】Centos最小化安装环境配置脚本
- 安装Google三件套
- Pytest自动化测试框架教程17-安装和使用插件编写
- Arch Linux 安装、配置、美化和优化
- 监控服务器配置(一)-----Prometheus安装配置
- Tomcat 安装与配置
- Linux复习资料——一篇文章学会安装Java(免环境配置)以及tomcat服务
- s16.基于镜像仓库一键安装containerd脚本
- Windows 安装 Zabbix Agent 5.0.10