Configurations d'importation et d'exportation Ranger
Des fonctions d'aide à l'importation et à l'exportation d'amorçage Ranger existent pour importer et exporter les configurations Ranger dans le service de mégadonnées.
Les fonctions d'aide à l'importation et à l'exportation d'amorçage Ranger sont utiles pour la résilience du cluster, les opérations de récupération et le déplacement des stratégies Ranger d'un cluster à un autre et sont utiles dans plusieurs scénarios.
- Disaster Recovery
- Créez une nouvelle grappe et à l'aide de la fonction d'aide
import_ranger_policies
, vous pouvez importer toutes les politiques Ranger présentes dans une ancienne grappe dans une nouvelle grappe. - Environnements de test ou de développement
- Pour créer un environnement de test ou de développement à l'aide de politiques Ranger de grappe existantes, vous pouvez utiliser la fonction d'aide
export_ranger_policies
pour exporter toutes les politiques Ranger présentes dans la grappe source vers un fichier JSON. À l'aide de la fonction d'aideimport_ranger_policies
, vous pouvez importer toutes les politiques dans une grappe de destination.
Pour effectuer des opérations d'importation et d'exportation Ranger, les données d'identification de l'administrateur Ambari et Ranger doivent être identiques.
Pour exécuter un script d'amorçage, voir Exécution du script d'amorçage.
Pour importer d'anciennes politiques Ranger avant le service de mégadonnées 3.1.1, assurez-vous que tous les utilisateurs de la liste de la politique sont disponibles.
Pour plus d'informations sur les fonctions d'aide à l'importation et à l'exportation de Ranger, voir :
Fonctions d'aide à l'importation et à l'exportation de Ranger
Pour plus d'informations sur l'importation et l'exportation des configurations de script d'amorçage par Ranger, voir Configurations d'importation et d'exportation par Ranger.
Pour obtenir des exemples de fonction d'aide pour l'importation et l'exportation de Ranger, voir Exemples de configuration d'importation et d'exportation de Ranger.
Pour exécuter un script d'amorçage, voir Exécution du script d'amorçage.
Fonction d'aide | Fonction |
---|---|
export_ranger_policies (ranger_config_dict) |
Cette fonction d'aide exporte les politiques Ranger dans plusieurs formats. (JSON, CSV, EXCEL). Mais seul le format JSON est pris en charge pour Exemple :
Ranger-Export-Config-Info :
Paramètres facultatifs :
Lorsque la tâche bootstrap-script d'exportation des politiques Ranger réussit, Ranger exporte les politiques dans un fichier au format spécifié à l'emplacement output_folder_path. |
import_ranger_policies (ranger_config_dict) |
Cette fonction d'aide importe les politiques Ranger à l'aide du fichier d'entrée JSON fourni. Vous pouvez créer et transmettre un objet ranger_config_dict qui a 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 la grappe source. Le fichier JSON exporté peut être placé dans le chemin local de la grappe cible ou dans l'emplacement du magasin d'objets. (URL PAR)Paramètres facultatifs :
Lorsque la tâche bootstrap-script d'importation des politiques Ranger réussit, Ranger importe les politiques à partir de |
restore_ranger_policies (ranger_config_dict) |
Cette fonction d'aide restaure les politiques 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-Restaurer-Config-Info : restore_policies_input_file_path : Paramètre facultatif, Lorsque la tâche bootstrap-script pour restaurer les politiques Ranger réussit, Ranger restaure les politiques à l'aide de la valeur |
cleanup_ranger_policy_backup_files (ranger_config_dict) |
Cette fonction d'aide supprime les fichiers de sauvegarde de politique 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'importation et d'exportation Ranger
Pour plus d'informations sur les fonctions d'aide à l'importation et à l'exportation de Ranger, voir Fonctions d'aide à l'importation et à l'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)