Pour déterminer les exigences d'installation et le type de package à utiliser, tenez compte des points suivants :
Pour que l'on puisse enregistrer un nouveau type de ressources, le fichier RTR correspondant doit être accessible sur le disque.
Lors de la création d'une ressource du nouveau type, tous les chemins d'accès des méthodes, ainsi que le détecteur du nouveau type de ressources, doivent se trouver sur le disque et être exécutables. Les programmes détecteurs et de méthode antérieurs doivent être conservés au même emplacement tant que la ressource est utilisée.
Pour savoir quel type de package utiliser, posez-vous les questions suivantes :
Le fichier RTR change-t-il ?
La valeur par défaut ou la capacité de réglage d'une propriété change-t-elle ?
La valeur min ou max d'une propriété change-t-elle ?
La mise à niveau supprime-t-elle ou ajoute-t-elle des propriétés ?
Le code de contrôle change-t-il ?
Le code de méthode change-t-il ?
Les nouvelles méthodes et/ou le code de contrôle sont-ils compatibles avec les versions antérieures ?
Les réponses à ces questions vous aideront à identifier le type de package à utiliser pour le nouveau type de ressources.
Il n'est pas nécessaire de créer du nouveau code de contrôle ou de méthode lorsque vous modifiez un type de ressources : par exemple, vous pouvez changer uniquement la valeur par défaut ou la capacité de réglage d'une propriété de ressource. Dans ce cas, vous aurez uniquement besoin d'un nouveau chemin valide vers un fichier RTR lisible.
Si vous n'avez pas besoin de ré-enregistrer le type de ressources, vous pouvez remplacer l'ancienne version du fichier RTR par la nouvelle ; si vous devez ré-enregistrer le type de ressources, placez le nouveau fichier RTR dans un nouveau chemin.
Si la mise à niveau change la valeur par défaut ou la capacité de réglage d'une propriété, utilisez la méthode Validate correspondant à la nouvelle version du type de ressources en vue de vérifier que les attributs de propriété existants sont valides pour le nouveau type de ressources. S'ils ne le sont pas, l'administrateur du cluster pourra modifier les propriétés d'une ressource existante et leur attribuer les valeurs appropriées. Si la mise à niveau modifie les attributs min, max ou type d'une propriété, la commande scrgadm valide automatiquement ces contraintes lorsque l'administrateur du cluster met à niveau le type de ressources.
Si elle ajoute ou supprime une propriété, vous devrez probablement modifier les méthodes de rappel ou le code de contrôle.
Si vous modifiez uniquement le code de contrôle d'un type de ressources, l'installation du package peut remplacer les binaires de contrôle.
Lorsque vous modifiez uniquement le code de méthode d'un type de ressources, vous devez déterminer si le nouveau code est compatible avec l'ancien. La réponse à cette question vous aidera à déterminer si vous devez enregistrer le nouveau code de méthode dans un nouveau chemin ou si vous pouvez remplacer les anciennes méthodes par les nouvelles.
Si vous pouvez appliquer les nouvelles méthodes Stop, Postnet_stop et Fini (si elles sont déclarées) à des ressources initialisées ou démarrées à l'aide des anciennes versions de Start, Prenet_stop ou Init, vous pouvez remplacer les anciennes méthodes par les nouvelles.
Si l'application d'une nouvelle valeur par défaut à une propriété provoque l'échec d'une méthode telle que Stop, Postnet_stop ou Fini, l'administrateur du cluster devra restreindre l'état de la méthode en conséquence, lors de la mise à niveau du type de ressources.
Pour l'autoriser à le faire, limitez la capacité de réglage de la propriété Type_version.
Une bonne méthode consiste à inclure toutes les versions précédentes d'un type de ressources, si elles sont prises en charge, dans le package. Il est ainsi possible de remplacer l'ancienne version du package par la nouvelle, sans remplacer ni supprimer les anciens chemins des méthodes. Vous devez décider du nombre d'anciennes versions à prendre en charge.
Le tableau ci-dessous vous permet de choisir le type de package à utiliser pour vos nouveaux types de ressources.
Tableau 4–1 Type de package à utiliser
Type de modification |
Valeur de la capacité de réglage |
Type de package |
---|---|---|
Changer les propriétés dans le fichier RTR uniquement. |
ANYTIME |
Fournissez uniquement le nouveau fichier RTR. |
Mettre à jour les méthodes. |
ANYTIME |
Placez les méthodes à jour dans un chemin différent de celui des anciennes méthodes. |
Installer le nouveau programme de contrôle. |
WHEN_UNMONITORED |
Remplacez uniquement l'ancienne version du programme de contrôle. |
Mettre à jour les méthodes. Les nouvelles méthodes Update et Stop sont incompatibles avec les anciennes méthodes Start. |
WHEN_OFFLINE |
Placez les méthodes à jour dans un chemin différent de celui des anciennes méthodes. |
Mettre à jour les méthodes et ajouter des propriétés au fichier RTR. Les nouvelles méthodes requièrent de nouvelles propriétés. Cette modification vise à empêcher la ressource de se connecter si son groupe passe du mode hors ligne au mode en ligne sur un nœud, sans obliger le groupe de ressources à se déconnecter. |
WHEN_DISABLED |
Écrasez les versions précédentes des méthodes. |
Mettre à jour les méthodes et ajouter des propriétés au fichier RTR. Les nouvelles méthodes ne requièrent pas de nouvelles propriétés. |
ANYTIME |
Écrasez les versions précédentes des méthodes. |
Mettre à jour les méthodes. La nouvelle méthode Fini est incompatible avec la méthode Init antérieure. |
WHEN_UNMANAGED |
Placez les méthodes à jour dans un chemin différent de celui des anciennes méthodes. |
Mettre à jour les méthodes. Le fichier RTR n'est pas modifié. |
Sans objet. Le fichier RTR n'est pas modifié. |
Écrasez les versions précédentes des méthodes. Puisque vous n'avez pas modifié le fichier RTR, il est inutile d'enregistrer ou de mettre à niveau la ressource. |