Activation de Ranger pour Trino

  1. Accédez à l'interface Apache Ranger.
  2. Remplacez le rôle de l'utilisateur Trino par Admin. Un rôle d'administrateur est requis pour télécharger des stratégies.
  3. Connectez-vous via SSH au premier noeud maître (mn0) du cluster ODH sur lequel le coordinateur Trino est installé en tant qu'utilisateur opc.
  4. Accédez à 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. Mettez à jour les entrées suivantes dans le fichier install.properties.
    POLICY_MGR_URL= https://hostname-of-node-where-ranger-runs:ranger-port
    REPOSITORY_NAME= trino_auth

    Par défaut, Ranger est exécuté sur le premier noeud utilitaire (un0).

    Important

    Notez la valeur de REPOSITORY_NAME car elle est nécessaire ultérieurement.
  6. Exécutez le script enable-trino-plugin.sh en tant qu'utilisateur root.
    [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. Accédez au répertoire de configuration de Trino /etc/trino/conf.
  8. Mettez à jour le fichier access-control.properties en ajoutant les entrées suivantes.
    $ 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. Accédez à l'interface Apache Ranger.
  10. Ajoutez un nouveau service sous Trino en utilisant le nom de service que vous avez indiqué comme nom de référentiel dans install.properties.
  11. Ajoutez une stratégie de niveau catalogue pour le catalogue system. Accordez les droits d'accès select, use et execute à tous les utilisateurs (USER).
  12. Ajoutez une stratégie de niveau schéma pour le catalogue system, et les schémas information_schema et runtime. Accordez les droits d'accès select et execute à tous les utilisateurs (USER).
  13. Modifiez la stratégie all function et mettez à jour la condition ALLOW pour accorder à tous les utilisateurs (USER) le droit d'accès execute.
  14. Accédez à l'interface Apache Ambari.
  15. Redémarrez Trino.
  16. Affichez le journal de serveur Trino. Vous devez obtenir ce qui suit.
    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 ========