ESXi might lose persistent device configuration changes.
search cancel

ESXi might lose persistent device configuration changes.

book

Article ID: 312776

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

Symptoms:
ESXi might lose persistent "Is Perennially Reserve" and "Is Shared Clusterwide" device configuration changed by:
  • esxcli storage core device setconfig -d <device> --perennially-reserved=<true|false>
  • esxcli storage core device setconfig -d <device> --shared-clusterwide=<true|false>
Persistent NMP configuration changes might be lost as well.
e.g.:
  • esxcli storage nmp satp generic deviceconfig set -c <enable_action_OnRetryErrors|disable_action_OnRetryErrors> -d <device>
  • esxcli storage nmp device set -d <device> --psp=<PSP>
It possibly happens if:
  • ESXi host is down more than 7 days.
  • Storage devices are temporarily disconnected from an ESXi host more than 7 days.
  • ESXi configuration is restored from backup taken 7 days or more ago.


Environment

VMware vSphere ESXi 6.7
VMware vSphere ESXi 6.5
VMware vSphere 7.0.x
VMware vSphere ESXi 6.0

Cause

ESXi maintains accessible storage device list periodically and has last access time of each storage device.
Since ESXi 6.0 U1b (build 3380124), ESXi removes storage devices which have not been seen in particular time interval (7 days by default) in order to prevent unexpected access to storage devices that no longer exist.
It triggers to remove persistent settings for the removed devices as well.
Once the removed devices are detected again, they are back to available but removed settings are not recovered.

If an ESXi host is down or storage devices are temporarily disconnected more than 7 days, e.g. for scheduled maintenance, the ESXi host would detect some storages as removing targets.

Resolution

Confirm target storage devices are available and apply changed settings again.

Workaround:
If ESXi host shutdown or disconnected storage condition more than 7 days is scheduled, we have workaround this issue to increase time interval via Web Client or esxcfg-advcfg command on ESXi.

Web Client
  1. Choose a target host in [Hosts and Clusters].
  2. Go to [Configure] tab, select [System] -> [Advanced System Settings]
  3. Change "Scsi.LunCleanupInterval" from default "7" to appropriate value.

esxcfg-advcfg
esxcfg-advcfg -s <days> /Scsi/LunCleanupInterval

Reverting to default:
esxcfg-advcfg -d /Scsi/LunCleanupInterval