Clonage de configurations de grappe

Il existe des fonctions d'aide au démarrage basées sur la configuration de la grappe pour importer et exporter des configurations de grappe dans le service de mégadonnées.

La prise en charge de l'exportation et de l'importation pour les configurations de service ODH du service de mégadonnées sur les grappes source et cible offre un moyen pratique de déplacer l'environnement ODH du service de mégadonnées entre les grappes pour diverses raisons, ce qui permet de gagner du temps et d'économiser des efforts.

L'exportation et l'importation des configurations du service ODH du service de mégadonnées sont utiles dans plusieurs scénarios;

Disaster Recovery
Pour effectuer une récupération à partir d'une grappe ODH du service de mégadonnées principale en échec, utilisez la fonction d'aide à l'importation pour créer rapidement une nouvelle grappe et importer la configuration de vos services.
Tests et développement
Pour créer un environnement de test ou de développement, utilisez la fonction d'aide à l'exportation pour créer une sauvegarde de la configuration de grappe ODH du service de mégadonnées.

Pour exporter la configuration du service ODH du service de mégadonnées, utilisez la console OCI. La configuration exportée comprend des informations sur les configurations de grappe.

Pour importer la configuration du service ODH du service de mégadonnées dans une grappe cible, utilisez la console. L'importation met à jour les configurations de tous les services présents dans le fichier zip créé par l'opération d'exportation.

Note

Le processus d'exportation/importation n'inclut pas de données ou de métadonnées associées à vos tâches. Vous devez migrer les données séparément vers la grappe cible, si nécessaire.

Pour exécuter un script d'amorçage, voir Exécution du script d'amorçage.

Pour plus d'informations sur les fonctions d'aide à l'exportation et à l'importation, voir :

Clonage des fonctions de l'assistant d'amorçage des configurations de grappe

Pour plus d'informations sur le script d'amorçage du clonage des configurations de grappe, voir Clonage des configurations de grappe.

Pour des exemples de fonction d'aide pour le clonage et l'importation de grappes, voir Exemples de configuration d'exportation/importation de grappes.

Pour exécuter un script d'amorçage, voir Exécution du script d'amorçage.

Catégorie Fonction d'aide Fonction
Grappes de configuration exportClusterConfs(output_path, service_list=[] spcl_service_config_dict={}) Cette fonction d'aide crée un fichier compressé qui contient les configurations de tous les services au format JSON.

Note :

  • output_path : Chemin où se trouve le fichier zip.
  • service_list : Liste facultative des services pour effectuer des opérations d'exportation. Si service_list est vide, il extrait tous les services installés présents dans la grappe.
  • spcl_service_config_dict : Dictionnaire facultatif qui contient un mappage de services et une liste de configurations à copier telles quelles à partir de la grappe source. La valeur par défaut est nulle.

Lorsque le travail est réussi. Il collecte toutes les configurations pour les services dans l'environnement ODH du service de mégadonnées et les enregistre dans un fichier JSON et crée un fichier zip de tous ces fichiers dans output_path.

importClusterConfs(zip_file_path, override_group=False) Cette fonction d'aide extrait le fichier JSON du fichier zip et utilise le fichier JSON pour recréer les configurations des services dans la grappe cible.

Note :

  • zip_file_path : Chemin d'accès au fichier zip créé par la fonction d'exportation sur la grappe source. Le fichier zip exporté est placé dans le chemin local de la grappe cible ou dans l'emplacement du magasin d'objets.
  • override_group : La valeur par défaut est Faux. S'il existe un groupe dans la grappe cible portant le même nom que la grappe source, cet indicateur est utilisé pour le remplacer ou non.

Exemples de configuration d'exportation/importation de grappe

Pour plus d'informations sur les fonctions d'aide exportClusterConfs et importClusterConfs, voir Clonage des fonctions d'aide d'amorçage des configurations de grappe.

Exemple : Exemple de script d'amorçage pour la création d'un fichier zip d'exportation avec des valeurs par défaut
sys.path.append(os.path.abspath("/home/opc/cloud/flask-microservice/"))
          
          def execute(updateConfigHelper):
          # existing utility functions, mention output location as "/tmp"
          cluster_name = updateConfigHelper.exportClusterConfs("/tmp")
Exemple : Exemple de script d'amorçage pour la création d'un fichier zip d'exportation avec une liste personnalisée de services
sys.path.append(os.path.abspath("/home/opc/cloud/flask-microservice/"))
          
          def execute(updateConfigHelper):
          # existing utility functions
          print("working hurrah")
          #Run export operation for mentioned list of services.
          service = ["HDFS","SPARK3","HIVE","YARN","MAPREDUCE2"]
          cluster_name = updateConfigHelper.exportClusterConfs("/tmp",service)
Exemple : Exemple de script d'amorçage pour la création d'un fichier zip d'exportation avec un dictionnaire personnalisé qui contient un mappage de services et une liste de configurations à copier tel quel à partir de la grappe source
sys.path.append(os.path.abspath("/home/opc/cloud/flask-microservice/"))
          
          def execute(updateConfigHelper):
          # existing utility functions
          service_list = ["HDFS","SPARK3","HIVE","YARN","MAPREDUCE2"]
          spcl_service_config_dict={"HIVE":["javax.jdo.option.ConnectionURL"], "HDFS":["fs.defaultFS","ranger.plugin.hdfs.policy.rest.url"]}
          cluster_name = updateConfigHelper.exportClusterConfs("/tmp",service_list,spcl_service_config_dict)
Exemple : Exemple de script d'amorçage pour la tâche d'importation de grappe
sys.path.append(os.path.abspath("/home/opc/cloud/flask-microservice/"))
          
          
          def execute(updateConfigHelper):
          # existing utility functions
          cluster_name = updateConfigHelper.importClusterConfs('/tmp/daily-cluster-ha6_configs_1683618209.zip')
          # Exported zip can be present in object store and you can provide object store path in zip_file_path location
          cluster_name = updateConfigHelper.importClusterConfs('https://objectstorage.us-ashburn-1.oraclecloud.com/.../cluster_configs_1683606387.zip')