ViPR Controller : échec de la création d’un volume sur VNX
Summary: ViPR Controller : échec de la création d’un volume sur VNX
Symptoms
Ce problème se produit après la mise à niveau du code de l’environnement d’exploitation (OE) VNX vers la version : VNX : 05.33.009.5.217
Ce problème a également été observé sur la version 05.33.009.5.231 sans le correctif.
L’utilisateur ne peut pas créer de volume sur VNX.
La commande échoue par intermittence mais régulièrement.
Le problème persiste après l’exécution de refsys, le redémarrage du serveur SMI-S et le redémarrage d’ECOM.
Le volume reste sur la baie après une panne. Une nouvelle soumission de la commande échouera avec le même nom de volume.
Erreur d’interface utilisateur de ViPR Controller
[ERROR] Wed Aug 29 10:58:09 UTC 2018 Error 16000: Message: The job has failed: Caught an exception while trying to update volume attributes:
The requested object cannot be found. (com.emc.cmp.osls.se.osl.Device.StorDevShow():280 C:ERROR_CLASS_SOFTWARE F:ERROR_FAMILY_NOT_FOUND R:1000052 L:2 C:ERROR_CLASS_SOFTWARE F:ERROR_FAMILY_NOT_FOUND R:1000052 No objects of the requested type were found : 2 : 7 : "The device name specified could not be found")
Remarque :
voir également l’article de la base de connaissances suivant :
523574 : ViPR Controller : l’utilisation de Solutions Enabler 7.6.2.102/SMI-S 4.6.2.30 par ViPR Controller nécessite un RPQ https://support.emc.com/kb/523574 (article de niveau 40)
Cause
Étant donné que les informations de volume ne sont pas fournies par SMI-S, la restauration de ViPR Controller ne supprime pas le volume de la baie.
Resolution
Résolution :
après avoir vérifié l’erreur de l’interface utilisateur de ViPR Controller indiquée dans la section Problème ci-dessus, ouvrez une demande de service auprès de Remote Proactive (RCM) : groupe de support technique unifié
pour chaque VNX à mettre à niveau demandant VNX HotFix ManagementServer_1.3.9.1.0306-1.upf (réf. AR 958882), y compris la justification de la nécessité du correctif et les
versions actuelles du modèle de baie VNX, de VNX Block OE, de Solutions Enabler, de SMI-S et de ViPR Controller. Voir les remarques ci-dessous.
Additional Information
Remarque : lorsque la création d’un volume échoue, le volume back-end reste en place et doit être supprimé manuellement de la baie.
Journaux ViPR C
ViPR C émet une commande pour créer un volume :
Volume:<Volume Name removed> , IsThinlyProvisioned: true
vipr2 vipr2 controllersvc 2018-09-03 14:25:31,776 [1684|createVolumes|39a39976-b004-45e9-98c7-f1e463d25517c83c9b0f-fe18-485b-85c3-cdd8b25f2a8d] INFO SmisCommandHelper.java (line 201)
SMI-S Provider: <SMI-S Provider FQDN removed> -- Attempting invokeMethod CreateOrModifyElementFromStoragePool on objectPath=/root/emc:Clar_StorageConfigurationService.CreationClassName="Clar_StorageConfigurationService",Name="EMCStorageConfigurationService",SystemCreationClassName="Clar_StorageSystem",SystemName="CLARiiON+CKM<CLARiiON Serial Number removed>" with arguments:
inArg[0]=uint16 ElementType = 5;
inArg[1]=Clar_UnifiedStoragePool ref InPool = "root/emc:Clar_UnifiedStoragePool.InstanceID=\"CLARiiON+CKM<CLARiiON Serial Number removed>+<Pool Name removed>\"";
inArg[2]=uint64 Size = 10737418240;
inArg[3]=uint32 EMCNumberOfDevices = 1;
inArg[4]=string ElementName = "<Volume Name removed>";
inArg[5]=Clar_StoragePoolSetting ref Goal = "root/emc:Clar_StoragePoolSetting.InstanceID=\"CLARiiON+CKM<CLARiiON Serial Number removed>+D+T+3031128139+<Pool Name removed>\"";
Returned: 4096 with output arguments:
outArg=uint64 Size = 10737418240;
outArg=SE_ConcreteJob ref Job = "root/emc:SE_ConcreteJob.InstanceID=\"<1234567890>\"";
Execution time: 0.591798 seconds.
Journaux SMI-S Provider :
SMI-S reçoit la commande et fournit un ID concret.
Mon Sep 03 16:25:31 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 2013263616 StorageConfigurationService.BlockServices DEBUG EMC_StorageConfigurationService.cpp 1887 : Element size: 10737418240
Mon Sep 03 16:25:31 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 2013263616 global DEBUG 163 : OslCache missing cache entry for array <Array type="CLARiiON" encoding="String" value="CKM<CLARiiON Serial Number removed>" />
Mon Sep 03 16:25:32 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 2013263616 global INFO Job.cpp 459 : Job <1234567890> Submitted
Mon Sep 03 16:25:32 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 2013263616 StorageConfigurationService.BlockServices DEBUG EMC_StorageConfigurationService.cpp 2705 : Submit jobId <1234567890> to run asynchronously
Mon Sep 03 16:25:32 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 2013263616 JobControl INFO JobTableMonitor.cpp 61 : Job table monitor started.
Mon Sep 03 16:25:32 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 -1272031488 JobControl DEBUG JobTableMonitor.cpp 88 : Job table monitor started.
Mon Sep 03 16:25:32 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 2013263616 JobControl DEBUG JobTable.cpp 107 : Added to job table job id: <1234567890>
Mon Sep 03 16:25:32 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 -1269930240 BlockServices.JobControlVolume DEBUG JOB_VolCreate.cpp 400 : Create Storage Volume Job Id:<1234567890>
Mon Sep 03 16:25:32 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 2013263616 JobControl INFO JobControl.cpp 86 : Tâche démarrée : <1234567890>
Journaux SMI-S :
SMI-S signale que la création du volume est terminée :
Mon Sep 03 16:28:02 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 -1269930240 BlockServices.JobControlVolume DEBUG JOB_VolCreate.cpp 1891 : Completed performImmediateSync().
Mon Sep 03 16:28:02 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 -1269930240 BlockServices.JobControlVolume INFO JOB_VolCreate.cpp 1908 : Created volume: <Device name="<DeviceID replaced 12345>" />
Mon Sep 03 16:28:02 +0200 2018 <SMI-S Provider Name removed> ECOM 26037 -1269930240 global INFO Job.cpp 584 : Marked job 100% completed, Job id: <1234567890>
Journaux ViPR :
les journaux ViPR indiquent que la tâche SMI-S est terminée :
vipr2 vipr2 controllersvc 2018-09-03 14:28:02,413 [pool-58-thread-1] INFO SmisJob.java (line 197) Status value[0]: 17
vipr2 vipr2 controllersvc 2018-09-03 14:28:02,413 [pool-58-thread-1] INFO SmisJob.java (line 197) Status value[1]: 2
vipr2 vipr2 controllersvc 2018-09-03 14:28:02,413 [pool-58-thread-1] INFO SmisJob.java (line 200) SmisJob: <1234567890> succeeded
vipr2 vipr2 controllersvc 2018-09-03 14:28:02,413 [pool-58-thread-1] INFO SmisJob.java (line 243) SmisJob: Post processing job: id <1234567890>, provider: <SMI-S Provider FQDN removed>
Journaux SMI-S :
une fois le volume créé, ViPR Controller interroge SMI-S pour mettre à jour la base de données, mais SMI-S ne peut pas fournir de détails sur le volume.
Journaux ViPR :
cette erreur est transmise à ViPR C à partir de SMI-S et la commande échoue. Étant donné que le volume est introuvable lors de l’interrogation de SMI-S, le volume n’est pas supprimé de la baie lors de la restauration :
WBEMException: CIM_ERR_NOT_FOUND (The requested object cannot be found. (com.emc.cmp.osls.se.osl.Device.StorDevShow():280 C:ERROR_CLASS_SOFTWARE F:ERROR_FAMILY_NOT_FOUND R:1000052 L:2 C:ERROR_CLASS_SOFTWARE F:ERROR_FAMILY_NOT_FOUND R:1000052 No objects of the requested type were found : 2 : 7 : "The device name specified could not be found"))
at org.sblim.cimclient.internal.wbem.CloseableIteratorSAX.hasNext(CloseableIteratorSAX.java:121)
at org.sblim.cimclient.internal.wbem.WBEMClientCIMXML.getIterator(WBEMClientCIMXML.java:2134)
at org.sblim.cimclient.internal.wbem.WBEMClientCIMXML.getInstance(WBEMClientCIMXML.java:1257)
at com.emc.storageos.volumecontroller.impl.smis.job.SmisAbstractCreateVolumeJob.commonVolumeUpdate(SmisAbstractCreateVolumeJob.java:311)
at com.emc.storageos.volumecontroller.impl.smis.job.SmisAbstractCreateVolumeJob.processVolume(SmisAbstractCreateVolumeJob.java:219)
at com.emc.storageos.volumecontroller.impl.smis.job.SmisAbstractCreateVolumeJob.updateStatus(SmisAbstractCreateVolumeJob.java:120)
at com.emc.storageos.volumecontroller.impl.smis.job.SmisJob.poll(SmisJob.java:246)
at com.emc.storageos.volumecontroller.impl.job.QueueJobTracker.run(QueueJobTracker.java:90)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
vipr2 vipr2 controllersvc 2018-09-03 14:28:03,097 [pool-58-thread-1] INFO SmisAbstractCreateVolumeJob.java (line 372) Skipping step addVolumesToConsistencyGroup: volumes [<Volume URN removed>] do not reference a consistency group.
vipr2 vipr2 controllersvc 2018-09-03 14:28:03,097 [pool-58-thread-1] INFO SmisAbstractCreateVolumeJob.java (line 158) Updating status of job 39a39976-b004-45e9-98c7-f1e463d25517c83c9b0f-fe18-485b-85c3-cdd8b25f2a8d to SUCCESS
Created volume successfully .. NativeId: <DeviceID replaced 12345>, URI: <Volume URN removed>
vipr2 vipr2 controllersvc 2018-09-03 14:28:03,101 [pool-58-thread-1] INFO VolumeTaskCompleter.java (line 106) opType: CREATE_BLOCK_VOLUME detail: VolumeCreateFailed:Volume is created.
vipr2 vipr2 controllersvc 2018-09-03 14:28:03,103 [pool-58-thread-1] INFO VolumeTaskCompleter.java (line 82) Bourne VolumeCreateFailed event recorded for Volume <Volume URN removed>
vipr2 vipr2 controllersvc 2018-09-03 14:28:03,126 [pool-58-thread-1] INFO WorkflowService.java (line 653) Updating workflow step: 39a39976-b004-45e9-98c7-f1e463d25517c83c9b0f-fe18-485b-85c3-cdd8b25f2a8d state ERROR : The job has failed: Caught an exception while trying to update volume attributes: The requested object cannot be found. (com.emc.cmp.osls.se.osl.Device.StorDevShow():280 C:ERROR_CLASS_SOFTWARE F:ERROR_FAMILY_NOT_FOUND R:1000052 L:2 C:ERROR_CLASS_SOFTWARE F:ERROR_FAMILY_NOT_FOUND R:1000052 No objects of the requested type were found : 2 : 7 : "The device name specified could not be found")