Diese Beispiele zeigen mehrere unterschiedliche Szenarios für die Ressourcentypinstallation und -aufrüstung. Die Einstellbarkeits- und Paketinformationen wurden anhand der Änderungstypen ausgewählt, die an der Ressourcentypimplementierung vorgenommen werden. Die Einstellbarkeit bezieht sich auf die Migration der Ressource zum neuen Ressourcentyp.
Alle Beispiele gehen von folgenden Annahmen aus:
Der Ressourcentyp wird in einem Solaris-Paket geliefert. Siehe pkgadd(1M) und pkgrm(1M).
Es ist nur eine vorherige Version des Ressourcentyps vorhanden, und daher enthält die neue RTR-Datei nur eine #$upgrade_from-Anweisung.
Das Installationsverfahren entfernt bzw. überschreibt keine Methoden, wenn die Möglichkeit besteht, dass RGM diese Methoden während der Entfernung von der Platte aufruft.
Neue Methoden sind mit den alten Methoden kompatibel, sofern nicht anders angegeben.
Ressourcen und Ressourcengruppen werden vor der Installation bzw. Migration mithilfe des Befehls scswitch(1M) oder eines äquivalenten Befehls in den erforderlichen Zustand versetzt. Das folgende Beispiel zeigt, wie die Ressourcengruppe in einen nicht verwalteten Zustand versetzt wird:
scswitch -M -n -j Ressource scswitch -n -j Ressource scswitch -F -g Ressourcengruppe scswitch -u -g Ressourcengruppe |
Der Ressourcentyp wird mit folgendem Befehl registriert:
scrgadm -a -t Ressourcentyp -f path_to_RTR_file |
Eine Ressource wird mit folgendem Befehl migriert:
scrgadm -c -j Ressource -y Type_version=Version \ -y Eigenschaft=Wert \ -x Eigenschaft=Wert ... |
Ressourcen und Ressourcengruppen werden nach der Migration wieder in ihren vorherigen Zustand zurückversetzt. Dies geschieht über den Befehl scswitch(1M) bzw. einen äquivalenten Befehl.
scswitch -M -e -j Ressource scswitch -e -j Ressource scswitch -o -g Ressourcengruppe scswitch -Z -g Ressourcengruppe |
Der Ressourcentypentwickler muss möglicherweise stärker eingeschränkte Einstellbarkeitswerte angeben als die in diesen Beispielen verwendeten Werte. Die Einstellbarkeitswerte sind abhängig von den genauen Änderungen, die an der Ressourcentypimplementierung vorgenommen werden. Ebenso kann sich der Ressourcentypentwickler dafür entscheiden, ein anderes Paketschema als das in diesen Beispielen eingesetzte Solaris-Paket zu verwenden.
Tabelle 3–1 Beispiele für das Aufrüsten eines Ressourcentyps
Änderungstyp |
Einstellbarkeit |
Paket |
Verfahren |
---|---|---|---|
Eigenschaftsänderungen werden nur in der RTR-Datei vorgenommen. |
Anytime |
Liefern Sie nur die neue RTR-Datei. |
Führen Sie pkgadd für die neue RTR-Datei auf allen Knoten aus. Registrieren Sie den neuen Ressourcentyp. Migrieren Sie die Ressource. |
Die Methoden werden aktualisiert. |
Anytime |
Legen Sie die aktualisierten Methoden unter einem anderen Pfad als die alten Methoden ab. |
Führen Sie pkgadd für die aktualisierten Methoden auf allen Knoten aus. Registrieren Sie den neuen Ressourcentyp. Migrieren Sie die Ressource. |
Neues Monitor-Programm. |
When_unmonitored |
Überschreiben Sie nur die vorherige Version des Monitors. |
Deaktivieren Sie die Überwachung. Führen Sie pkgadd für das neue Monitor-Programm auf allen Knoten aus. Registrieren Sie den neuen Ressourcentyp. Migrieren Sie die Ressource. Aktivieren Sie die Überwachung. |
Die Methoden werden aktualisiert. Die neuen Update/Stop-Methoden sind mit den alten Start-Methoden inkompatibel. |
When_offline |
Legen Sie die aktualisierten Methoden unter einem anderen Pfad als die alten Methoden ab. |
Führen Sie auf allen Knoten pkgadd für die aktualisierten Methoden aus. Registrieren Sie den neuen Ressourcentyp. Nehmen Sie die Ressource offline. Migrieren Sie die Ressource. Bringen Sie die Ressource online. |
Die Methoden werden aktualisiert und die neuen Eigenschaften der RTR-Datei hinzugefügt. Die neuen Methoden benötigen neue Eigenschaften. (Ziel ist es, der betroffenen Ressourcengruppe das Online-bleiben zu ermöglichen, gleichzeitig jedoch zu verhindern, dass die Ressource online gebracht wird, wenn die Ressourcengruppe auf einem Knoten von einem Offline- in einen Online-Zustand übergeht.) |
When_disabled |
Überschreiben Sie die vorherigen Versionen der Methoden. |
Deaktivieren Sie die Ressource.
Registrieren Sie den neuen Ressourcentyp. Migrieren Sie die Ressource. Aktivieren Sie die Ressource. |
Die Methoden werden aktualisiert und die neuen Eigenschaften der RTR-Datei hinzugefügt. Die neuen Methoden benötigen keine neue Eigenschaften. |
Anytime |
Überschreiben Sie die vorherigen Versionen der Methoden. |
Während dieses Vorgangs ruft RGM die neuen Methoden auf, auch wenn die Migration, durch die die neuen Eigenschaften konfiguriert werden, noch nicht ausgeführt wurde. Die neuen Methoden müssen unbedingt in der Lage sein, ohne die neuen Eigenschaften zu funktionieren. Registrieren Sie den neuen Ressourcentyp. Migrieren Sie die Ressource. |
Die Methoden werden aktualisiert. Die neue Fini-Methode ist inkompatibel mit der alten Init-Methode. |
When_unmanaged |
Legen Sie die aktualisierten Methoden unter einem anderen Pfad als die alten Methoden ab. |
Bringen Sie die betreffende Ressourcengruppe in einen unverwalteten Zustand. Führen Sie pkgadd für die aktualisierten Methoden auf allen Knoten aus. Registrieren Sie den Ressourcentyp. Migrieren Sie die Ressource. Versetzen Sie die betreffende Ressourcengruppe in einen verwalteten Zustand. |
Die Methoden werden aktualisiert. An der RTR-Datei werden keine Änderungen vorgenommen. |
Nicht zutreffend. An der RTR-Datei werden keine Änderungen vorgenommen. |
Überschreiben Sie die vorherigen Versionen der Methoden. |
Da an der RTR-Datei nichts geändert wurde, muss die Ressource nicht registriert oder migriert werden. |