zoukankan      html  css  js  c++  java
  • ranger0.5.4-开源安装配置

    ---恢复内容开始---

    一.Ranger编译

    安装Ranger之前要进行编译,首先下载源代码:

    命令步骤:

    git clone https://github.com/apache/incubator-ranger.git

    cd incubator-ranger

    git checkout ranger-0.5

    mvn clean compile package assembly:assembly install

    Target编译构建的包如下:

     

    注:这里ranger服务的相关服务和组件基本全部在了。公司网络编译大概需要4-5个小时。

    二.Range-Admin(控制台)安装

    Ranger在solr里存储日志,RangerAdmin UI依赖solr组件完成审计日志的查询,所以需要先安装和配置好Solr。

    注:目前(HDFS-Plugin)的测试日志审计时没选择Solr方式,但还是先配置好Standalone模式的solr.

    SolrCloud安装配置

    cd /root/incubator-ranger/security-admin/contrib/solr_for_audit_setup

    #打开install.properties文件,修改参数的值如下所示:

    vi install.properties

    JAVA_HOME=/root/jdk1.7.0_67

    SOLR_INSTALL=true

    SOLR_DOWNLOAD_URL=http://archive.apache.org/dist/lucene/solr/5.2.1/solr-5.2.1.tgz

    SOLR_INSTALL_FOLDER=/opt/solr

    SOLR_RANGER_HOME=/opt/solr/ranger_audit_server

    SOLR_DEPLOYMENT=standalone

    SOLR_RANGER_DATA_FOLDER=/opt/solr/ranger_audit_server/data

    SOLR_LOG_FOLDER=/var/log/solr/ranger_audits

    SOLR_MAX_MEM=2g

    #安装单节点的solr

    ./ setup.sh

    #按照如下安装提示启动、停止solr服务

    cat/opt/solr/ranger_audit_server/install_notes.txt

    #启动solr

    /opt/solr/ranger_audit_server/scripts/start_solr.sh

    #验证solr服务是否可正常使用

    lsof –i:6083

    node1:6083

     

    安装RangerAdmin

    命令步骤:

    tar –zxvf ranger-0.5.0-admin.tar.gz

    cd ranger-0.5.0-admin

    vim install.properties

    修改的参数如下:

    setup_mode=SeparateDB

    db_root_user=root

    db_root_password=root23

    db_host=localhost

    db_name=ranger

    db_user=root

    db_password=root123

    audit_store=db

    audit_db_name=ranger_audit

    audit_db_user=root

    audit_db_password=root123

    注:上面的db为提前安装好的mysql数据库,库不需要提前建好,ranger-admin程序会根据该配置文件自动连接并建库/表。

    Mysql版本亲测5.6版本可用,5.1,5.2等版本ranger报错。其他版本还没测试,建议直接安装5.6版本。

    配置文件修改完毕保存退出后:

    初始化设置Ranger Admin:执行./setup.sh

    执行完成后查看mysql:

     

    运行完毕后,自动建立的库/表。

    启动Ranger Admin:ranger-admin start

    验证是否安装成功:访问http://:6080;用admin/admin登录,出现登录界面,登录成功,说明成功!

     

    三.安装Ranger Usersync插件

    同步linux系统用户到ranger数据库,需要安装Ranger Usersync。安装步骤如下:

    tar –zxvf ranger-0.5.4-SNAPSHOT-usersync.tar.gz

    cd ranger-0.5.4-SNAPSHOT-usersync

    vim install.properties

    打开配置文件做如下配置:

    POLICY_MGR_URL=http://node1:6080

     

    SYNC_SOURCE=unix

     

    SYNC_INTERVAL=1

     

    logdir= /opt/ranger-usersync/ranger-0.5.4-SNAPSHOT-usersync/logs

    注:logdir 文件夹需要自己创建,不然初始化会报错。

    初始化设置Ranger Usersync:执行./setup.sh

    启动Ranger Usersync:./ranger-usersync-services.sh start

    验证是否安装成功:在Ranger控制台可以看到users中同步的用户信息。

     

    四:ranger-0.5.0-hdfs-plugin 组件安装

    tar -zxvf ranger-0.5.4-SNAPSHOT-hdfs-plugin.tar.gz

    cd ranger-0.5.4-SNAPSHOT-hdfs-plugin/

    vim install.properties

    打开配置文件做如下配置:

    POLICY_MGR_URL=http://localhost:6080

    REPOSITORY_NAME=hadoopdev

    XAAUDIT.DB.IS_ENABLED=true

    XAAUDIT.DB.FLAVOUR=MYSQL

    XAAUDIT.DB.HOSTNAME=localhost

    XAAUDIT.DB.DATABASE_NAME=ranger_audit

    XAAUDIT.DB.USER_NAME=root

    XAAUDIT.DB.PASSWORD=root123

    需要把Hadoop的配置文件conf放到/opt/ranger-hdfs-plugin/hadoop/conf/下面,执行软连接命令:

    Ln -s  /opt/hadoop/hadoop-2.7.0/etc/hadoop/*   /opt/ranger-hdfs-plugin/hadoop/conf/

    需要将HDFS Plugin内的jar和HADOOP包含的HDFSjar都指向/usr/local/hadoop/lib,执行如下命令:

    cp /opt/ranger-hdfs-plugin/ranger-0.5.4-SNAPSHOT-hdfs-plugin/lib/ranger-hdfs-plugin-impl/*.jar  /opt/hadoop/hadoop-2.7.0/share/hadoop/hdfs/lib/

     

    Ln -s  /opt/hadoop/hadoop-2.7.0/share/hadoop/hdfs/lib/*.jar   /opt/ranger-hdfs-plugin/hadoop/lib/

    注:/opt/ranger-hdfs-plugin/hadoop/lib需手动创建,如果不做此步会报错如下:

    ERROR: Unable to find the lib directory of component [hadoop];  dir [/opt/ranger-hdfs-plugin/hadoop/lib] not found.

    Exiting installation.

    修改hdfs掩码:

    <property>

    <name>fs.permissions.umask-mode</name>

    <value>077</value>

    </property>

    按此方法设置另外一个namenode节点。

    到此准备工作完成:

    启动插件:./enable-hdfs-plugin.sh

     

    插件显示启动成功,从新启动hadoop使ranger-hdfs插件生效。

    验证是否安装成功:

    a、          登录ranger admin

     

    可以看到新建的用户组和用户已经自动同步到ranger-admin

    b、          点击HDFS plugin 添加按钮,添加服务

    验证HDFS Plugin服务,这时登录Ranger的管理员界面验证下HDFS plugin是够加载成功,发现并没有.

    原因是安装HDFS plugin时install.properties文件里定义的REPOSITORY_NAME(值为hadoopdev)并未通过Ranger Admin在HDFS插件里的服务管理里注册成服务(名hadoopdev).

    解决方案:

    1 登录Ranger Adming

    2 点击HDFS plugin的添加按钮

     

     

    3 定义服务名为hadoopdev,提交其它信息后保存

     

     

    dfs.nameservices   ky

    dfs.ha.namenodes.ky    nn1,nn2

    dfs.namenode.rpc-address.ky.nn1  node1:9000

    dfs.namenode.rpc-address.ky.nn2   node2:9000

    dfs.client.failover.proxy.provider.ky   org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider

    注:此处是个大坑,网上的资料的都是namenode单节点的,直接在Namenode URL *一栏填写nanode节点就可以,我们是HA模式,所以我们这里应该按照我写的这样做,填写集群namespace,然后在高级设置(Add New Configurations)添加上HA相关信息。

    点击 Test Connection,弹出窗口Connected Successfully.说明插件安装成功

    c、          配置hdfs-policy

    linux环境下添加用户:useradd test

    root用户在hdfs下创建文件夹:hdfsdfs –mkdir /test

                                                    hdfs dfs –mkdir /test/sub

    登录Ranger Admin,在hadoopdev里添加Policy

     

    policy:目录/test 对用户xhhtest只设置读权限

    切换到test用户,执行:hdfs dfs –ls  /test

    读取到test下的sub文件夹,读取成功。

    Vim my.txt 创建一个新的测试文件。

    执行:hdfs dfs –put my.txt /test

    put: Permission denied: user=test, access=EXECUTE, inode="/test/my.txt":root:supergroup:drwx------

    权限不足,put操作失败。

    修改policy,对目录/test添加write权限给用户test。

     

    执行:hdfs dfs -put my.txt /xhhtest,执行成功。

     

    文件已上传成功。

    ---恢复内容结束---

  • 相关阅读:
    给 Advice 传递参数
    jenkins 部署问题
    Linux里的2>&1究竟是什么
    记一次 Spring 事务配置踩坑记
    Netty
    springboot logback 集成
    SpringBoot-服务端参数验证-JSR-303验证框架
    mysql 数据库 简单存储过程游标使用
    SQL Case when 的使用方法
    解决Unsupported major.minor version 51.0错误
  • 原文地址:https://www.cnblogs.com/hejianxin/p/9803830.html
Copyright © 2011-2022 走看看