Configuration de la redirecttion du client pour les applications utilisant les bases de données DB2

La fonction de redirecttion du client vous permet de configurer vos applications client pour qu'une base de données DB2 universelle puisse récupérer d'une perte de communication et que les applications puissent continuer à fonctionner avec une interruption minimale. La redirection est essentielle à la prise en charge des opérations continues mais est uniquement réalisable lorsqu'un autre emplacement est identifié sur la connexion client.

Avant de commencer

Cette tâche suppose la configuration suivante :
  • Une source de données DB2 est définie dans le serveur d'applications. Pour plus d'informations sur la création d'une source de données, voir la rubrique Configuration d'une source de données à l'aide de la console d'administration.
  • La source de données DB2 à laquelle votre application se connecte exécute l'un des produits suivants :
    • DB2 for z/OS version 10.1 ou ultérieure
    • DB2 Database for Linux, UNIX, and Windows version 9.7 ou ultérieure
  • Vous avez implémenté la base de données DB2 avec une configuration redondante ou la fonction d'échec du serveur DB2 en mode veille.
  • [z/OS]Vous vous connectez à la source de données à l'aide d'une connexion de type 4.

Pourquoi et quand exécuter cette tâche

La redirection du client de DB2 vous permet de fournir un autre emplacement de serveur si la connexion au serveur de la base de données échoue. Si vous décidez d'utiliser la redirection du client avec l'option de persistance, les autres informations du serveur persistent sur les machines virtuelles Java™ (JVM). En cas d'arrêt inattendu du serveur d'applications, les autres informations du serveur ne sont pas perdues lorsque le serveur d'applications est restauré et tente de se connecter à la base de données.

Sans aucune configuration côté client, un pilote JDBC de DB2 prend en charge la fonction de redirection du client, si elle est activée, lorsque le pilote établit une connexion initiale sur le serveur DB2. Lorsque le pilote JDBC se connecte à un serveur DB2 disposant d'un autre serveur configuré, le serveur principal envoie les informations sur l'autre serveur au pilote JDBC. Si la connexion avec le serveur principal échoue, le pilote JDBC peut rediriger les connexions vers l'autre serveur. Cependant, si un arrêt inattendu se produit sur le processus client, les informations sur l'autre serveur sont perdues et le client doit à nouveau se connecter au serveur principal. Si le client ne peut pas établir de connexion initiale sur le serveur principal, il n'a pas connaissance de l'autre serveur et ne peut pas effectuer de redirections.

Pour résoudre ce problème, vous pouvez configurer une source de données DB2 dans le serveur d'applications à l'aide des zones Autres noms de serveur et Autres numéros de port, ou à l'aide des propriétés personnalisées de source de données clientRerouteAlternateServerName et clientRerouteAlternatePortNumber, pour prendre en charge la redirection du client, même lors d'une tentative de connexion initiale. Si le pilote JDBC ne peut pas se connecter au serveur principal DB2, les informations nécessaires à une redirection du client sont déjà présentes et le pilote JDBC peut rediriger la connexion vers un autre serveur.

Avertissement : La propriété personnalisée de la source de données, enableClientAffinitiesList, modifie la sémantique des propriétés clientRerouteAlternateServerName et clientRerouteAlternatePortNumber.
Pour plus de détails sur ces propriétés, voir la rubrique du centre de documentation DB2 relative aux pilotes de serveur de données IBM communs pour les propriétés JDBC et SQLJ pour tous les produits de base de données pris en charge. Pour plus de détails sur l'affinité des clients, voir la rubrique relative à la configuration de l'affinité des clients pour les applications qui utilisent les bases de données DB2.

De plus, si vous avez configuré une source de données DB2 en tant que pilote JDBC de type 4, vous pouvez utiliser la zone dunom JNDI de la liste des serveurs de redirection client ou la propriété personnalisée clientRerouteServerListJNDIName pour activer la persistance de l'état de la redirection du client. En général, lorsqu'une connexion est redirigée et que le pilote JDBC s'est connecté à l'autre serveur DB2, ce dernier envoie des informations sur son propre serveur de remplacement au pilote JDBC. Le pilote JDBC recevra alors les informations nécessaires pour rediriger à nouveau la connexion si l'autre serveur DB2 n'est pas disponible. En effet, le serveur qui était à l'origine le serveur de remplacement est maintenant le serveur principal et un nouveau serveur de remplacement a été défini. Si vous activez la persistance pour la redirection du client, ce nouvel état peut être conservé. Si le serveur d'applications rencontre un arrêt inattendu et qu'il est redémarré, le pilote JDBC peut se connecter au serveur DB2 qui était considéré comme le serveur principal au moment de l'arrêt inattendu. Sans la fonction de persistance, le pilote JDBC aurait démarré à partir de la configuration du serveur d'origine et tenté de se connecter au serveur qui était d'abord considéré comme le serveur principal.

Vous pouvez utiliser la fonction de redirection du client automatique dans les environnements configurables DB2 suivants :
  • Enterprise Server Edition (ESE) avec la fonction de partition de données (DPF)
  • La réplication de type Data Propagator (DPROPR)
  • Le multiprocesseur de cluster à haute disponibilité (HACMP)
  • La reprise à haut niveau de disponibilité après incident (HADR)

Procédure

  1. Dans la console d'administration, cliquez sur Ressources > JDBC > Sources de données > source_données.
  2. Cliquez sur Propriétés de la source de données WebSphere Application Server.
  3. Dans la section Options de redirection du client automatique de DB2, remplissez les zones pour activer la redirection du client. Complétez les zones suivantes :
    Autres noms de serveur
    Indique la liste des autres noms de serveur pour le serveur DB2. Si plusieurs autres noms de serveur sont spécifiés, ils doivent être séparés par des virgules. Par exemple :
     host1,host2
    Autres numéros de port
    Indique la liste des autres ports du serveur pour le serveur DB2. Si plusieurs autres ports de serveur sont spécifiés, ils doivent être séparés par des virgules. Exemple :
    5000,50001
    Eviter les incidents Eviter les incidents: Assurez-vous qu'un nombre égal d'entrées est spécifié pour les autres ports et hôtes. Sinon, un avertissement s'affiche et la redirection du client n'est pas activée.gotcha
  4. Facultatif : Activez la redirection du client avec l'option de persistance.
    1. Renseignez la zone Nom JNDI de la liste des serveurs de redirection client. La zone indique le nom JNDI employé pour lier la liste des serveurs de redirection du client DB2 à l'espace de nom JNDI. Le serveur de base de données DB2 utilise ce nom pour chercher la liste de noms de serveur lorsque les informations sur les autres serveurs ne sont pas déjà en mémoire.
      Eviter les incidents Eviter les incidents: Prenez connaissance des éléments suivants :
      • Cette option n'est pas prise en charge pour les sources de données de type 2. Si vous utilisez une source de données DB2 configurée comme pilote JDBC de type 2, le pilote JDBC utilise un catalogue pour conserver les informations de redirection du client. Si cette propriété est configurée avec un pilote de type 2, le serveur d'applications émet un avertissement.
      • Utilisez d'autres noms JNDI parmi les différentes sources de données. Sinon, lorsque vous supprimez une source de données, et que l'entrée JNDI est supprimée de l'espace de nom, les autres sources de données partageant l'entrée JNDI sont concernées.
      gotcha
  5. Configurez le nombre de relances et l'intervalle de la fonction de redirection du client. Renseignez les deux zones suivantes :
    Intervalle entre des tentatives de redirection du client
    Indique le délai d'attente, en secondes, entre les tentatives de redirection du client.
    Nombre maximum de tentatives de redirection du client
    Indique le nombre maximum de tentatives de connexion de la fonction de redirection automatique du client en cas d'échec de la connexion principale au serveur. La propriété est utilisée uniquement lorsque Intervalle entre des tentatives de redirection du client est définie.
  6. Cliquez sur OK pour sauvegarder les modifications.
  7. Redémarrez le serveur d'applications.

Que faire ensuite

Si vous souhaitez ultérieurement supprimer les informations de redirection du client liées dans JNDI, vous pourrez y parvenir en supprimant la source de données. Vous pourrez également utiliser la fonction de déconnexion avec le service de connexion test pour supprimer la liaison JNDI correspondant à la fonction de redirection du client à partir de l'espace de nom JNDI du serveur d'applications, sans supprimer la source de données.
Pour supprimer la liaison JNDI correspondant à la redirection du client, procédez comme suit :
  1. Sélectionnez Déconnecter la liste de redirection du client de JNDI.
  2. Cliquez sur OK.
  3. Sauvegardez la configuration.
  4. Cliquez sur l'option Tester la connexion de la source de données.
  5. Désélectionnez Déconnecter la liste de redirection du client de JNDI.
  6. Cliquez sur OK.
  7. Sauvegardez la configuration.

Icône indiquant le type de rubrique Rubrique de tâche



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tdat_clientreroute
Nom du fichier : tdat_clientreroute.html