Cette procédure contient la forme longue des commandes de maintenance d'Oracle Solaris Cluster. La plupart des commandes possèdent également des formes brèves. A l'exception de la forme du nom, ces commandes sont identiques.
Avant de commencer
Assurez-vous que les conditions suivantes sont remplies :
Le fichier /etc/netmasks dispose d'un sous-réseau d'adresse IP et d'entrées de masque de réseau pour tous les noms d'hôtes logiques. Si nécessaire, modifiez le fichier /etc/netmasks pour ajouter les entrées manquantes.
Le gestionnaire de volume du cluster est configuré pour fournir des volumes sur le stockage partagé, accessibles depuis n'importe quel noeud Oracle Solaris Cluster où le logiciel Oracle Solaris Cluster peut être potentiellement exécuté.
Les périphériques bruts et les systèmes de fichiers requis pour le logiciel Oracle Database ont été créés sur les volumes de stockage.
Le logiciel Oracle Database est installé et accessible depuis tous les noeuds de cluster sur lesquels Oracle Database peut être exécuté.
Les variables de noyau du système d'exploitation UNIX sont configurées pour Oracle Database.
Le logiciel Oracle Database est configuré pour tous les noeuds de cluster sur lesquels il est possible d'exécuter Oracle Database.
Les packages de services de données sont installés.
Assurez-vous que vous disposez des informations suivantes :
Les noms des noeuds de cluster qui commandent le service de données.
Le nom d'hôte logique que les clients utilisent pour accéder au service de données. En règle générale, vous paramétrez cette adresse IP lors de l'installation du cluster. Reportez-vous au manuel Oracle Solaris Cluster Concepts Guide pour plus d'informations sur les ressources réseau.
Le chemin vers les fichiers binaires d'application Oracle Database pour les ressources que vous prévoyez de configurer.
Le type de base de données.
Pour HA pour Oracle Database, enregistrez deux types de ressources, SUNW.oracle_server et SUNW.oracle_listener, comme indiqué ci-après.
# clresourcetype register SUNW.oracle_server # clresourcetype register SUNW.oracle_listener
Cette étape n'est pas requise si vous utilisez le système de fichiers Oracle Solaris ZFS, car le groupe de ressources a été créé lorsque le système de fichiers ZFS local hautement disponible a été configuré dans la section Préparation des noeuds Oracle Solaris Cluster. Les ressources créées au cours d'autres étapes de cette procédure seront ajoutées à ce groupe de ressources.
Si vous le souhaitez, vous pouvez sélectionner l'ensemble de noeuds de cluster sur lesquels le service de données peut être exécuté à l'aide de l'option –n, comme suit.
# clresourcegroup create [-n node-zone-list] resource-group
Spécifie le nom du groupe de ressources. Vous pouvez choisir ce nom mais il doit être unique pour tous les groupes de ressources du cluster.
Cette vérification doit être effectuée lors de l'installation d'Oracle Solaris Cluster.
# clreslogicalhostname create -g resource-group [-h logical-hostname] logical-hostname-rs
Spécifie un nom d'hôte logique. Celui-ci doit obligatoirement se trouver dans votre base de données de service de noms. Si logical-hostname et logical-hostname-rs sont identiques, logical-hostname est facultatif.
Spécifie le nom que vous affectez à la ressource de nom d'hôte logique que vous créez.
# clresourcetype register SUNW.HAStoragePlus
![]() | Mise en garde - Les périphériques bruts des groupes de périphériques Oracle Solaris Cluster ne sont pas pris en charge dans les zones non globales. |
# clresource create -g resource-group -t SUNW.HAStoragePlus \ -p GlobalDevicePaths=device-path \ -p FilesystemMountPoints=mount-point-list \ -p AffinityOn=TRUE hastp-rs
Vous devez définir la propriété d'extension GlobalDevicePaths ou FilesystemMountPoints :
Si votre base de données se trouve sur un périphérique brut, définissez la propriété d'extension GlobalDevicePaths sur le chemin d'accès du périphérique global.
Si votre base de données se trouve sur le système de fichiers du cluster, spécifiez les points de montage du système de fichiers du cluster et du système de fichiers local.
La ressource est créée avec l'état activé.
# clresourcegroup online -M resource-group
Place le groupe de ressources mis en ligne en mode de gestion.
Ressource de serveur Oracle Database :
# clresource create -g resourcegroup \ -t SUNW.oracle_server \ -p Alert_log_file=path-to-log \ -p Connect_string=user/passwd \ -p Oracle_sid=instance \ -p Oracle_home=Oracle_home \ -p Restart_type=entity-to-restart \ [-p Dataguard_role=role] \ [-p Standby_mode=mode] \ -p Resource_dependencies_offline_restart=storageplus-resource \ resource
Ressource de listener Oracle Database :
# clresource create -g resource-group \ -t SUNW.oracle_listener \ -p Listener_name=listener \ -p Oracle_home=Oracle_home \ -p Resource_dependencies_offline_restart=storageplus-resource \ resource
Spécifie le nom du groupe de ressources dans lequel les ressources seront placées.
Spécifie le type de ressource à ajouter.
Définit le chemin d'accès sous $ORACLE_HOME du journal des messages du serveur.
Indique l'utilisateur et le mot de passe que le détecteur de pannes utilise pour se connecter à la base de données. Ces paramètres doivent être compatibles avec les autorisations que vous définissez dans Définition des droits d'accès Oracle Database Si vous utilisez une autorisation Solaris, saisissez une barre oblique (/) au lieu du nom d'utilisateur et du mot de passe.
Définit l'identificateur système Oracle Database.
Définit le chemin d'accès au répertoire d'accueil Oracle Database.
Définit le nom de l'instance du listener Oracle Database. Ce nom doit être identique à l'entrée correspondante dans le fichier listener.ora.
Indique l'entité qui sera redémarrée par le détecteur de pannes du serveur lorsqu'un échec entraîne un redémarrage. Définissez entity-to-restart comme suit :
Pour spécifier que seule cette ressource est redémarrée, définissez entity-to-restart sur RESOURCE_RESTART. Par défaut, seule cette ressource est redémarrée.
Pour indiquer que toutes les ressources du groupe de ressources contenant cette ressource doivent être redémarrées, définissez entity-to-restart sur RESOURCE_GROUP_RESTART.
Si vous définissez entity-to-restart sur RESOURCE_GROUP_RESTART, toutes les autres ressources (telles que Apache ou DNS) du groupe de ressources sont redémarrées, même si elles fonctionnent bien. Par conséquent, n'incluez dans le groupe de ressources que les ressources dont vous souhaitez le redémarrage lors du redémarrage de la ressource de serveur Oracle Database.
Spécifie le rôle de l'instance de base de données. Modifiez le role de la manière suivante :
Pour créer une ressource pour une instance de base de données principale qui n'a aucune instance de secours configurée, changez role en NONE. Il s'agit de la valeur par défaut.
Pour créer une ressource pour une instance de base de données principale qui a des instances de bases de données de secours configurées, changez role en PRIMARY.
Pour créer une ressource pour une instance de base de données de secours, remplacez role par STANDBY.
Spécifie le mode pour l'instance de base de données de secours. Si vous définissez Dataguard_role sur NONE ou PRIMARY, la valeur de Standby_mode est ignorée.
Pour spécifier une base de données de secours logique, changez mode en LOGICAL. Il s'agit de la valeur par défaut.
Pour spécifier une base de données de secours physique, changez mode en PHYSICAL.
Pour spécifier une base de données de secours d'instantané, changez mode en SNAPSHOT.
Indique le nom de la ressource à créer.
Les ressources sont créées avec l'état activé.
Cet exemple indique comment enregistrer HA pour Oracle Database sur un cluster à deux noeuds. Voici les exemples de noms utilisés dans les commandes :
phys-schost-1, phys-schost-2
schost-1
resource-group-1 (groupe de ressources de basculement)
hastp-rs
oracle-server-1, oracle-listener-1
ora-lsnr (listener), ora-srvr (serveur)
Exemple 1-2 Enregistrement de HA pour Oracle Database afin qu'il s'exécute dans un cluster de zonesCreate the failover resource group to contain all of the resources . # clresourcegroup create resource-group-1Add the logical hostname resource to the resource group . # clreslogicalhostname create -g resource-group-1 schost-1Register the SUNW.HAStoragePlus resource type. # clresourcetype register SUNW.HAStoragePlusAdd a resource of type SUNW.HAStoragePlus to the resource group. # clresource create -g resource-group-1 \ -t SUNW.HAStoragePlus \ -p FileSystemMountPoints=/global/oracle,/global/ora-data/logs,/local/ora-data \ -p AffinityOn=TRUE \ hastp-rsBring the resource group online in a managed state # clresourcegroup online -M resource-group-1Register the Oracle Database resource types. # clresourcetype register SUNW.oracle_server # clresourcetype register SUNW.oracle_listenerAdd the Oracle Database application resources to the resource group. # clresource create -g resource-group-1 \ -t SUNW.oracle_server \ -p Alert_log_file=/global/oracle/message-log \ -p Connect_string=scott/tiger \ -p Oracle_home=/global/oracle \ -p Oracle_sid=ora-srvr \-p Dataguard_role=STANDBY \ -p Standby_mode=PHYSICAL \ -p Resource_dependencies_offline_restart=hastp-rs \ oracle-server-1 # clresource create -g resource-group-1 \ -t SUNW.oracle_listener \ -p Oracle_home=/global/oracle \ -p Listener_name=ora-lsnr \ oracle-listener-1
Cet exemple indique comment enregistrer HA pour Oracle Database dans un cluster de zones. Voici la liste des exemples de noms utilisés dans les commandes, qui sont émises à partir du cluster global :
phys-schost-1, phys-schost-2
zonecluster1, zonecluster2
zchost-1
resource-group-1 (groupe de ressources de basculement)
hastp-rs
oracle-server-1, oracle-listener-1
ora-lsnr (listener), ora-srvr (serveur)
Create the failover resource group to contain all of the resources .) # clresourcegroup create -Z zonecluster1 resource-group-1Add the logical hostname resource to the resource group .) # clreslogicalhostname create -Z zonecluster1 -g resource-group-1 zchost-1Register the SUNW.HAStoragePlus resource type. ) # clresourcetype register -Z zonecluster1 SUNW.HAStoragePlusAdd a resource of type SUNW.HAStoragePlus to the resource group. ) # clresource create -Z zonecluster1 \ -g resource-group-1 \ -t SUNW.HAStoragePlus \ -p FileSystemMountPoints=/global/oracle,/global/ora-data/logs,/local/ora-data \ -p AffinityOn=TRUE \ hastp-rsBring the resource group online in a managed state # clresourcegroup online -Z zonecluster1 -M resource-group-1Register the Oracle Database resource types. ) # clresourcetype register -Z zonecluster1 SUNW.oracle_server # clresourcetype register -Z zonecluster1 SUNW.oracle_listenerAdd the Oracle Database application resources to the resource group.) # clresource create -Z zonecluster1 \ -g resource-group-1 \ -t SUNW.oracle_server \ -p Alert_log_file=/global/oracle/message-log \ -p Connect_string=scott/tiger \ -p Oracle_home=/global/oracle \ -p Oracle_sid=ora-srvr \ -p Dataguard_role=STANDBY \ -p Standby_mode=PHYSICAL \ oracle-server-1 # clresource create -Z zonecluster1 \ -g resource-group-1 \ -t SUNW.oracle_listener \ -p Oracle_home=/global/oracle \ -p Listener_name=ora-lsnr \ oracle-listener-1