Skip to content

Problèmes démarrage target

PhilippeLeroux edited this page May 26, 2017 · 5 revisions

Problème résolu.

  • Pour ne plus avoir d'erreur avec target au démarrage du serveur il suffit que le nom du serveur soit dans /etc/hosts

     [root@K2 ~]# cat /etc/hosts
     127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 K2
     ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 K2
    
  • Application des précos Datera, configuration de /etc/lvm/lvm.conf :

    • write_cache_state = 0
    • readahead = "none"

Rétablir les disques d'un serveur.

Parfois, sur le serveur K2, target.service ne démarre pas correctement, si un serveur de BDD est lancé il ne voit pas les disques et rien ne peut démarrer.

Exemple sur un serveur standalone :

[root@srvsaturn01 plescripts]# crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  OFFLINE      srvsaturn01              STABLE
ora.FRA.dg
               ONLINE  OFFLINE      srvsaturn01              STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       srvsaturn01              STABLE
ora.asm
               ONLINE  ONLINE       srvsaturn01              Started,STABLE
ora.ons
               OFFLINE OFFLINE      srvsaturn01              STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       srvsaturn01              STABLE
ora.diskmon
      1        OFFLINE OFFLINE                               STABLE
ora.evmd
      1        ONLINE  ONLINE       srvsaturn01              STABLE
ora.saturn.db
      1        ONLINE  OFFLINE                               STABLE
ora.saturn.pdbsaturn01.svc
      1        ONLINE  OFFLINE                               STABLE
--------------------------------------------------------------------------------

Et la commande oracleasm listdisks ne renvoie rien.

Dans ce cas vérifier sur K2 le status de target, en se connectant root on a un message indiquant un incident et comment visualiser l'incident :

[...]
ABRT a détecté 1 incident(s). Pour plus d'informations, lancer : abrt-cli list --since 1472479571
[root@K2 ~]# abrt-cli list --since 1472479571
id 127e4b8016828ac4bb50fa29ff115cabad8af01e
reason:         utils.py:402:mount_configfs:RTSLibError: Cannot mount configfs
time:           jeu. 18 août 2016 09:26:45 CEST
cmdline:        /usr/bin/python /usr/bin/targetctl restore
package:        python-rtslib-2.1.fb57-3.el7
uid:            0 (root)
count:          5
Directory:      /var/spool/abrt/Python-2016-08-18-09:26:45-1708
Rapporté :    ne peut pas être rapporté

La fonction de rapport automatique « Autoreporting » est désactivée. Veuillez envisager de l'activer en effectuant
la commande « abrt-auto-reporting enabled » en tant qu'utilisateur root.

La commande journalctl -b n'apporte pas vraiment plus d'informations, n'ayant pas trouvé le moyen de corriger le problème voici les étapes à suivre pour remettre en marche tout ce bordel.

Le script san/check_target.sh permet de vérifier l'état et de démarrer le service s'il y a un problème.

[root@K2 ~]# san/check_target.sh 
# LV errors : 38

09h11> systemctl status target -l
● target.service - Restore LIO kernel target configuration
   Loaded: loaded (/usr/lib/systemd/system/target.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Tue 2016-08-30 08:09:38 CEST; 1h 2min ago
  Process: 1534 ExecStart=/usr/bin/targetctl restore (code=exited, status=1/FAILURE)
 Main PID: 1534 (code=exited, status=1/FAILURE)

Aug 30 08:09:38 K2.orcl target[1534]: errors = RTSRoot().restore_from_file(restore_file=from_file)
Aug 30 08:09:38 K2.orcl target[1534]: File "/usr/lib/python2.7/site-packages/rtslib_fb/root.py", line 66, in __init__
Aug 30 08:09:38 K2.orcl target[1534]: mount_configfs()
Aug 30 08:09:38 K2.orcl target[1534]: File "/usr/lib/python2.7/site-packages/rtslib_fb/utils.py", line 402, in mount_configfs
Aug 30 08:09:38 K2.orcl target[1534]: raise RTSLibError("Cannot mount configfs")
Aug 30 08:09:38 K2.orcl target[1534]: rtslib_fb.utils.RTSLibError: Cannot mount configfs
Aug 30 08:09:38 K2.orcl systemd[1]: target.service: main process exited, code=exited, status=1/FAILURE
Aug 30 08:09:38 K2.orcl systemd[1]: Failed to start Restore LIO kernel target configuration.
Aug 30 08:09:38 K2.orcl systemd[1]: Unit target.service entered failed state.
Aug 30 08:09:38 K2.orcl systemd[1]: target.service failed.
< systemctl return 3

# Try to start target
09h11> systemctl start target

09h11> systemctl status target -l
● target.service - Restore LIO kernel target configuration
   Loaded: loaded (/usr/lib/systemd/system/target.service; enabled; vendor preset: disabled)
   Active: active (exited) since Tue 2016-08-30 09:11:54 CEST; 159ms ago
  Process: 1967 ExecStart=/usr/bin/targetctl restore (code=exited, status=0/SUCCESS)
 Main PID: 1967 (code=exited, status=0/SUCCESS)

Aug 30 09:11:53 K2.orcl systemd[1]: Starting Restore LIO kernel target configuration...
Aug 30 09:11:54 K2.orcl systemd[1]: Started Restore LIO kernel target configuration.

Simplement relancer le service target permet de résoudre le problème (jusque présent ca à toujours fonctionné).

Revenir sur le serveur de BDD

  • Solution n° 1 : rebooter le serveur.

  • Solution n° 2 :

[root@srvsaturn01 disk]# cd ~/plescripts/disk
[root@srvsaturn01 disk]# ./discovery_target.sh
# ================================================================================================
# Discovery portal 10.0.0.5
09h42> iscsiadm --mode discovery --type sendtargets --portal 10.0.0.5
10.0.0.5:3260,1 iqn.1970-05.com.srvphilae:02
10.0.0.5:3260,1 iqn.1970-05.com.srvphilae:01
10.0.0.5:3260,1 iqn.1970-05.com.srvtchouri:02
10.0.0.5:3260,1 iqn.1970-05.com.srvtchouri:01
10.0.0.5:3260,1 iqn.1970-05.com.srvsaturn:01
10.0.0.5:3260,1 iqn.1970-05.com.srvpluton:01

09h42> iscsiadm -m node -P 0 | grep -v iqn.1970-05.com.srvsaturn:01
09h42> iscsiadm -m node --op delete --targetname iqn.1970-05.com.srvphilae:02
09h42> iscsiadm -m node --op delete --targetname iqn.1970-05.com.srvphilae:01
09h42> iscsiadm -m node --op delete --targetname iqn.1970-05.com.srvtchouri:02
09h42> iscsiadm -m node --op delete --targetname iqn.1970-05.com.srvtchouri:01
09h42> iscsiadm -m node --op delete --targetname iqn.1970-05.com.srvpluton:01

# Connect to iqn.1970-05.com.srvsaturn:01
09h42> iscsiadm -m node -T iqn.1970-05.com.srvsaturn:01 --portal 10.0.0.5 -l
Logging in to [iface: default, target: iqn.1970-05.com.srvsaturn:01, portal: 10.0.0.5,3260] (multiple)
Login to [iface: default, target: iqn.1970-05.com.srvsaturn:01, portal: 10.0.0.5,3260] successful.

# Pour visualiser les nouveaux disques : ls /dev/disk/by-path/ip-10.0.0.5:3260-iscsi-iqn.1970-05.com.srvsaturn:01-lun-*

Puis scanner les disques avec oracleasm scandisks

[root@srvsaturn01 disk]# oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
Instantiating disk "S1DISKSATURN01"
Instantiating disk "S1DISKSATURN02"
Instantiating disk "S1DISKSATURN03"
Instantiating disk "S1DISKSATURN04"
Instantiating disk "S1DISKSATURN05"
Instantiating disk "S1DISKSATURN06"
Instantiating disk "S1DISKSATURN07"
Instantiating disk "S1DISKSATURN08"

Les disques sont de nouveaux visibles, ASM peut donc de nouveau les monter :

[root@srvsaturn01 disk]# su - grid -c "asmcmd mount DATA; asmcmd mount FRA"
[root@srvsaturn01 disk]# crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  ONLINE       srvsaturn01              STABLE
ora.FRA.dg
               ONLINE  ONLINE       srvsaturn01              STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       srvsaturn01              STABLE
ora.asm
               ONLINE  ONLINE       srvsaturn01              Started,STABLE
ora.ons
               OFFLINE OFFLINE      srvsaturn01              STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       srvsaturn01              STABLE
ora.diskmon
      1        OFFLINE OFFLINE                               STABLE
ora.evmd
      1        ONLINE  ONLINE       srvsaturn01              STABLE
ora.saturn.db
      1        ONLINE  OFFLINE                               CLEANING
ora.saturn.pdbsaturn01.svc
      1        ONLINE  OFFLINE                               STABLE
--------------------------------------------------------------------------------
Clone this wiki locally