Avlastning, acceleration och isolering med DPU

Basen för x86 serverarkitekturen har varit oförändrad över en väldigt lång tid. Vi har en CPU med tillhörande minne och bussar som går mot lagring och nätverk. Ett centralt os eller hypervisor hanterar jobb och fördelar resurser mellan dessa enligt policies. För att underlätta hantering och monitorering hittar vi dessutom i ”ett hörn” på moderkortet en komplett servicedator, iDRAC, kopplad till ett separat (out-of-band) nätverk för management.

Som stöd i form av avlastning och acceleration har vi länge haft möjlighet att addera olika typer av acceleratorkort som t.ex. GPU (Graphics Processing Unit) vilka tillför kraft och förmåga till servern.

En DPU (Data Processing Unit) är ett nätverkskort med inbyggd processor, minne, lagring och hårdvaruacceleratorer, som närmast kan beskrivas som en komplett liten server inbyggd i nätverkskortet. På DPU’n installerar man ett OS/Hypervisor som kan köra applikationer eller infrastrukturtjänster. Syftet med det är att man direkt på nätverkskortet där data skyfflas in och ut ur servern kan processa data utan att det behöver göras på CPU’n.
Det handlar om att tillföra tre fördelar i en server-lösning: avlastningacceleration och isolering.

DPU
Låt oss förklara de tre fördelarna lite närmare.
Avlastning
Ordinarie processorns primära uppgift på en server är att driva applikationer. Om vi kan avlasta ordinarie processorns från infrastrukturtjänster som virtuella switchar, brandväggar och lagringsoperationer så finns mer kraft över till applikationerna. Dessutom minskar ”infrastrukturskatten” för mjukvaror som licensieras per fysisk CPU-kärna.

Acceleration
När infrastrukturtjänster körs på DPU’n med dess inbyggda hårdvaruacceleratorer, utan att behöva konkurrera med applikationerna på CPU’n, så kommer dessa i allmänhet att köras snabbare.

Acceleration är effektivast när hårdvaruacceleratorer som finns inbyggda i DPU’n kommer till användning såsom kryptering/dekryptering, telemetri, nyckelhantering och paketinspektion.

Isolering
Om ovanstående fördelar är lätta att förstå så är isolering lite mer komplex. Om man kör infrastrukturtjänster som till exempel distribuerade brandväggstjänster på DPU’n så körs de isolerat gentemot det som körs på CPU’n vilket innebär att säkerheten avsevärt kan förbättras. Om vi dessutom kör alla infrastrukturtjänster på DPU’n så innebär det att hela CPU domänen blir fri att användas helt av ”kunden”. Därmed så isolerar vi produktionsmiljön från infrastrukturens managementmiljö. Och i förlängningen innebär det att mjukvarudefinierade nätverks- och lagringlösningar som körs på DPU’n kommer kunna presenteras ner till en bare metal-server med valfritt OS som bara får tillgång till de infrastrukturtjänster som behövs.

I vår senaste generations servrar kan dessutom DPU’n vara i gång och arbeta utan att servern (ordinarie CPU’n) är startad. Vilket kan vara värdefullt om DPU’n används för infrastrukturtjänster.

VMware vSphere och DPU

Stöd för DPU’er kommer att finnas i många lösningar, men först ut på bred front är VMware.

I VMware vSphere 8 har man introducerat vSphere Distributed Services Engine som i korthet innebär att man installerar ESXi på servern i sig men även på DPU’n och därefter kan man välja på vilken av de två ESXi-instanserna som de olika infrastrukturtjänsterna ska köras.

Först ut är att kunna köra den distribuerade virtuella switchen och/eller NSX på DPU’n. Då kommer dessa funktioner accelereras och isoleras samtidigt som serverns ordinarie CPU avlastas.

Senare kommer funktioner i vSphere för lagring över NVMe/TCP.

I fallet med VMware kommer Dell leverera det vi kallar Dell DPU, vilka baseras på 25 eller 100GbE Nvidia eller Pensando DPU’er, som har full integrering i Dells managementverktyg i form av iDRAC och OpenManage så att övervakning och uppdatering av DPU kan utföras med samma verktyg som på servern i övrigt. DPU’n hanteras via internt interface i servern.

DPU’er finns även till VXRail och integreras fullt i VXRail’s management stack.

Dell DPU kommer senare också att kunna köra en Dell DPU Stack med ett containerbaserat ramverk för en flora av Dell-utvecklade eller kundutvecklade lösningar. T.ex. mjukvarubaserade nätverkslösningar, lagringstjänster eller att för att snabbare förprocessa data.

Linux och DPU

Den andra varianten av DPU som vi kommer sälja är Partner DPU’er från Nvidia levererat med Ubuntu. Egna lösningar kan då utvecklas med Nvidias DOCA ramverk. Även OVN/OVS offloading med OpenStack på RHEL är på gång.

Använder man Partner DPU så hanteras DPU’n av tillverkarens (Nvidia) verktyg för hantering av DPU’n via ett externt nätverksinterface på DPU’n.

Med en partner DPU blir det ytterst öppet och flexibelt, men å andra sidan mer komplext då DPU’n hanteras som en helt separat servernod. I motsats till Dell DPU som mer hanteras som en integrerad enhet.

Som ni förstår så sker en bred utveckling av lösningar som kan dra nytta av DPU av såväl prestanda, energieffektivitet som säkerhetsskäl.

Vad krävs för att använda en DPU

Först och främst behöver du en server som stödjer DPU vilket våra vanligaste Intel- och AMD-baserade rackservrar redan gör. I dagsläget har vi validerat R650, R750, R6525, R7515 och R7525. Nu i sommar tillkommer R660, R760, R6615, R6625, R7615 och R7625.

Notera dock att inte alla DPU’er stöds i alla servrar.

Server
Några saker att tänka på

  • I många fall är det nödvändigt att köpa DPU tillsammans med servern för att säkerställa att nödvändiga PCIe risers och interna kablage finns på plats
  • För Dell DPUer behöver servern ha iDRAC Enterprise– eller Datacenter-licens
  • För DPU i VMware vSphere behöver du ha vSphere 8 Enterprise Plus för att få tillgång till vSphere Distributed Services Engine, som är tjänsten som DPU behöver. Det behövs dock inga separata extra vSphere licenser för DPU’n i sig
  • Vill du köra NSX på DPU’n så behöver NSX licensen vara NSX Enterprise Plus
  • Kör du partner DPU behövs ingen separat licens för den Ubuntu som levereras med
Läs artikel på serverrummet.se [serverrummet.se]
Tips från Serverrummet #24
Ni har väl inte missat att vi sedan version 3.10 i OpenManage Enterprise (OME) har en backup/restore funktion. Så får ni bättre konsistenta backuper av OME än att köra med vm snapshots.

Nästa nummer
I nästa nummer pekar vi på intressanta aspekter av den nya generationen av PowerEdge. Räkna med att det blir en hel del nyheter!

About the Author: Dell Technologies