Migration des objets enregistrés des OpenSearch tableaux de bord vers l'interface utilisateur OpenSearch - Amazon OpenSearch Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Migration des objets enregistrés des OpenSearch tableaux de bord vers l'interface utilisateur OpenSearch

Si vous disposez de tableaux de bord, de visualisations, de modèles d'index et d'autres objets enregistrés dans OpenSearch Dashboards, vous pouvez les migrer et les réutiliser dans l'interface utilisateur. OpenSearch

Avantages de la migration vers l' OpenSearch interface utilisateur :

  • Haute disponibilité : l' OpenSearch interface utilisateur est hébergée dans le domaine AWS Cloud et reste disponible pendant les mises à niveau et la maintenance, tandis que OpenSearch les tableaux de bord sont hébergés dans le domaine et seront temporairement indisponibles.

  • Sources de données multiples : l' OpenSearchinterface utilisateur peut fournir une interface unique consolidée couvrant plusieurs sources de données, notamment les OpenSearch domaines, les collections sans serveur et les connexions de données avec Amazon S3 et Amazon CloudWatch, tandis que chaque OpenSearch tableau de bord ne peut fonctionner qu'avec un seul domaine ou une seule collection.

  • Des fonctionnalités supplémentaires telles que AI Assistant et Workspaces sont disponibles sur l' OpenSearch interface utilisateur. En savoir plus :Utilisation de l' OpenSearch interface utilisateur dans Amazon OpenSearch Service.

Présentation de la migration

Le processus de migration comprend les étapes de haut niveau suivantes :

  1. Exporter des objets enregistrés depuis des OpenSearch tableaux de bord : utilisez l'interface utilisateur de gestion des objets enregistrés des OpenSearch tableaux de bord ou l'API d'exportation pour télécharger vos tableaux de bord, vos visualisations, vos modèles d'index et d'autres objets sous forme de fichier JSON délimité par de nouvelles lignes (NDJSON).

  2. Création d'une application d' OpenSearch interface utilisateur et d'un espace de travail : si ce n'est déjà fait, créez une application d' OpenSearch interface utilisateur et un espace de travail pour recevoir les objets importés.

  3. Enregistrer la source de données dans l' OpenSearchinterface utilisateur : associez votre OpenSearch domaine à l'application d' OpenSearch interface utilisateur et enregistrez-le en tant que source de données dans l'espace de travail. Les modèles d'index de vos objets importés font référence à cette source de données.

  4. Importer des objets enregistrés dans l' OpenSearch interface utilisateur : utilisez l' OpenSearch interface utilisateur de gestion des objets enregistrés ou l'API d'importation pour télécharger le fichier NDJSON dans l'espace de travail cible.

  5. Valider les objets importés : ouvrez vos tableaux de bord et vos visualisations dans l' OpenSearch interface utilisateur pour vérifier qu'ils s'affichent correctement et que les données proviennent du domaine ou de la collection associés.

Conditions préalables

Avant la migration, vérifiez les conditions préalables suivantes :

Note

OpenSearch L'interface utilisateur ne prend en charge que les OpenSearch versions 1.3 et ultérieures. Vérifiez que votre OpenSearch domaine exécute la version 1.3 ou supérieure avant de tenter de migrer des objets enregistrés.

Étape 1 : Exporter les objets enregistrés depuis les OpenSearch tableaux de bord

Exportez vos objets enregistrés depuis les OpenSearch tableaux de bord à l'aide de l'interface utilisateur de gestion ou de l'API d'exportation. L'exportation produit un fichier JSON délimité par de nouvelles lignes (NDJSON) qui contient tous les types d'objets enregistrés sélectionnés et leurs dépendances.

Exporter manuellement sur les OpenSearch tableaux de bord

Pour exporter des objets enregistrés à l'aide de l'interface utilisateur de gestion OpenSearch des tableaux de bord
  1. Ouvrez votre instance OpenSearch Dashboards.

  2. Dans le panneau de navigation de gauche, choisissez Management.

  3. Sous Gestion des tableaux de bord, sélectionnez Objets enregistrés.

  4. Sélectionnez les objets enregistrés que vous souhaitez exporter. Pour exporter tous les objets d'un type spécifique, filtrez par type à l'aide de la barre de recherche. Pour exporter tous les objets, cochez la case dans l'en-tête du tableau.

  5. Cliquez sur Exporter.

  6. Dans la boîte de dialogue Exporter les objets enregistrés, assurez-vous que l'option Inclure les objets associés est sélectionnée. Cette option inclut tous les objets dont dépendent les objets enregistrés sélectionnés, tels que les modèles d'index référencés par les visualisations. Désactivez cette option uniquement si vous avez l'intention de gérer les dépendances manuellement.

  7. Choisissez Exporter pour télécharger le .ndjson fichier sur votre ordinateur local.

Astuce

Lorsque vous choisissez Inclure les objets associés, le fichier NDJSON exporté contient tous les objets enregistrés nécessaires au rendu des tableaux de bord et des visualisations sélectionnés, y compris leurs modèles d'index, leurs visualisations et leurs objets de recherche dépendants. Cela simplifie l'étape d'importation et évite les erreurs de référence manquantes.

Exportation via API

Vous pouvez utiliser l'API d'exportation des objets enregistrés des OpenSearch tableaux de bord pour exporter des objets enregistrés par programmation. Cela est utile pour automatiser les migrations ou intégrer l'étape d'exportation dans un CI/CD pipeline.

Note

Si le contrôle d'accès détaillé est activé sur votre OpenSearch domaine, vous devez fournir des informations d'authentification avec votre demande d'exportation. Utilisez l'authentification HTTP de base en ajoutant l'-uindicateur avec votre nom d'utilisateur et votre mot de passe. Pour plus d'informations sur les options d'authentification, consultez Contrôle d'accès précis dans Amazon Service OpenSearch.

L'exemple suivant exporte tous les tableaux de bord avec leurs objets associés. Remplacez les placeholder values par vos propres informations.

curl -X POST \ "https://dashboards-endpoint/_dashboards/api/saved_objects/_export" \ -u 'master-username:master-password' \ -H "Content-Type: application/json" \ -H "osd-xsrf: true" \ -d '{ "type": ["dashboard", "visualization", "index-pattern", "search"], "includeReferencesDeep": true, "excludeExportDetails": false }' \ -o saved-objects-export.ndjson

Si le contrôle d'accès détaillé n'est pas activé sur votre domaine, vous pouvez omettre le drapeau. -u

Pour exporter des objets enregistrés spécifiques par ID, utilisez le objects paramètre au lieu de type :

curl -X POST \ "https://dashboards-endpoint/_dashboards/api/saved_objects/_export" \ -u 'master-username:master-password' \ -H "Content-Type: application/json" \ -H "osd-xsrf: true" \ -d '{ "objects": [ {"type": "dashboard", "id": "dashboard-id"}, {"type": "visualization", "id": "visualization-id"} ], "includeReferencesDeep": true }' \ -o saved-objects-export.ndjson
Note

Pour rechercher un objet enregistré IDs, vous pouvez utiliser l'API Saved Objects pour répertorier tous les objets d'un type spécifique. L'exemple suivant répertorie tous les tableaux de bord :

curl -X GET \ "https://dashboards-endpoint/_dashboards/api/saved_objects/_find?type=dashboard" \ -u 'master-username:master-password'

La réponse inclut l'identifiant de chaque objet enregistré. Vous pouvez également trouver l'ID dans l'URL du navigateur lorsque vous consultez l'objet dans les OpenSearch tableaux de bord.

Étape 2 : Importer des objets enregistrés dans l' OpenSearch interface utilisateur

Après avoir exporté les objets enregistrés, vous pouvez importer le fichier NDJSON dans l' OpenSearch interface utilisateur manuellement ou via l'API.

Importation manuelle sur l' OpenSearch interface utilisateur

Pour importer des objets enregistrés à l'aide de l' OpenSearch interface utilisateur de gestion
  1. Ouvrez votre application d' OpenSearch interface utilisateur et accédez à l'espace de travail cible.

  2. Dans l'espace de travail, choisissez Ressources dans le menu de navigation supérieur ou accédez à la page des ressources de l'espace de travail.

  3. Choisissez Importer pour ouvrir la boîte de dialogue Importer des actifs.

  4. Choisissez Sélectionner un fichier et sélectionnez le .ndjson fichier que vous avez exporté depuis les OpenSearch tableaux de bord.

  5. Pour la gestion des conflits, choisissez l'une des options suivantes :

    • Créer de nouvelles ressources avec une valeur unique IDs (par défaut) : génère de nouvelles ressources IDs pour tous les objets importés, évitant ainsi les conflits avec les ressources existantes.

    • Vérifier les actifs existants — Vérifie les conflits avec les objets existants. Lorsque cette option est sélectionnée, choisissez l'une des sous-options suivantes :

      • Remplacer automatiquement les conflits : les actifs existants portant le même identifiant sont automatiquement remplacés.

      • Demander une action en cas de conflit — Vous êtes invité à résoudre chaque conflit individuellement.

  6. Choisissez Importer.

  7. Consultez le résumé de l'importation.

Importation via API

Pour importer des objets enregistrés à l'aide de l'API avec authentification AWS Signature Version 4, vous devez d'abord obtenir l'ID de la source de données, puis l'utiliser dans la demande d'importation. Remplacez les placeholder values par vos propres informations.

Étape 1 : obtenir l'ID de source de données pour votre espace de travail :

curl -X GET \ "https://opensearch-ui-endpoint/w/workspace-id/api/saved_objects/_find?type=data-source" \ --aws-sigv4 "aws:amz:region:opensearch" \ --user "$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY" \ -H "x-amz-security-token: $AWS_SESSION_TOKEN" \ -H "osd-xsrf: true"
Note

La réponse inclut l'ID de la source de données. Vous pouvez également trouver l'ID de la source de données dans l'URL du navigateur lorsque vous consultez la source de données dans l' OpenSearch interface utilisateur.

Étape 2 : Importez les objets enregistrés à l'aide de l'ID de source de données indiqué à l'étape 1 :

curl -X POST \ "https://opensearch-ui-endpoint/w/workspace-id/api/saved_objects/_import?overwrite=true&dataSourceId=data-source-id" \ --aws-sigv4 "aws:amz:region:opensearch" \ --user "$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY" \ -H "x-amz-security-token: $AWS_SESSION_TOKEN" \ -H "osd-xsrf: true" \ -F "file=@saved-objects-export.ndjson"
Note

Ces exemples utilisent l'--aws-sigv4option intégrée de curl (disponible dans curl 7.75 ou version ultérieure) pour signer les demandes. Définissez vos AWS informations d'identification en tant que variables d'environnement avant d'exécuter les commandes : AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY, et AWS_SESSION_TOKEN (si vous utilisez des informations d'identification temporaires).