Rangerインポートおよびエクスポートの構成
Big Data ServiceでRanger構成をインポートおよびエクスポートするためのRangerインポートおよびエクスポート・ブートストラップ・ヘルパー機能が存在します。
Rangerインポートおよびエクスポートのブートストラップ・ヘルパー関数は、クラスタの回復性、リカバリ操作、およびRangerポリシーをあるクラスタから別のクラスタに移動する場合に役立ち、いくつかのシナリオで役立ちます。
- 障害回復
- 新しいクラスタを作成し、
import_ranger_policies
ヘルパー関数を使用して、古いクラスタに存在するすべてのRangerポリシーを新しいクラスタにインポートできます。 - テスト環境または開発環境
- 既存のクラスタRangerポリシーを使用してテスト環境または開発環境を作成するには、
export_ranger_policies
ヘルパー関数を使用して、ソース・クラスタに存在するRangerポリシーをすべてJSONファイルにエクスポートします。import_ranger_policies
ヘルパー・ファンクションを使用すると、すべてのポリシーを宛先クラスタにインポートできます。
Rangerのインポートおよびエクスポート操作を実行するには、AmbariとRangerの管理資格証明が同じである必要があります。
ブートストラップ・スクリプトを実行するには、「ブートストラップ・スクリプトの実行」を参照してください。
ビッグ・データ・サービス3.1.1より前に古いRangerポリシーをインポートするには、ポリシー内のすべてのリスト・ユーザーが使用可能であることを確認してください。
Ranger importおよびexportヘルパー関数の詳細は、次を参照してください。
レンジャーのインポートおよびエクスポート・ヘルパー関数
Rangerインポートおよびエクスポートのブートストラップ・スクリプト構成の詳細は、「Rangerインポートおよびエクスポートの構成」を参照してください。
Rangerインポートおよびエクスポート・ヘルパー関数の例は、Rangerインポートおよびエクスポート構成の例を参照してください。
ブートストラップ・スクリプトを実行するには、「ブートストラップ・スクリプトの実行」を参照してください。
Helper関数 | 機能 |
---|---|
export_ranger_policies (ranger_config_dict) |
このヘルパー関数は、複数の形式でレンジャー・ポリシーをエクスポートします。(JSON、CSV、EXCEL)。ただし、 例:
Ranger-Export-Config-Info:
オプションのパラメータ:
Rangerポリシーをエクスポートするbootstrap-scriptジョブが成功すると、Rangerはoutput_folder_pathの場所にある指定されたフォーマット・ファイルにポリシーをエクスポートします。 |
import_ranger_policies (ranger_config_dict) |
このヘルパー関数は、指定されたJSON入力ファイルを使用してRangerポリシーをインポートします。 例: ranger_config_dict = { "input_file_path": "/tmp/Ranger_policies.json", # Mandatory param for import operation "service_list": "hdfs, kafka" # optional param } Ranger-Import-Config-Info: input_file_path : ソース・クラスタでRanger-policy-export 関数によって作成されたRanger_policies.json ファイルへのパス。エクスポートされたJSONファイルは、ターゲット・クラスタのローカル・パスまたはオブジェクト・ストアの場所に配置できます。(PAR URL)オプションのパラメータ:
Rangerポリシーをインポートするbootstrap-scriptジョブが成功すると、Rangerは指定された |
restore_ranger_policies (ranger_config_dict) |
このヘルパー関数は、バックアップ・ファイルを使用してRangerポリシーをリストアします。Rangerポリシーのリストアに使用するバックアップ・ファイルを渡すことができます。デフォルトでは、このファンクションは、バックアップ・ファイル・ディレクトリに存在する最新のバックアップ・ファイルを使用してRangerポリシーをリストアします。 例
Ranger-Restore-Config-Info: restore_policies_input_file_path: Rangerポリシーのリストアに使用するオプションのパラメータ Rangerポリシーをリストアするbootstrap-scriptジョブが成功すると、Rangerは指定された |
cleanup_ranger_policy_backup_files (ranger_config_dict) |
このヘルパー・ファンクションは、ファイル・リストまたはパターンを使用してRangerポリシー・バックアップ・ファイルを削除します。 例:
Ranger-Policy-Cleanup-Config-Info:
例:
|
Rangerのインポートおよびエクスポート構成の例
Rangerインポートおよびエクスポートのヘルパー関数の詳細は、Rangerインポートおよびエクスポートのヘルパー関数を参照してください。
#!/usr/bin/env python2.7
def execute(ranger_policy_helper):
logger = ranger_policy_helper.getLogger()
logger.info('Testing Ranger export-import functions')
ranger_config_dict = {
"input_file_path": "<Ranger_Policies.json_input_filepath>", # Mandatory param, Input file to import policies.
"service_list": "hdfs,hive" # Optional param, imports policies only from hdfs and hive services.
}
ranger_policy_helper.import_ranger_policies(ranger_config_dict)
#!/usr/bin/env python2.7
def execute(ranger_policy_helper):
logger = ranger_policy_helper.getLogger()
logger.info('Testing Ranger export-import functions')
ranger_config_dict = {
"output_folder_path": "/tmp", # Mandatory param, exports output file to /tmp folder
"service_list": "hdfs,hive" # Optional param, exports policies only from hdfs and hive services.
}
ranger_policy_helper.export_ranger_policies(ranger_config_dict)
#!/usr/bin/env python2.7
def execute(ranger_policy_helper):
logger = ranger_policy_helper.getLogger()
logger.info('Testing Ranger export-import functions')
# Restores Ranger policies from the provided input file. If User don't provide this param, restore-function restores Ranger policies using latest backup file present in the backup files directory.
ranger_config_dict = {
"restore_policies_input_file_path": "/tmp/Ranger_Policies.json" # Optional param
}
ranger_policy_helper.restore_ranger_policies(ranger_config_dict)
#!/usr/bin/env python2.7
def execute(ranger_policy_helper):
logger = ranger_policy_helper.getLogger()
logger.info('Testing Ranger export-import functions')
ranger_config_dict = {
"ranger_backup_files_tobe_removed": ['Ranger_Policies_*','*','Ranger_Policies.json'] # File-list or pattern to delete Ranger-policy backup files.
}
ranger_policy_helper.cleanup_ranger_policy_backup_files(ranger_config_dict)