Activation de Ranger pour Trino
- Accédez à l'interface Apache Ranger.
-
Remplacez le rôle de l'utilisateur Trino par
Admin
. Un rôle d'administrateur est requis pour télécharger des stratégies. -
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
. -
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
-
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 deREPOSITORY_NAME
car elle est nécessaire ultérieurement. -
Exécutez le script
enable-trino-plugin.sh
en tant qu'utilisateurroot
.[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
-
Accédez au répertoire de configuration de Trino
/etc/trino/conf
. -
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
- Accédez à l'interface Apache Ranger.
-
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
. -
Ajoutez une stratégie de niveau catalogue pour le catalogue
system
. Accordez les droits d'accèsselect
,use
etexecute
à tous les utilisateurs (USER
). -
Ajoutez une stratégie de niveau schéma pour le catalogue
system
, et les schémasinformation_schema
etruntime
. Accordez les droits d'accèsselect
etexecute
à tous les utilisateurs (USER
). -
Modifiez la stratégie
all function
et mettez à jour la conditionALLOW
pour accorder à tous les utilisateurs (USER
) le droit d'accès execute. - Accédez à l'interface Apache Ambari.
- Redémarrez Trino.
-
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 ========