Connexion aux points de terminaison Amazon Neptune - Amazon Neptune

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.

Connexion aux points de terminaison Amazon Neptune

Amazon Neptune utilise un cluster d'instances de base de données au lieu d'une seule instance. Chaque connexion Neptune est gérée par une instance de base de données spécifique. Lorsque vous vous connectez à un cluster Neptune, le nom d'hôte et le port que vous spécifiez renvoient vers un gestionnaire intermédiaire appelépoint final. Un point de terminaison est une URL qui contient une adresse d'hôte et un port. Les points de terminaison Neptune utilisent des connexions TLS/SSL (Transport Layer Security/Secure Sockets Layer).

Neptune utilise le mécanisme de point de terminaison pour extraire ces connexions de sorte que vous n'avez pas à coder en dur les noms d'hôte, ni à écrire votre propre logique pour le reroutage des connexions lorsque certaines instances de base de données ne sont pas disponibles.

Les points de terminaison permettent d'associer chaque connexion à l'instance ou au groupe d'instances approprié, en fonction de votre cas d'utilisation. Les points de terminaison personnalisés vous permettent de vous connecter à des sous-ensembles d'instances DB. Les points de terminaison suivants sont disponibles dans un cluster de bases de données Neptune :

Point de terminaison de cluster

Un point de terminaison de cluster est un point de terminaison pour un cluster de bases de données Neptune qui se connecte à l'instance de base de données principale de ce cluster de bases Chaque cluster de bases de données Neptune possède un point de terminaison et une seule instance de base de données principale.

Le point de terminaison de cluster assure la prise en charge du basculement pour les connexions en lecture/écriture au cluster de bases de données. Utilisez le point de terminaison de cluster pour toutes les opérations d'écriture sur le cluster DB, y compris les insertions, les mises à jour, les suppression et les modifications de langage de définition de données (DDL). Vous pouvez aussi utiliser le point de terminaison de cluster pour les opérations de lecture, par exemple les requêtes.

En cas de défaillance de l'instance de base de données principale en cours d'un cluster de bases de données, Neptune bascule automatiquement vers une nouvelle instance de base de données principale. Pendant un basculement, le cluster DB continue à traiter les demandes de connexion adressées au point de terminaison de cluster par la nouvelle instance DB principale, avec une interruption de service minimale.

L'exemple suivant illustre un point de terminaison de cluster pour un cluster de bases de données Neptune.

mydbcluster.cluster-123456789012.us-east-1.neptune.amazonaws.com:8182

Point de terminaison du lecteur

Un point de terminaison de lecteur est un point de terminaison d'un cluster de bases de données Neptune qui se connecte à l'une des répliques Neptune disponibles pour ce cluster de bases de données. Chaque cluster de données Neptune possède un point de terminaison de lecteur. S'il existe plusieurs répliques Neptune, le terminal du lecteur dirige chaque demande de connexion vers l'une des répliques Neptune.

Le point de terminaison du lecteur assure le routage en tourniquet (round robin) pour les connexions en lecture seule au cluster DB. Utilisez le point de terminaison de lecteur pour les opérations de lecture, par exemple les requêtes.

Vous ne pouvez pas utiliser le point de terminaison du lecteur pour les opérations d'écriture sauf si vous disposez d'un cluster à instance unique (un cluster sans réplicas en lecture). Dans ce cas et dans ce cas seulement, le lecteur peut être utilisé pour les opérations d'écriture ainsi que pour les opérations de lecture.

Le routage en tourniquet du point de terminaison de lecteur modifie l'hôte vers lequel l'entrée DNS pointe. Chaque fois que vous résolvez l'entrée DNS, vous obtenez une autre adresse IP et les connexions sont ouvertes sur ces adresses IP. Une fois qu'une connexion est établie, toutes les demandes relatives à cette connexion sont envoyées au même hôte. Le client doit créer une connexion et résoudre l'enregistrement DNS à nouveau pour obtenir une connexion vers un réplica en lecture potentiellement différent.

Note

WebSockets les connexions sont souvent maintenues en vie pendant de longues périodes. Pour obtenir les différents réplicas en lecture, procédez comme suit :

  • Assurez-vous que votre client résout l'entrée DNS chaque fois qu'il se connecte.

  • Fermez la connexion et reconnectez-vous.

Plusieurs clients logiciels peuvent résoudre les entrées DNS de différentes façons. Par exemple, si votre client résout l'entrée DNS, puis utilise l'adresse IP pour chaque connexion, il dirigera toutes les demandes vers un seul hôte.

La mise en cache de l'entrée DNS pour les clients ou proxies sera à même de résoudre le nom DNS pour le même point de terminaison à partir du cache. Il s'agit d'un problème pour les scénarios de basculement et de routage en tourniquet (round-robin).

Note

Désactivez les paramètres de mise en cache DNS pour forcer systématiquement la résolution DNS.

Le cluster de bases de données distribue les demandes de connexion au point de terminaison du lecteur parmi les répliques Neptune disponibles. Si le cluster de bases de données ne contient qu'une instance de base de données principale, le point de terminaison de lecteur traite les demandes de connexion de l'instance de base de données principale. Si une réplique Neptune est créée pour ce cluster de base de données, le point de terminaison de lecteur continue de traiter les demandes de connexion au point de terminaison de lecteur à partir du nouveau réplica Neptune, avec une interruption de service minimale.

L'exemple suivant illustre un point de terminaison de lecteur pour un cluster de bases de données Neptune.

mydbcluster.cluster-ro-123456789012.us-east-1.neptune.amazonaws.com:8182

Point de terminaison d'instance

Un point de terminaison d'instance est un point de terminaison pour une instance de base de données dans un cluster de base de données Neptune qui se connecte à cette instance de base Chaque instance de bases de données d'un cluster de bases de données, quel que soit le type d'instance, a son propre point de terminaison d'instance unique. Par conséquent, il y a un point de terminaison d'instance pour l'instance de base de données principale actuelle du cluster DB. Il existe également un point de terminaison d'instance pour chacune des répliques Neptune du cluster de bases de données.

Le point de terminaison d'instance exerce un contrôle direct sur les connexions au cluster de bases de données, pour les scénarios où l'utilisation du point de terminaison de cluster ou du point de terminaison de lecteur peut ne pas être appropriée. Par exemple, votre application client peut exiger un équilibrage de charge optimisé en fonction de la charge de travail. Dans ce cas, vous pouvez configurer plusieurs clients pour qu'ils se connectent à différentes réplicas Neptune au sein d'un cluster de bases de données afin de distribuer les charges de travail en lecture.

L'exemple suivant illustre un point de terminaison d'instance pour une instance de base de données d'un cluster de bases de données Neptune.

mydbinstance.123456789012.us-east-1.neptune.amazonaws.com:8182

Point de terminaison personnalisé

UNEndpoint personnalisépour un cluster Neptune représente un ensemble d'instances de base de données que vous choisissez. Lorsque vous vous connectez au point de terminaison, Neptune choisit l'une des instances dans le groupe pour qu'elle gère la connexion. C'est vous qui définissez les instances auxquelles ce point de terminaison renvoie, ainsi que la fonction même de chaque point de terminaison.

Un cluster de base de données Neptune n'a pas de point de terminaison personnalisé tant que vous n'en avez pas créé un, et vous pouvez créer jusqu'à cinq points de terminaison personnalisés pour chaque cluster Neptune alloué.

Le point de terminaison personnalisé assure des connexions de base de données à équilibrage de charge selon des critères autres que la capacité de lecture seule ou de lecture/écriture des instances de base de données. Comme la connexion peut exploiter n'importe quelle instance de base de données associée au point de terminaison, assurez-vous que toutes les instances de ce groupe partagent les mêmes caractéristiques de performance et de capacité de mémoire. Lorsque vous avez recours à des points de terminaison personnalisés, vous n'utilisez généralement pas le point de terminaison du lecteur pour ce cluster.

Cette fonction est destinée aux utilisateurs avancés dotés de types de charges de travail spécialisés où il n'est pas pratique que tous les réplicas Neptune du cluster soient identiques. Avec des points de terminaison personnalisés, vous pouvez ajuster la capacité des instances de base de données utilisées avec chaque connexion.

Par exemple, si vous définissez plusieurs points de terminaison personnalisés qui se connectent à des groupes d'instances avec différentes classes d'instance, vous pouvez ensuite diriger les utilisateurs ayant des besoins de performances différents vers les points de terminaison qui conviennent le mieux à leurs cas d'utilisation.

L'exemple suivant illustre un point de terminaison personnalisé pour une instance de base de données d'un cluster de bases de données Neptune :

myendpoint.cluster-custom-123456789012.us-east-1.neptune.amazonaws.com:8182

Considérations sur les terminaux Neptune

Tenez compte des éléments suivants lorsque vous travaillez avec des points de terminaison Neptune :

  • Avant d'utiliser un point de terminaison d'instance pour vous connecter à une instance de base de données spécifique d'un cluster de bases de données, envisagez d'utiliser à la place le point de terminaison de cluster ou de lecteur du cluster de bases de données.

    Le point de terminaison du cluster et le point de terminaison du lecteur assurent la prise en charge des scénarios de haute disponibilité. En cas de défaillance de l'instance de base de données principale d'un cluster de bases de données, Neptune bascule automatiquement vers une nouvelle instance de base de données principale. Pour ce faire, il promeut une réplica Neptune existante en tant que nouvelle instance de base de données principale ou il crée une instance de base de données principale. En cas de basculement, vous pouvez utiliser le point de terminaison de cluster pour vous reconnecter à l'instance principale nouvellement promue ou créée, ou utiliser le point de terminaison de lecteur pour vous reconnecter à l'une des autres réplicas Neptune du cluster de base de données.

    Si vous n'adoptez pas cette approche, vous pouvez tout de même vous assurer que vous vous connectez à l'instance de base de données appropriée du cluster de bases de données pour l'opération prévue. Pour ce faire, vous pouvez détecter manuellement ou par programmation l'ensemble obtenu d'instances de bases de données disponibles dans le cluster de bases de données et confirmer leurs types d'instance après le basculement, avant d'utiliser le point de terminaison d'instance d'une instance de base de données spécifique.

    Pour plus d'informations sur les basculements, consultez Tolérance aux pannes pour un cluster DB Neptune.

     

  • Le point de terminaison du lecteur dirige uniquement les connexions vers les répliques Neptune disponibles dans un cluster de bases de données Neptune. Il ne dirige pas les requêtes spécifiques.

    Important

    Neptune n'équilibre pas la charge.

    Si vous souhaitez équilibrer la charge des requêtes afin de répartir la charge de travail en lecture d'un cluster DB, vous devrez gérer cela dans votre application. Vous devez utiliser des points de terminaison d'instance pour vous connecter directement aux répliques Neptune afin d'équilibrer la charge.

     

  • Le routage en tourniquet du point de terminaison de lecteur modifie l'hôte vers lequel l'entrée DNS pointe. Le client doit créer une connexion et résoudre l'enregistrement DNS à nouveau pour obtenir une connexion vers un potentiel nouveau réplica en lecture.

     

  • Pendant un basculement, le point de terminaison de lecteur peut brièvement diriger les connexions vers la nouvelle instance de base de données principale d'un cluster de bases de données, lorsqu'une réplique Neptune est promue comme nouvelle instance de base de données principale.

Points de terminaison personnalisés

Lorsque vous ajoutez ou supprimez une instance de base de données dans un point de terminaison personnalisé, toutes les connexions existantes à cette instance restent actives.

Vous pouvez définir une liste des instances de base de données à inclure dans un point de terminaison personnalisé (lestatiqueliste), ou un à exclure du point de terminaison personnalisé (le.exclusionListes. Vous pouvez utiliser le mécanisme d'inclusion/exclusion pour subdiviser les instances de base de données en groupes et vous assurer que les points de terminaison personnalisés couvrent toutes les instances de base de données du cluster. Chaque point de terminaison personnalisé ne peut contenir qu'un de ces types de liste.

Dans AWS Management Console, ce choix est représenté par la case à cocher Attach future instances added to this cluster (Attacher les instances futures ajoutées à ce cluster). Lorsque cette case n'est pas cochée, le point de terminaison personnalisé utilise une liste statique contenant uniquement les instances de base de données spécifiées dans la boîte de dialogue. Lorsque vous cochez cette case, le point de terminaison personnalisé utilise une liste d'exclusion. Dans ce cas, le point de terminaison personnalisé représente toutes les instances de base de données du cluster (y compris celles que vous ajouterez par la future), à l'exception de celles qui ne sont pas sélectionnées dans la boîte de dialogue.

Neptune ne modifie pas les instances de base de données spécifiées dans les listes statiques ou d'exclusion lorsqu'elles changent de rôle entre l'instance principale et le réplica Neptune en raison d'un basculement ou d'une opération de promotion.

Vous pouvez associer une instance de base de données à plusieurs points de terminaison personnalisés. Supposons, par exemple, que vous ajoutiez une nouvelle instance de base de données à un cluster. Dans ce cas, l'instance de base de données est ajoutée à tous les points de terminaison personnalisés auxquels elle est éligible. La liste statique ou d'exclusion qui lui est définie détermine quelle instance de base de données peut y être ajoutée.

Si un point de terminaison comprend une liste statique d'instances de base de données, les réplicas Neptune qui viennent d'être ajoutés ne sont pas inclus. Inversement, si le point de terminaison dispose d'une liste d'exclusion, les réplicas Neptune qui viennent d'être ajoutés sont inclus dans la liste d'exclusion.

Si un réplica Neptune devient indisponible, il reste associé à ses points de terminaison personnalisés. Cela est vrai s'il n'est pas sain, s'il est arrêté, s'il redémarre ou s'il est indisponible pour une autre raison. Toutefois, tant qu'il reste indisponible, vous ne pouvez pas vous y connecter via un point de terminaison.

Comme les nouveaux clusters Neptune ne contiennent pas de points de terminaison personnalisés, vous devez les créer et les gérer vous-même. Cela est également vrai pour les clusters Neptune restaurés à partir de snapshots, car les points de terminaison personnalisés ne sont pas inclus dans l'instantané. Ils sont recréés après leur restauration. Pour ce faire, choisissez de nouveaux noms de points de terminaison si le cluster restauré se trouve dans la même région que celui d'origine.

Création d'un point de terminaison personnalisé

Gérez les terminaux personnalisés à l'aide de la console Neptune. Pour ce faire, accédez à la page de détails de votre cluster Neptune et utilisez les commandes duPoints de terminaison personnalisésSection.

  1. Connectez-vous à la console.AWSConsole de gestion et ouvrez la console Amazon Neptune à l'adressehttps://console.aws.amazon.com/neptune/home.

  2. Accédez à la page de détails du cluster.

  3. Choisissez leCreate custom endpointaction dansPoints de terminaisonSection.

  4. Choisissez un nom pour le point de terminaison personnalisé qui soit unique pour votre ID utilisateur et votre région. Le nom doit comporter 63 caractères ou moins et prendre la forme suivante :

    endpointName.cluster-custom-customerDnsIdentifier.dnsSuffix

    Comme le nom des points de terminaison personnalisés ne comprend pas le nom du cluster, vous n'avez pas à le mettre à jour en cas de modification du nom de ce cluster. Vous ne pouvez toutefois pas réutiliser le même nom de point de terminaison personnalisé pour d'autres clusters de la même région. Donnez à chaque point de terminaison personnalisé un nom unique parmi tous les clusters affectés à votre ID utilisateur au sein d'une région spécifique.

  5. Pour choisir une liste d'instances de base de données qui restera la même à mesure que le cluster s'élargira, laissez la case Attach future instances added to this cluster (Attacher les instances futures ajoutées à ce cluster) décochée. Lorsque cette case est cochée, le point de terminaison personnalisé ajoute les nouvelles instances de manière dynamique au fur et à mesure de leur ajout au cluster.

Affichage des points de terminaison personnalisés

  1. Connectez-vous à la console.AWSConsole de gestion et ouvrez la console Amazon Neptune à l'adressehttps://console.aws.amazon.com/neptune/home.

  2. Accédez à la page de détails du cluster de votre cluster de base de données.

  3. Dans laPoints de terminaisonLa section contient uniquement des informations sur les points de terminaison personnalisés (les détails sur les points de terminaison intégrés sont indiqués dans la section principaleDétailsSection). Pour consulter les détails relatifs à un point de terminaison personnalisé, sélectionnez son nom pour afficher la page de détails correspondante.

Modification d'un point de terminaison personnalisé

Vous pouvez modifier les propriétés d'un point de terminaison pour changer les instances de base de données qui lui sont associées. Vous pouvez également basculer entre une liste statique et une liste d'exclusion.

Il n'est pas possible d'utiliser un point de terminaison personnalisé ou de s'y connecter lorsque les modifications d'une action d'édition sont en cours. Plusieurs minutes peuvent être nécessaires après que vous avez apporté une modification avant que le statut du point de terminaison redevienneDisponibleet vous pouvez vous reconnecter.

  1. Connectez-vous à la console.AWSConsole de gestion et ouvrez la console Amazon Neptune à l'adressehttps://console.aws.amazon.com/neptune/home.

  2. Accédez à la page de détails du cluster.

  3. Dans lePoints de terminaisonsection, choisissez le nom du point de terminaison personnalisé que vous souhaitez modifier.

  4. Sur la page détaillée de ce point de terminaison, choisissezModifieraction.

Suppression d'un point de terminaison personnalisé

  1. Connectez-vous à la console.AWSConsole de gestion et ouvrez la console Amazon Neptune à l'adressehttps://console.aws.amazon.com/neptune/home.

  2. Accédez à la page de détails du cluster.

  3. Dans lePoints de terminaisonsection, choisissez le nom du point de terminaison personnalisé que vous souhaitez supprimer.

  4. Sur la page détaillée de ce point de terminaison, choisissezSupprimeraction.