TrinoでのRangerの有効化
- Apache Rangerインタフェースにアクセスします。
-
Trinoユーザーのロールを
Admin
に変更します。ポリシーをダウンロードするには、Adminロールが必要です。 -
opc
ユーザーとして、TrinoコーディネータがインストールされているODHクラスタの最初のマスター・ノード(mn0)にSSH接続します。 -
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
-
install.properties
ファイルの次のエントリを更新します。POLICY_MGR_URL= https://hostname-of-node-where-ranger-runs:ranger-port REPOSITORY_NAME= trino_auth
デフォルトでは、Rangerは最初のユーティリティ・ノード(
un0
)で実行されます。重要
REPOSITORY_NAME
の値は後で必要になるため、書き留めておいてください。 -
root
ユーザーとしてenable-trino-plugin.sh
スクリプトを実行します。[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
-
Trino構成ディレクトリ
/etc/trino/conf
に移動します。 -
次のエントリを追加して、
access-control.properties
ファイルを更新します。$ 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
- Apache Rangerインタフェースにアクセスします。
-
install.properties
でリポジトリ名として指定したものと同じサービス名を使用して、「Trino」で新しいサービスを追加します。 -
system
カタログのカタログ・レベル・ポリシーを追加します。すべてのユーザー(USER
)に対してselect
、use
およびexecute
権限を付与します。 -
system
カタログと、information_schema
およびruntime
スキーマのスキーマ・レベル・ポリシーを追加します。すべてのユーザー(USER
)に対してselect
およびexecute
権限を付与します。 -
all function
ポリシーを変更し、ALLOW
条件を更新してすべてのユーザー(USER
)に実行権限を付与します。 - Apache Ambariインタフェースにアクセスします。
- Trinoを再起動します。
-
Trinoサーバー・ログを表示します。次のように表示されます。
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 ========