vSekar Blog

Getting Hands Dirty With Technology

  • About vSekar
  • Get in Touch
  • Facebook
  • Twitter
  • LinkedIn
Posts and Views are my Own

What is Alua? How it works?

August 14, 2019 By v

This article is Part of Becoming a VMware Storage Expert series

ALUA stands for “Asymmetric Logical Unit Access”, as per t10 SCSI-3 specifications (www.t10.org/cgi-bin/ac.pl?t=f&f=spc3r23.pdf). ALUA occurs when the access characteristics of one port may differ from those of another port. In English this means the LUN could be seen via both storage processors as an active but only one of them owns the Lun. Hence there will be optimized and unoptimized paths, the I/O is allowed to the LUN.

But the performance of the owner Storage Processor is better than that of the non-owner Storage Processor. To allow the initiators to identify which targets would provide the best I/O, the ports on each Storage Processor are grouped together into target port groups. Each target port group is given a distinctive “state” (asymmetric access state [AAS]), that denotes the optimization of ports on one SP compared to ports on the other SP (for example, active-optimized versus active-non-optimized).

Target Port Groups

A target port group is defined as a set of target ports that are in the same target port asymmetric access state at all times. A target port group asymmetric access state is defined as the target port asymmetric access state common to the set of target ports in a target port group. The grouping of target ports is vendor specific.

Target port Group Support

Target port Group Support provides a method for determining the access characteristics of a path to a LUN through a target port. Target Port Group Support is often used with arrays that handle load balancing and failover within the Storage Processors. Target Port Groups allows path grouping. Each port in the same Target Port Group has the same port state, which can be one of the following state:
Active/Optimized
Active/Non-optimized
Standby
Unavailable
In-Transition.

Some storage arrays might not support some of the latter three states.


Reference from Mostafa Khalil
Alua Storage Array

Asymmetric Access State(AAS)

Ports in an ALUA TPG can be in the same AAS at all times with respect to a given LUN. TPG’s AAS are reported to the initiators in response to the REPORT TPGS command. The TPG descriptor is reported in byte 1 of that response.

Possible states are as follows:

  • Active-optimized (AO)—Ports are on the owner SP and provided the best I/O to the LUN.
  • Active-non-optimized (ANO)—Ports are on the non-owner SP. I/O to the LUN is less optimal compared to AO AAS.

ESXi 6 sends the I/O to TPGs that are in AO AAS, but if they are not available, I/O is sent to TPGs that are in ANO AAS. If the storage array receives sustained I/O on TPGs that are in ANO AAS, the array transitions the TPG’s state to AO AAS. Who makes that change depends on the ALUA management mode of the storage array

-Venkatesh Sekar

Filed Under: Availability, storage, Troubleshooting

Becoming a VMware Storage Expert

January 5, 2019 By v

VMware Storage Expert 
VMware vSphere 
APD-PDL
VVOL
VSAN

How to become a VMware Storage Expert. Let me make it clear this is not a new certification VMware has introduced. This is a series I am starting to help people understand the storage part in the ESXi and implement it better.

I have engaged in several support calls where customers complain that the storage isn’t performing well, very high latency, production environment is down after the LUN’s failed over between the storage processors.

Becoming a VMware Storage Expert means you have to understand and master how ESXi works with Storage. I am starting a series in this blog to explain the components involved when a Datastore is presented (Block or NFS) and mounted to an ESXi, how VVOL works, also will touch-base on vSan.

We will go over all the topics about Storage & availability and explain in detail.

What happens to ESXi when it encounters events like APD-PDL

Few other outage scenarios causing the storage to be unavailable

Here is the Series.

  • ALUA- What is it and how it works
  • Storage Plugins- PSA, NMP
  • What are APD and PDL?
  • How to Handle APD and PDL?

Filed Under: Availability, storage, Troubleshooting

Unknown command: `ntp.server.add’ while setting up 6.7 PSC

July 17, 2018 By v

I followed the user guide to setup NTP on the PSC by running the command ntp .server.add –servers 0.europe.pool.ntp.org and I got this error Unknown command: `ntp.server.add’

Many would have encounter issues with NTP while setting up multiple PSC on the environment.  The common issue I encountered was the time skew. Here is how I resolved it

I got an error: The time on this VMware vCenter Server Appliance is out of synchronization with the external Platform Services Controller with which you are trying to register by xxxx seconds

 

I dug into SSH session and started looking at the date started to compare the date between both nodes. Then I realized this is due to the NTP. One of my hosts was synchronizing with NTP and the other one with ESXi

Here is what I did :

Note: These cmdlets will not work on the shell, try it on bash.

Decide you want to use NTP or sync time with the host (using VMware tools)

 

NTP

Command> timesync.get
Mode: host

Changing the mode to NTP

Command> timesync.set –mode NTP
Command> timesync.get
Mode: NTP

The user guide will ask you to run ntp.server.add and ntp.server.set, however, this commands do not work on bash or shell on 6.7 appliance

Command> ntp.server.add –servers 0.europe.pool.ntp.org
Unknown command: `ntp.server.add’

I set ntp using this command
Command> ntp.set –servers 0.europe.pool.ntp.org

Verified the NTP

Command> ntp.get
Servers: 0.europe.pool.ntp.org

Now when I run timesync.get I should see mode as NTP

Command> timesync.get
Mode: NTP

Host (Use VMware Tools Time Synchronization)

If you want to sync the node time with host

Command> timesync.set –mode host

 

While setting up we do not have options to use the UI to make these changes, so we are stuck with CLI.

 

Alternatively, we can set up NTP from the shell

check the status of the NTP Servers configured by running

ntpq -p

To add ntp server edit /etc/ntp.conf

vi /etc/ntp.conf

add the ntp server FQDN or IP address

use ntpq -p to verify

Filed Under: Troubleshooting

  • 1
  • 2
  • 3
  • Next Page »