VIP-RAC

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Type Notions réseau Oracle RAC (VIP, SCAN, interconnect)
Composants Adresse publique, VIP, adresse privée
Voir aussi Srvctl · OCR · CRS · GNS

Dans un cluster Oracle RAC, la configuration réseau est une source fréquente d'erreurs à l'installation. Chaque nœud RAC utilise trois adresses IP/hostnames distincts, dont la VIP (Virtual IP) — basculée automatiquement vers un nœud survivant en cas de panne, pour éviter aux clients de rester bloqués sur un timeout TCP en attendant le nœud tombé.

Les trois adresses réseau d'un nœud

  • Adresse publique (interface physique) : doit être enregistrée en DNS ou dans /etc/hosts, et pingable.
  • VIP (interface logique) : doit être enregistrée en DNS ou /etc/hosts, mais ne doit surtout pas répondre au ping avant la prise en charge par le cluster — Oracle configure lui-même cette interface virtuelle, elle ne doit jamais être préconfigurée manuellement (pas d'entrée eth0:1 statique).
  • Adresse privée (interconnect, interface physique) : dédiée au trafic interne du cluster (Cache Fusion), enregistrée en DNS ou /etc/hosts, pingable. Pas besoin de passerelle sur ce réseau. IPv6 ne pose pas de souci particulier ici.

Note : en cas d'usage d'IPMP (IP MultiPathing, Solaris), la VIP doit être portée par l'interface logique IPMP.

Exemple de configuration (documentation Oracle)

Nœud Hostname Type Adresse IP Enregistré dans
rac1 rac1 Publique 198.51.100.10 DNS (ou /etc/hosts)
rac1 rac1-vip Virtuelle 198.51.100.14 DNS (ou /etc/hosts)
rac1 rac1-priv Privée 10.0.0.1 /etc/hosts
rac2 rac2 Publique 198.51.100.11 DNS (ou /etc/hosts)
rac2 rac2-vip Virtuelle 198.51.100.15 DNS (ou /etc/hosts)
rac2 rac2-priv Privée 10.0.0.2 /etc/hosts

(IP d'exemple normalisées vers la plage de documentation RFC 5737 — même structure que l'exemple original de la documentation Oracle citée en référence)

Exemple de fichier /etc/hosts (documentation IBM)

10.10.10.200    db-node1 db-node1.pdl.pok.ibm.com
10.10.10.201    db-node2 db-node2.pdl.pok.ibm.com
10.10.10.202    db-node1vip db-node1vip.pdl.pok.ibm.com
10.10.10.203    db-node2vip db-node2vip.pdl.pok.ibm.com
10.10.50.200    db-node1priv db-node1priv.pdl.pok.ibm.com
10.10.50.201    db-node2priv db-node2priv.pdl.pok.ibm.com

Dépannage : erreur INS-40910 (IP déjà utilisée)

Message d'erreur rencontré à l'installation :

INS-40910 : L'IP est déjà utilisée par un périphérique sur le réseau

Points vérifiés pour en venir à bout :

  • Rejouer les tests de prérequis : runcluvfy.sh
  • Vérifier qu'aucun autre équipement du réseau n'utilise déjà cette IP
  • Vérifier côté réservation DHCP
  • Consulter la table ARP de l'hyperviseur et de la VM
  • Changer d'IP (et de hostname associé) si besoin
  • Désactiver IPv6
  • Revérifier la conformité de la configuration réseau (cf. section ci-dessus)
  • Vérifier que /etc/nsswitch.conf priorise bien files avant dns pour la résolution de noms
  • Vérifier l'absence d'un fichier résiduel /etc/.hosts.swp
  • Vérifier la déclaration MAC de la carte physique
  • Éviter le mode d'installation GNS au profit de CRS classique — dans ce cas précis, GNS a laissé passer l'installation mais le cluster ne fonctionnait pas ensuite
  • Désactiver firewall et SELinux
  • Créer une zone DNS locale fonctionnelle pour la résolution (exemple : example.com)
[root@rac1 ~]# nslookup rac2-vip.localdomain
Server:         192.168.0.53
Address:        192.168.0.53#53

Name:   rac2-vip.localdomain
Address: 192.168.0.123

[root@rac1 ~]# nslookup rac2-vip
Server:         192.168.0.53
Address:        192.168.0.53#53

Name:   rac2-vip.localdomain
Address: 192.168.0.123

Autres pistes explorées :

  • Passer l'interface VIP en physique
  • Installer un serveur named local sur la machine
  • Ajouter les enregistrements PTR dans le DNS pour les VIP

Solution retenue : ne pas préconfigurer l'interface virtuelle soi-même — c'est l'installeur Oracle qui s'en charge (pas d'entrée eth0:1 statique). C'est la cause la plus fréquente de ce message : une VIP déjà « en dur » sur une interface entre en conflit avec celle que Grid Infrastructure tente de prendre.

Voir aussi

  • Srvctl — démarrage/arrêt des VIP et SCAN listeners
  • OCR — registre où sont enregistrées les ressources réseau du cluster
  • CRS — Cluster Ready Services
  • GNS — Grid Naming Service, alternative DHCP/DNS dynamique à cette configuration statique

Références