Ranger für Trino aktivieren

  1. Öffnen Sie die Apache Ranger-Schnittstelle.
  2. Ändern Sie die Rolle des Trino-Benutzers in Admin. Die Admin-Rolle ist zum Herunterladen von Policys erforderlich.
  3. Führen Sie als Benutzer opc eine SSH-Verbindung zum ersten Masterknoten (mn0) des ODH-Clusters aus, auf dem der Trino-Koordinator installiert ist.
  4. Navigieren Sie zu trino-ranger-plugin.
    [opc@mn0 ~]$ cd /usr/odh/current/ranger-trino-plugin
    [opc@mn0 ranger-trino-plugin]$ ls
    disable-trino-plugin.sh  enable-trino-plugin.sh  install  install.properties  lib  ranger_credential_helper.py  ranger_credential_helper.pyc  ranger_credential_helper.pyo
    
  5. Aktualisieren Sie die folgenden Einträge in der Datei install.properties.
    POLICY_MGR_URL= https://hostname-of-node-where-ranger-runs:ranger-port
    REPOSITORY_NAME= trino_auth

    Standardmäßig wird Ranger auf dem ersten Utilityknoten (un0) ausgeführt.

    Wichtig

    Notieren Sie den Wert von REPOSITORY_NAME, da er später benötigt wird.
  6. Führen Sie das Skript enable-trino-plugin.sh als Benutzer root aus.
    [opc@mn0 ranger-trino-plugin]$ sudo su
    [root@mn0 ranger-trino-plugin] export JAVA_HOME=/etc/alternatives/jre_11_openjdk
    [root@mn0 ranger-trino-plugin]$ bash enable-trino-plugin.sh
  7. Navigieren Sie zum Trino-Konfigurationsverzeichnis /etc/trino/conf.
  8. Aktualisieren Sie die Datei access-control.properties, indem Sie die folgenden Einträge hinzufügen.
    $ cat /usr/lib/trino/etc/access-control.properties
    access-control.name=ranger
    ranger.principal=trino/trino-coordinator.example.com@BDSCLOUDSERVICE.ORACLE.COM
    ranger.keytab=/etc/security/keytabs/trino.service.keytab
  9. Öffnen Sie die Apache Ranger-Schnittstelle.
  10. Fügen Sie unter Trino einen neuen Service mit dem Namen als Servicenamen hinzu, den Sie als Repository-Namen in install.properties angegeben haben.
  11. Fügen Sie eine Policy auf Katalogebene für den Katalog system hinzu. Erteilen Sie allen Benutzern (USER) die Berechtigungen select, use und execute.
  12. Fügen Sie eine Policy auf Schemaebene für den Katalog system und die Schemas information_schema und runtime hinzu. Erteilen Sie allen Benutzern (USER) die Berechtigungen select und execute.
  13. Ändern Sie die Policy all function, und aktualisieren Sie die Bedingung ALLOW, um allen Benutzern (USER) die Ausführungsberechtigung zu erteilen.
  14. Öffnen Sie die Apache Ambari-Schnittstelle.
  15. Starten Sie Trino neu.
  16. Zeigen Sie das Trino-Serverlog an. Folgendes sollte angezeigt werden:
    2022-03-23T04:51:51.753Z    INFO    main    io.trino.security.AccessControlManager  -- Loaded system access control ranger --
     2022-03-23T04:51:52.254Z    INFO    main    io.trino.server.Server  ======== SERVER STARTED ========