Partage automatique des configurations entre les serveurs secondaires

Vous pouvez configurer un fichier d'inclusion server.xml du contrôleur de collectivité dans un jeu de serveurs secondaires et mettre à jour automatiquement la configuration d'autres serveurs secondaires du jeu. Le partage automatique des configurations signifie que vous n'avez pas besoin de mettre à jour manuellement les configurations des autres serveurs secondaires. Le partage automatique des configurations est particulièrement utile pour les collectivités qui utilisent la mise à l'échelle automatique.

Avant de commencer

Créez un jeu de serveurs secondaires. Voir Configuration de jeux de serveurs secondaires de collectivité Liberty. Cette rubrique comporte la section Exemple : créer et activer un jeu de serveurs secondaires, un exemple de création d'un jeu de serveurs secondaires comportant trois contrôleurs de collectivité sur le même hôte.

Pourquoi et quand exécuter cette tâche

Vous pouvez supprimer le fichier d'inclusion pour une configuration de contrôleur dans le répertoire configDropins/defaults de ce contrôleur afin de mettre à jour automatiquement la configuration des serveurs secondaires. Vous pouvez aussi utiliser des opérations ControllerConfigMBean pour répertorier, ajouter ou retirer les fichiers de configuration partagés d'un contrôleur de collectivité.

Procédure

  1. Créez un répertoire configDropins pour le contrôleur avec la configuration que vous voulez partager entre les serveurs secondaires.

    Si le contrôleur du jeu de serveurs secondaires n'a pas déjà un répertoire configDropins/defaults, créez le répertoire $WLP_USER_DIR/servers/server_name/configDropins/defaults pour ce contrôleur.

    Remarque : Pour plus d'informations sur la priorité entre fichiers dans les sous-répertoires configDropins, voir Utilisation du dossier dropins de configuration pour indiquer la configuration de serveur. Cette rubrique mentionne à la fois le répertoire configDropins/defaults et un répertoire configDropins/overrides. Les configurations de contrôleur supprimées dans un répertoire configDropins/overrides ne sont pas partagées en les serveurs secondaires. Pour partager des configurations entre des serveurs secondaires, vous devez utiliser le répertoire configDropins/defaults.
  2. Partagez la configuration de contrôleur avec d'autres serveurs secondaires du jeu de serveurs secondaires.
    • Supprimez la configuration du contrôleur du jeu de serveurs secondaires dans son répertoire configDropins/defaults.

      Par exemple, copiez le fichier d'inclusion server.xml du contrôleur dans son répertoire configDropins/defaults.

    • Utilisez des opérations ControllerConfigMBean pour répertorier, ajouter ou retirer les fichiers de configuration partagés d'un contrôleur de collectivité.

      Les fichiers de configuration sont stockés dans le répertoire $WLP_USER_DIR/servers/server_name/configDropins/defaults des contrôleurs et ils sont partagés avec le répertoire configDropins/defaults des serveurs secondaires.

      Utilisez des scripts Jython ou un client Java tel que JConsole pour effectuer les opérations ControllerConfigMBean suivantes du contrôleur de collectivité :

      listSharedConfig
      L'opération listSharedConfig répertorie les fichiers dans le répertoire de configuration partagé des serveurs secondaires.
      addSharedConfig
      L'opération addSharedConfig ajoute une configuration dans un fichier et stocke ce fichier dans le répertoire configDropins/defaults de chaque serveur secondaire. Vous devez indiquer deux paramètres pour cette opération :
      fileName
      Nom de fichier de la configuration de contrôleur à partager. Si vous indiquez un nom de fichier qui existe dans le répertoire de configuration partagée, le fichier existant est remplacé. (Chaîne)
      config
      Contenu d'un fichier d'inclusion server.xml valide. (Chaîne)
      Par exemple :
      <?xml version="1.0" encoding="UTF-8" ?>
      <server>
        <logging traceSpecification="com.ibm.ws.collective.repository.internal.SharedConfigManager=all"/>
      </server>
      removeSharedConfig
      L'opération removeSharedConfig retire un fichier du répertoire configDropins/defaults de chaque serveur secondaire. Vous devez indiquer un paramètre pour cette opération :
      fileName
      Nom de fichier de a configuration de contrôleur à supprimer du répertoire de configuration partagé de chaque serveur secondaire. (Chaîne)

    La configuration de contrôleur se synchronise automatiquement avec les répertoires dropins de configuration des autres serveurs secondaires dans le jeu de serveurs secondaires. Lorsque vous ajoutez un serveur secondaire à un contrôleur qui partage automatiquement sa configuration, le contenu du répertoire configDropins/defaults du contrôleur est répliquée sur le nouveau serveur secondaire. Les modifications que vous apportez aux définitions de règle de mise à l'échelle pour un contrôleur se synchronisent automatiquement dans les répertoires dropins de configuration des autres serveurs secondaires.

    Si la configuration de contrôleur ne se synchronise pas automatiquement avec la configuration des autres serveurs secondaires, consultez les journaux du automatique et des serveurs secondaires. De plus, si vous avez utilisé le répertoire configDropins/defaults pour partager la configuration de contrôleur, assurez-vous que la surveillance de cette configuration n'est pas désactivée. Par défaut, la surveillance de configuration est activée. Si la surveillance de configuration est désactivé, vous pouvez utiliser l'opération FileNotificationMBean pour informer le contrôleur des modifications de configuration, puis les modifications sont partagées avec les serveurs secondaires. Les configurations stockées par les opérations ControllerConfigMBean sont automatiquement partagées entre les serveurs secondaires que la surveillance de configuration soit ou non activée. Voir Contrôle des mises à jour dynamiques.

Exemple : utilisation de JConsole pour partager la configuration de contrôleur entre les serveurs secondaires

Cet exemple illustre comment vous pouvez utiliser JConsole pour partager le fichier d'inclusion server.xml du répertoire configDropins/defaults du contrôleur avec tous les serveurs secondaires :

  1. Connectez JConsole au processus du contrôleur de collectivité.
    1. Assurez-vous que le contrôleur de collectivité est en cours d'exécution.
      wlp/bin/server status collective_controller_name

      Il n'est pas nécessaire que les serveurs secondaires soient en cours d'exécution. Les serveurs secondaires qui ne sont pas en cours d'exécution se synchronisent avec la configuration partagée au démarrage.

    2. Démarrez JConsole s'il n'est pas déjà lancé. Sous Windows, exécutez le fichier Java_installation\bin\jconsole.exe.
    3. Sélectionnez le processus du contrôleur de collectivité.

    Pour utiliser le connecteur REST avec JConsole afin d'accéderr aux beans gérés à distance via une connexion HTTPS sous-jacente, voir Creating remote JMX connections in Liberty.

  2. Exécutez l'opération ControllerConfigMBean addSharedConfig dans JConsole afin d'ajouter le fichier d'inclusion server.xml du contrôleur dans le répertoire configDropins/defaults de chaque serveur secondaire.
    1. Sous l'onglet MBeans dans JConsole, sélectionnez l'opération ControllerConfigMBean addSharedConfig.
    2. Pour fileName, indiquez le chemin du fichier d'inclusion server.xml, par exemple :
      $WLP_USER_DIR/servers/collective_controller_name/trace.xml
    3. Pour config, indiquez la configuration à ajouter, par exemple :
      <?xml version="1.0" encoding="UTF-8" ?>
      <server>
        <logging traceSpecification="com.ibm.ws.collective.repository.internal.SharedConfigManager=all"/>
      </server>
    4. Cliquez sur addSharedConfig pour exécuter l'opération.
  3. Vérifiez que l'opération a partagé la configuration de contrôleur entre les serveurs secondaires.

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

Nom du fichier : tagt_wlp_configure_replicas_share.html