Dags för lite mer automation?

 

 

Använder du GUI eller kommandotolk eller eller script + automationer för att hantera dina servrar?  Det vanligaste svaret är nog ”alla tre” vilket är bra, frågan är bara hur balansen ser ut mellan de tre modellerna. Majoriteten av de vi talar med önskar att graden av automation var högre men har begränsat med tid och resurser att göra någon större förändring i sitt sätt att arbeta.

I detta nummer av serverrummet visar vi hur enkelt det är att skapa automationer med hjälp av PowerEdges API’er i iDRAC och OME tillsammans med färdigt material från github/dell och developer.dell.com. Vi börjar i våra egna verktyg och avslutar med lite tips för Ansible och Terraform.

Vad menar vi med automation och IaC?

Automation
Uppgifter körs automatiskt och repetitivt med hjälp av skript eller kod
Enskilt script eller funktion som utför en specifik uppgift
T.ex. automatiserad konfiguration och installation av server i flera steg som avslutningsvis bootar upp servern från ett installationsmedia
 

IaC  (infrastruktur som kod)
Ett arbetssätt med mål att minimera avståndet mellan organisationer som t.ex. utvecklare och IT genom att automatisera och hantera infrastrukturen med kod, på liknande sätt som utvecklare livscykelhanterar sin applikationskod

IaC kan beskrivas som industrialisering av automation för att ge:

  • Större skalbarhet
  • Mer förutsägbarhet
  • Versionskontroll
Även om IaC för de flesta ligger utanför dagens kravbild är det en bra framtida målbild när man börjar jobba med automation. För om man skall vara strategisk när man väljer verktyg och metoder är det viktigt att de är långsiktiga redan från dag ett.
 

På vilka sätt kan man automatisera Dell servrar?
Automation innebär inte nödvändigtvis att man skriver script eller kod själv. I sin enklaste form kan man använda de inbyggda funktionerna i OpenManage Enterprise för att automatisera uppgifter. Att med några knapptryckningar dra i gång ett jobb som uppdaterar firmware på ett gäng servrar är lågt hängande frukt. Det finns ingen anledning att uppfinna hjulet på nytt om det inte behövs, använd de färdiga funktionerna som finns i OpenManage Enterprise till att börja med!

När det inte räcker till kan du börja skripta saker. Med traditionella skripts är det snabbt och enkelt att utföra enstaka repetitiva uppgifter mot din serverpark, eller kanske en kedja av uppgifter.

1. ENKLA SCRIPT MED RACADM CLI
Dells kommandoradsverktyg RACADM är bra för enklare script. Det är inbyggt i iDRAC och nås via SSH. Logga in i iDRAC från valfri SSH-klient (t.ex. Putty) och skriv sen in dina RACADM-kommandon. Prova t.ex. följande för att få ut systeminformation från din iDRAC:racadm getsysinfoVill man köra skript mot flera servar installerar man RACADM på en central Windows/Linux PC. Nedan ser du samma exempel som tidigare, kört från central PC. Kommunikationen sker med https.racadm -r 192.168.0.0 -u root -p calvin getsysinfo –nocertwarn

Parametrarna anger vilken server vi talar med och login-credentials. Tillägget –nocertwarn anger att vi vill ignorera certifikatvarningar

Fördelen med RACADM är att den är enkel att använda som ad-hoc CLI-verktyg och för enkla skript. Men om vi vill göra mer avancerade script där vi behöver hantera svaren från kommandon programmatiskt, är REST-API i regel en enklare väg, se nedan.

Så kommer du igång med RACADM

2. MER AVANCERAD SCRIPTNING MED ”REST API”
Jobbar du mot en specifik server använder du förmodligen iDRACs REST API (RedFish) medan hantering av många servrar enklast sker via OMEs REST API som är redfish-inspirerat.
RedFish
RedFish är en öppen DMTF-standard API för serverhårdvara. Redfish ersätter WSman protokollet som tidigare var standard i Dell servrar. Redfish ersätter helt det föråldrade IPMI protokollet.
Med Redfish kan du göra i princip allt mot en server som du kan göra via iDRACs webGUI, som till exempel övervaka, konfigurera, installera och uppdatera dina servrar. Eftersom Redfish är utvecklat för att man programmatiskt ska kunna hantera serverhårdvara är det ett givet val när du vill göra mer avancerade script än vad du kan göra med RACADM. Eller när du vill integrera in i andra managementsystem.
 

Hur kommer du i gång med Redfish?
Enklast är att använda Dell’s exempelskript för Python eller PowerShell. Använder du exempelskripten så behöver du inte sätta dig in i hur REST API’et i sig är konstruerat – du kan köra exempelskripten som de är och bara skicka med nödvändiga parametrar. Senare kan du bygga kompletta flöden genom att anropa/importera exempelskripten från ditt huvudskript.

Vill du skriva egna skript direkt mot REST API kan en bra startpunkt vara att använda t.ex. Postman API verktyg för att testa och utvärdera REST API’ets kommandon och respons innan du implementerar kommandona i din kod.

Hur ser REST API för OME ut?
För att automatisera mot grupper av servrar kan man jobba på likartat sätt som ovan. OpenManage Enterprise har ett Redfish-inspirerat REST API som har stöd för scriptad automation med stöd av de inbyggda funktionerna i OpenManage Enterprise.

3. AUTOMATISERINGSVERKTYG
Medan skript ofta handlar om att skapa en en serie kommandon som utför exakt definierade uppgifter så arbetar verktyg som Ansible och Terraform mer utkomstbaserat. Begreppet ”intent based” tillämpas och betyder att de som jobbar med automationer kan fokusera på slutresultatet för automationen, inte hur man åstadkommer det. Det gör det enklare att skala upp sin automation och gör det enkelt att monitorera sina servrar och se om de plötsligt skulle avvika från sitt ”intent”.
 

Ansible

 

Ansible är skapat för att utföra tasks (eg. python-kod) som skickas direkt till managerade Linux-servrar via SSH och körs där. Modellen blir aningen annorlunda med OME.
När vi kör Ansible mot OpenManage körs våra tasks lokalt på Ansible-servern medan kommandon på de managerade servrarna körs genom att Ansible-server i sin tur skickar Redfish- kommandon till servrarnas iDRAC via HTTPS.

I Ansible t.ex. sätter man samman ett antal fördefinierade moduler till en playbook som har kapacitet att utföra önskade uppgifter. Därefter definierar man sin miljö och önskad utkomst i en inventariefil. När man sedan kör sin playbook mot sin miljö så utförs bara de uppgifter som behövs för att man ska nå sin önskade utkomst.

Dell har färdiga moduler för framför allt Ansible, men även mot t.ex. Terraform. Modulerna använder i bakkant tidigare beskrivna API ’er mot iDRAC och OpenManage Enterprise. Men det är inget man behöver bry sig om eftersom det abstraheras av modulerna.

Låt oss titta lite närmre på Ansible-modulerna. Kan man Ansible så är det inga problem att komma i gång med modulerna för iDRAC och OpenManage Enterprise.

Här har du några resursersidor för att komma i gång med OpenManage modulerna för Ansible.

Har vi väl Ansible eller motsvarande på plats så har vi kommit en liten bit på väg mot Infrastructure As Code (IaC). Vilket innebär att man kan definiera en infrastruktur som kod och därmed öppna upp för att möjliggöra för till exempel utvecklare att deploya testmiljöer i sina Jenkins-flöden eller att en slutanvändare kan beställa en fysisk serverinstallation via ServiceNow.

 

 

Infographic

 

Läs artikel på dell.com

Månadens tips

En stor del av de kunddialoger vi har idag handlar om säkerhet och uppfyllnad av Sveriges snart kraftigt utökade cybersäkerhetslag. En av många, kritiska, delar av säkerhetsarbetet är att jobba bort gamla versioner av hård- och mjukvara, och kanske speciellt operativsystem. Med det i åtanke vill vi flagga för att

Windows Server 2025 snart är allmänt tillgängligt och kommer med nya funktioner samt förbättrad säkerhet. Vårt tips är att fasa ut äldre versioner av Windows Server så snabbt det går. Vi rekommenderar också att utvärdera bl.a. ”Windows Server 2025 Secured-core Server” i samband med uppgradering. Det kan vara ett bra sätt att lyft i säkerheten med bara en liten insats. Du kan läsa mer om detta på Microsoft web: Windows Server 2025 Secured-core Server – Microsoft Community Hub [techcommunity.microsoft.com]

Nästa nummer

Det kommer mycket intressanta nyheter framöver varför vi håller temat för nästa nummer öppen än så länge. Men som vanligt, du är välkommen att höra av dig till oss för önskemål.

About the Author: Dell Technologies