
Setting up an MSA – HP StorageWorks Modular SAN Array 1000 with ESX
In this document we will explain how we will connect this SAN to ESX servers, the logical thing is that we have an MSA with two controllers (otherwise, It doesn't make much sense to invest so much, if we don't have redundancy in controllers), as well as two fiber switches on the back to have redundancy at the switch level as well. And on each ESX server we will place a couple of fiber optic HBA's, to which we will connect each HBA to a fiber switch to have a high availability system.
Hardware Description:
![]() |
![]() |
![]() |
HP MSA1000
|
HBA
|
Fiber Cable
|
The way to connect this hardware would be as follows: In the MSA we have to have the hard drives that interest us, to create a volume/LUN needed to store all our data alongside all the virtual machines (MV). Since the VMs will be stored in this shared storage system in order to have the advantages of VirtualCenter, because if an ESX server fails, we have others to be able to execute the VMs. It is clear that only VMs will be executed on ESXs, will not be stored, so ESX servers with a couple of small RAID1 disks are left over. On each ESX server (or host) we will have two HBA's to which we will connect one socket to a fiber switch and the other socket to the other fiber switch of the MSA. Here's how:
In the case of this document, it will be carried out with three ESX servers, an HP disk array, and on each server two MSA's, We see how we would physically connect the fiber cables between the host's and the cabin.
GOOD, Once everything is connected, the MSA mounted, with its two controllers, Your two switches, their hard drives and fiber cables connected to the servers' HBAs. We have to connect to an MSA controller to configure it with a minimum, we will create a RAID with the disks, in my case a RAID 1 With everyone, in mirror (definition – HERE). And we will configure each connection so that it can be viewed later by each host.
We need to connect the cable that comes with the MSA, is one cable on one side an RJ45 with the other end of SERIAL port; we will connect the SERIAL port to a computer to be able to manage the MSA and the other end to one of the controllers on the front of the MSA. Once connected, from this computer, we open the HyperTerminal to configure the MSA. So “Beginning” > “Execute”, Write “Hypertrm” and we give “Accept”.
We indicate any connection name and accept.
Select the COM port where we have the serial cable and click on “Accept”,
We need to configure this data to configure the MSA:
Bits per second: 19200
Data Bits: 8
Parity: None
Stop bits: 1
Flow Control: None
GOOD, Once connected, we click on Enter several times to enter the console, with a first command called “Show Connections” we will see the connections that the MSA has connected, In my case I have two switches and in each one three fiber cables connected, So show me these six connections. We check that each connection is to a controller (Controller 1 o Controller 2).
We must take into account the WWNN and WWPN of each Host. WWNN is the name of the node globally and the WWPN is the port name globally. Personally, I usually copy everything to a notepad because we will need it later.
So I keep it all out there in a txt, 😉 PaLue.txt
We check how many disks we have with the command “show disks”. In my case I have 6 Equal disks of 146Gb each.
We check if we have any units (Volume or LUN) created between them, With the command “show unit”. If the MSA is new and the disks, We shouldn't have anything,
So we need to create a volume with the discs, A LUN (Logical Unit Number), Since I have 6 146Gb drives each and I'm interested in creating a RAID1 between all of them, for a 438Gb mirrored volume. This is already personal and each one of us has the RAID that we want to create, depending on the use you want to give to the cabin. Well, With the command “add unit 0 data=Disk101-Disk106 raid_level=1” I'll create my first unit (0) with the 6 disks that I indicate and the level of the RAID that I am interested in (1). We hit enter and it will create the volume perfectly.
Now we check that the unit is correctly created with the command “show unit”, we will see that we have a RAID1 with the disks we have indicated and the volume status is OK!!! It tells us the total size of the volume, perfect.
Now we need to know what the WWPN is for each HBA for each host. To do this,, We open the VI customer, the “Virtual Infrastructure Client” and we connect to each ESX server independently and taking into account each server which WWPN's has. All of this, in the tab “Configuration” ESX Server, in “Storage Adapters”, we'll see every HBA as vmhba1, vmhba2… and we have the data in “SAN Identifier”.
GOOD, now we have to create a connection for every HBA we have (The paths). Considering that each ESX server (hereinafter referred to as Host), has two HBA's (hereinafter called boxX) We will assign a name in order (in my case it would be something like: Host1_box1, Host1_box2, Host2_box1, Host2_box2 and Host3_box1 and Host3_box2). We create the connections with the:
“add connection HostX_boxX WWPN=XXXXXXXX-XXXXXXXX WWNN=XXXXXXXX-XXXXXXXX Profile=Linux”
Each one can indicate the name they want to the connection. The values of WWPN and the one that corresponds to the WWNN would be saved in the previous file of the Notepad (in my case in the PaLue.txt).
Once a connection is created, We can check that it has been updated perfectly by running the command: “Show Connections”, there we will see that it has a connection name and important the name of the profile corresponds to the value “Linux”.
Well, now it remains to do the same with the remaining connections…
We checked again with a “Show Connections” that there is no connection left to create and they all have the profile called “Linux”.
Once this is generated, we would already have the MSA configured to work with the ESX and be able to store the VMs in it!!!
Now we need to go ESX server to ESX server looking for the volume we just created in the MSA, So we connected with the “Virtual Infrastructure Client” to the first host, and on the “Configuration” We're going to “Storage Adapters. On every HBA we have we have to re-scan for this volume, So right-click and “Rescan” or from above “Rescan…”,
We will look for both possibilities and “OK”,
And if nothing comes out the first time, We have to re-scan (It's the most normal thing to do). And it should show us the volume at last, in my case I already see the volume of 410Gb! with LUN ID 1, in the HBA vmhba1 with the path vmhba1:0:1.
If we go to the part of “Storage (SCSI, SAN and NFS)” we must add this volume to be able to use it with the ESX, Click on “Add Storage…”. If we look now, We only have storage on the local hard drive of this host, we must add that of the MSA.
Select “Disk/LUN” to create a new datastore with the MSA volume, “Next”,
Shows us the available ones, we indicate the only one we have and “Next”,
It shows us that the volume has no content, Ok, “Next”,
We give you a descriptive name, in my case, “SAINT” and we continue, “Next”,
We leave everything by default to create the volume with the maximum possible size (“Maximize capacity”) with that format and that size of blocks (“256 GB , Block size: 1 MB”), “Next”,
Check that everything is correct and click on “Finish” to create it.
GOOD, We already see a new Datastore where we can host our virtual machines!
We can examine your content, with the right button on it, “Browse Datastore…”
In my case, being a new one and not having MV it will be empty.
Now we must add this datastore in the rest of the ESX servers as shown in the last steps and thus arrange all the host's of the same datastore to be able to use HA, VMotion, DRS…
www.bujarra.com – Héctor Herrero – Nh*****@bu*****.cOm – v 1.0