Configurations d'import et d'export Ranger
Il existe des fonctions d'aide à l'importation et à l'exportation de Ranger pour importer et exporter des configurations Ranger dans Big Data Service.
Les fonctions d'aide à l'importation et à l'exportation de Ranger sont utiles pour la résilience de cluster, les opérations de récupération et le déplacement des stratégies Ranger d'un cluster à un autre. Elles sont utiles dans plusieurs scénarios.
- Récupération après sinistre
- Créez un cluster et à l'aide de la fonction d'aide
import_ranger_policies
, vous pouvez importer toutes les stratégies Ranger présentes dans un ancien cluster vers un nouveau cluster. - Environnements de test ou de développement
- Pour créer un environnement de test ou de développement à l'aide de stratégies de Ranger de cluster existantes, vous pouvez utiliser la fonction d'aide
export_ranger_policies
pour exporter toutes les stratégies de Ranger présentes dans le cluster source vers un fichier JSON. A l'aide de la fonction d'aideimport_ranger_policies
, vous pouvez importer toutes les stratégies vers un cluster de destination.
Pour effectuer des opérations d'import et d'export Ranger, les informations d'identification d'administrateur Ambari et Ranger doivent être identiques.
Pour exécuter un script de démarrage, reportez-vous à la section Running the Bootstrap Script.
Pour importer les anciennes stratégies Ranger avant Big Data Service 3.1.1, assurez-vous que tous les utilisateurs de liste de la stratégie sont disponibles.
Pour plus d'informations sur les fonctions d'aide à l'importation et à l'exportation de Ranger, reportez-vous à :
Fonctions de l'assistant d'importation et d'exportation Ranger
Pour plus d'informations sur les configurations de script d'import et d'export Ranger, reportez-vous à la section Ranger Import and Export Configurations.
Pour obtenir des exemples de fonction d'aide d'importation et d'exportation Ranger, reportez-vous à Exemples de configuration d'importation et d'exportation Ranger.
Pour exécuter un script de démarrage, reportez-vous à la section Running the Bootstrap Script.
Fonction d'aide | Fonctionnalité : |
---|---|
export_ranger_policies (ranger_config_dict) |
Cette fonction d'aide exporte les stratégies Ranger dans plusieurs formats. (JSON, CSV, EXCEL). Toutefois, seul le format JSON est pris en charge pour Exemple :
Ranger-Export-Config-Info :
Paramètres optionnels :
Lorsque le travail bootstrap-script d'export des stratégies Ranger réussit, Ranger exporte les stratégies dans un fichier au format indiqué à l'emplacement output_folder_path. |
import_ranger_policies (ranger_config_dict) |
Cette fonction d'aide importe les stratégies Ranger à l'aide du fichier d'entrée JSON fourni. Vous pouvez créer et transmettre un objet ranger_config_dict qui comporte des paramètres requis pour effectuer l'opération Exemple : 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 : chemin d'accès au fichier Ranger_policies.json , créé par la fonction Ranger-policy-export sur le cluster source. Le fichier JSON exporté peut être placé dans le chemin local du cluster cible ou à l'emplacement de la banque d'objets. (URL PAR)Paramètres facultatifs :
Lorsque le travail bootstrap-script d'import des stratégies Ranger réussit, Ranger importe les stratégies à partir du fichier |
restore_ranger_policies (ranger_config_dict) |
Cette fonction helper restaure les stratégies Ranger à l'aide du fichier de sauvegarde. Vous pouvez transmettre le fichier de sauvegarde à utiliser pour restaurer les stratégies Ranger. Par défaut, cette fonction restaure les stratégies Ranger à l'aide du dernier fichier de sauvegarde présent dans le répertoire des fichiers de sauvegarde. Vous pouvez créer et transmettre l'objet Exemple
Ranger-Restore-Config-Info : restore_policies_input_file_path : paramètre facultatif Lorsque le travail bootstrap-script de restauration des stratégies Ranger réussit, Ranger restaure les stratégies à l'aide de la version |
cleanup_ranger_policy_backup_files (ranger_config_dict) |
Cette fonction d'aide supprime les fichiers de sauvegarde de stratégie Ranger à l'aide d'une liste de fichiers ou d'un modèle. Vous pouvez créer et transmettre l'objet Exemple :
Ranger-Policy-Cleanup-Config-Info :
Exemple :
|
Exemples de configuration d'import et d'export Ranger
Pour plus d'informations sur les fonctions de l'assistant d'importation et d'exportation de Ranger, reportez-vous à Fonctions de l'assistant d'importation et d'exportation de 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)