ESXi


Nutanix Calm – Multi-Cloud & Applikations-Automatisierung

In einem Unternehmen hat ein Jeder eine Aufgabe zu erledigen, für die er auch persönlich verantwortlich ist und an der auch oft der Erfolg gemessen wird. Und was kann hier frustrierender sein, als auf andere zu warten, um besagte Aufgabe zu erledigen? Unter Umständen Stunden, Tage, oder gar Wochen?

Das ist durchaus oft der Fall, wenn es um die Bereitstellung von IT-Ressourcen, wie beispielsweise Applikationen oder einfach nur virtuelle Maschinen geht. Oft müssen mühsam Tickets von Hand bearbeitet werden, was als Konsequenz auf beiden Seiten Frust hervorrufen kann. Vor allem in Zeiten in denen beispielsweise Entwickler in nur wenigen Tagen ein neues Feature entwickeln wollen und danach die Infrastruktur, welche dazu genutzt wurde, wieder eingerissen werden soll, ist es fatal, wenn die Bereitstellungsdauer länger als die Nutzungsdauer ist. Und so ist es wenig verwunderlich, wenn die „Schatten IT“ kontinuierlich überhandnimmt und die benötigten Ressourcen, z.B. in der Public Cloud abgerufen werden. Ich möchte damit nicht sagen, dass es nicht viele gute Use Cases für die Pulic Cloud gibt und diese verteufeln, sondern eher, dass diese dann bewusst genutzt werden sollte, mit entsprechender Kostenkontrolle & einem ausgeprägtem Sicherheitsbewusstsein.

Aber warum scheitern scheinbar so viele Unternehmen dabei, mit der Public Cloud in Sachen Self-Service und Automatisierung Schritt zu halten?

Was meine persönliche Erfahrung betrifft, so ist einer der wohl größten Faktoren, die Komplexität die mit der  Automatisierung selbst einhergeht, diese ans Laufen zu bekommen und im weiteren Verlauf auch entsprechend einfach betreiben zu können. Sprich, viel Zeit und Energie geht bereits verloren, die dafür notwenige Infrastruktur zu schaffen.

Und genau hier setzt Nutanix mit mehreren Komponenten an. Hyper-Converged Infrastructure (HCI) ist dabei nur der grundlegende IaaS „Building Block“, welcher die zugrundeliegende Infrastruktur vereinfacht und somit viele Stellschrauben und Reibungsfläche zwischen IT-Silos beseitigt. Doch um Ressourcen in Minuten bereitstellen zu können, bedarf es weit mehr. Ein Portal für den Self-Service Portal (SSP), Rollenbasierter Zugriff, uvm. Und genau hier kommt Nutanix Calm ins Spiel.

Nutanix Calm ist die integrierte Applikations-Automatisierung, welche es erlaubt, ganze Applikationen, oder auch einfache VMs, den Anwendern im Self-Service-Verfahren bereitzustellen. Ganz gleich ob lokal on-premises im eigenen Rechenzentrum, oder in der Public Cloud, bei den gängigen Providern wie AWS, GCP und Azure. Was auch zeigt, dass es hier nicht um einen Kampf lokal vs. Cloud geht, sondern darum eine Plattform für alle Clouds zu schaffen um die Workloads in die beste dafür geeignete Cloud zu provisionieren.

Nun stellt sich zunächst die Frage, wieviel Aufwand denn wieder dahinterstecken mag, diese Lösung bereitzustellen. Und die Antwort auf diese Frage zeigt deutlich, wie sich Nutanix von bisherigen Lösungen unterschiedet. Nutanix Calm „lebt“ in Prism Central und ist dort nativ integriert. Sprich rollt man Prism Central aus, was bei Nutanix Kunden typischerweise immer der Fall ist, da damit auch erweitere Funktionen für die zentrale Infrastrukturverwaltung einhergehen, z.B. um mehrere verteilte Nutanix Cluster zu veralten, ist Calm nur einen Klick entfernt, ganz nach der Nutanix “1-Click” Philosophie. Wichtig ist auch an dieser stelle zu erwähnen, dass Calm damit auch in den 1-Click Upgrades von Prism Central integriert ist und damit bequem auf dem neusten Stand gehalten werden kann.

 

Danach ist Calm einsatzbereit. Es bedarf also nicht wochenlanger Vorarbeit und Experten, nur um die Automatisierungs-Lösung zu implementieren. Jetzt kann zum Beispiel damit begonnen werden, Projekte anzulegen, in denen (AD/LDAP) Benutzer und deren Rollen innerhalb eines Projekts definiert werden. Die IT kann entscheiden, ob Sie die vordefinierten Applikationen (Blueprints) über den so genannten Marketplace Manager freigeben und somit im Marketplace veröffentlichen will, oder ob sie doch lieber eigene Applikationen definiert und veröffentlicht. Ganz gleich, der Marketplace dient als zentrale Anlaufstelle für den Self-Service der Benutzer, um von dort Applikationen selbstständig zu provisionieren.

Auch besteht die Möglichkeit, ganz einfach, mehrere Clouds anzubinden, die dann als Zielplattform für die Provisionierung genutzt werden können. So entsteht eine Control Plane, wo in Zeiten von „Multi-Cloud“ eine einfache zentrale Verwaltung möglich wird. Egal ob Nutanix AHV als Hypervisor, eine bestehende VMware vSphere Umgebung, oder auch wie angesprochen, die gängigen Cloud Provider. Hier wird alles unter einem Dach vereint.

In weiteren Blog Posts werde ich in die Einzelheiten einsteigen und alles Komponenten genauer erklären. Zum Abschluss hier noch ein kurzer Rundgang durch die einzelnen Teile von Calm.


FreeNAS 9.3 NFS share – ESXi datastore – Unable to connect to NFS server – Fixed! 4

Update2: I was able to “fix” the problem by downgrading to release 9.2.1.9 which works like a charm!

Update: Today I ran into the same problem again and I’m still working on it. This time adding a comment or modifying it didn’t help. Once I found out what is causing the problem I’ll update the post.

Since yesterday evening I was trying to mount a new FreeNAS (9.3) NFS share as ESXi 5.5 datastore and no matter what I’ve tried, the attempt always failed:UnableToConnectToNFSServer

~ # esxcfg-nas -a FreeNAS:Volume1 -o 192.168.180.150 -s /mnt/Volume1

Connecting to NAS volume: FreeNAS:Volume1

Unable to connect to NAS volume FreeNAS:Volume1: Sysinfo error on operation returned status : Unable to connect to NFS server. Please see the VMkernel log for detailed error information

 

ESXi : /var/log/vmkernel.log

2014-12-15T19:33:30.901Z cpu2:55811)NFS: 157: Command: (mount) Server: (192.168.180.150) IP: (192.168.180.150) Path: (/mnt/Volume1) Label: (FreeNAS:Volume1) Options: (None)

2014-12-15T19:33:30.901Z cpu2:55811)StorageApdHandler: 698: APD Handle a99dc9de-d6c49dd6 Created with lock[StorageApd0x41118f]

2014-12-15T19:33:40.023Z cpu1:34783)World: 14296: VC opID hostd-00ac maps to vmkernel opID f3171169

2014-12-15T19:34:00.023Z cpu1:34783)World: 14296: VC opID hostd-d3b4 maps to vmkernel opID 707e611f

2014-12-15T19:34:01.293Z cpu3:55811)StorageApdHandler: 745: Freeing APD Handle [a99dc9de-d6c49dd6]

2014-12-15T19:34:01.293Z cpu3:55811)StorageApdHandler: 808: APD Handle freed!

2014-12-15T19:34:01.293Z cpu3:55811)NFS: 168: NFS mount 192.168.180.150:/mnt/Volume1 failed: Unable to connect to NFS server.

 

FreeNAS: /var/log/messages

Dec 15 20:33:42 FreeNAS mountd[3769]: mount request succeeded from 192.168.180.80 for /mnt/Volume1

Dec 15 20:33:57 FreeNAS mountd[3769]: mount request succeeded from 192.168.180.80 for /mnt/Volume1

Dec 15 20:34:02 FreeNAS mountd[3769]: mount request succeeded from 192.168.180.80 for /mnt/Volume1

This screenshot looks like many others floating around in multiple community threads and the config seemed to work for a couple of users: FreeNASShareProperties

But it took me a while to realize that I should try to add a “Comment:” FreeNASShareComment

~ # esxcfg-nas -a FreeNAS:Volume1 -o 192.168.180.150 -s /mnt/Volume1

Connecting to NAS volume: FreeNAS:Volume1

FreeNAS:Volume1 created and connected.

FreeNASConnectedShare

I hope this helps to save you some time!


NVMe – Flash unleashed

In this post I want to provide you with a quick introduction into NVMe, the next generation of Flash devices.

So what’s NVMe also known as Non-Volatile Memory Express or Non-Volatile Memory Host Controller Interface Specification (NVMHCI)?

The idea behind NVMe is to improve the storage stack by optimizing the way an application accesses a Flash device. NVMe offers not only a lightweight specification optimized for Flash, but also cuts some corners by removing components within the I/O path like the RAID controller. NVMe leverages PCIe as transport media which offers high bandwidth and a direct path to the hosts CPU and memory. This in turn removes another potential bottleneck, the limited bandwidth of SAS or SATA connection.

So the overall goal was to empower modern Flash devices so they can deliver their full potential and no longer being slowed down by a storage stack which was primarily designed for slow spinning disks.

I’ve found this graphic from Intel which illustrates the idea quite well.IntelNVMeSource: https://communities.intel.com/community/itpeernetwork/blog/2014/06/16/intel-ssd-p3700-series-nvme-efficiency

Below you can find a table to get a basic overview about the bandwidth PCIe can provide.

PCI Express
version

Per lane

Bandwidth

1.0

2 Gbit/s

250 MB/s

2.0

4 Gbit/s

500 MB/s

3.0

7.877 Gbit/s

984.6 MB/s

4.0

15.754 Gbit/s

1969.2 MB/s

Source: http://en.wikipedia.org/wiki/PCI_Express

As you can see even a single PCIe 3.0 lane provides more bandwidth than a 6Gb/s SAS connection. The cool thing about NVMe is that it is not limited to the form factor of PCIe Flash cards, it also made its way into a new generation of 2.5” SSDs. “How?” you might ask because it’s not obvious.

Instead of putting a RAID Controller into your server to attach SSD drives via SAS or SATA as usual, you can put in a PCIe extender card instead. This adapter extends the PCIe connectivity via SFF-8639 cables to the server backplane as usual. This of course will only work with corresponding backplanes & NVMe SSDs which have a PCIe based interface like Intel’s DC P3700 series.

From what I’ve seen, a single extender plugged into a PCIe x16 slot can provide four PCIe x4 interfaces to connect four 2.5” drives. This means each SSD can make use of 31,508 Gb/s of available bandwidth! This now shifts back the bottleneck from the transport media to the device itself.

The new NVMHCI specification mentioned above defines a new host interface as well as a command set for use with non-volatile memory which can be compared to SCSI or AHCI & SATA to some extent. For example SCSI (Small Computer System Interface) also defines a protocol, a command set and interfaces like SAS. However all of them define a way how to exchange data between the attached storage device and the host’s system memory.

I’ve tried to outline the relationships below:

  • Host system <- AHCI -> HBA/Controller <- SATA -> DISK
  • Host system <- SCSI -> HBA/Controller <- SAS -> DISK
  • Host system <- NVMHCI -> FLASH DEVICE

To be able to make use of the new NVMe based devices inside your host(s) you have to have a proper driver installed which also can take care of the SCSI to NVMe translation. This enables NVMe devices to function within the existing operating system I/O stack.

NVMeDriver

Source: http://www.nvmexpress.org/wp-content/uploads/NVM-Express-SCSI-Translation-Reference-1_1-Gold.pdf

More technical details like a list of the NVM Express key attributes can be found here and news about the recently delivered NVMe 1.2 specification here.

Whereas Windows Server 2012 R2 ships with native NVMe support, ESXi was lacking a little behind. But on the 12th of November 2014 VMware has released the very first “VMware Native NVM Express Driver” for ESXi 5.5 which can be downloaded here.

Before warping up this post I also want to mention that there are also other specifications like SCSI over PCIe (SOP) or SATA Express in the making which aim to achieve the same result by leveraging existing protocols. So at some point in time it’s possible that multiple approaches co-exist, but at the moment NVMe leads the trail of innovation.

NVMe like any other next generation media, DDR4 memory or Flash storage on the memory channel for example, shows the real power of server side acceleration. Those new technologies make their way into the hypervisor relatively quickly compared to a central storage system and allows FVP customers to adapt them early on. FVP enables its users to leverage low latency & high IOPS medias as close to the virtual machine as close as possible. With the ability to easily scale performance by adding new devices or by adding new hosts to a cluster, we can scale performance as it’s required by the applications. This illustrates how future-proof FVP as storage acceleration platform really is.


ESXi shows false Memory Warnings / Alerts 3

It could happen that your ESXi host(s) show a „random“ memory error even if everything seems to be fine. These warnings or alerts can be caused by old log entries and need to be clear manually to fix the problem. But of course if you are not certain if this is maybe a real hardware issue, you should definitely raise an incident at the corresponding vendor and perform a hardware diagnosis.MemoryWarning

However resetting the sensors or just updating won’t help here, you will need to perform the following steps:

  1. Switch the view from “Sensors” to “System event log”
  2. Reset the event log
  3. Switch the view from “System event log” to “Sensors”
  4. Perform an update to check if the warning disappears
  5. If it didn’t work, try to reset the sensors and update again
  6. If this didn’t work either, login to the host and restart the management agents: services.sh restart

This fixed the problem for me and I hope it helps to save you some time.