top of page
Search

NCM Self Service in 5 minuten

  • Writer: Marco Tubben
    Marco Tubben
  • Sep 19
  • 4 min read
Wat is Self Service :
Wat is Self Service :

Nutanix Self-Service is een functie binnen het Nutanix-platform waarmee gebruikers (zoals developers, testers of andere afdelingen) zelf virtuele machines (VM's) en andere IT-resources kunnen aanmaken, beheren en verwijderen, zonder dat ze telkens een IT-beheerder hoeven in te schakelen.

 

Hoe werkt het op hoofdlijnen?


De IT-beheerder maakt een "project" aan in Nutanix Prism Central.

Dit project bevat:

  • Welke gebruikers toegang hebben

  • Welke VM-templates beschikbaar zijn

  • Hoeveel resources (CPU, RAM, opslag) ze maximaal mogen gebruiken

  • Op welke infrastructuur de VM’s mogen landen (Lokaal Nutanix cluster of bv een Public Cloud)


ree

Gebruikers loggen in op de Nutanix interface (Prism Central) en krijgen een beperkt portaal te zien.

Alleen de VM’s en relevante zaken zijn zichtbaar voor de gebruiker

Reguliere Prism Central items zijn niet te zien.


ree

Ze kunnen dan binnen hun project:

  • Nieuwe VM’s aanmaken (op basis van vooraf ingestelde templates)

  • VM’s starten, stoppen of verwijderen

  • Eventueel snapshots maken of scripts draaien (afhankelijk van rechten)

 

Vandaar de naam Self Service. Het is zelfbediening binnen grenzen.


Blueprints binnen Self Service


Blueprints zijn vooraf gedefinieerde sjablonen waarmee gebruikers met één klik volledige IT-omgevingen kunnen uitrollen — bijvoorbeeld een complete applicatie-stack met applicatieservers, databaseservers en een loadbalancer ervoor.

 

Een blueprint kan bestaan uit:

  • Eén of meerdere VM’s

  • VM-templates

  • Cloud-init scripts of andere post-installatiescripts

  • Netwerkconfiguraties

  • Storage-instellingen

  • Resources (limieten, sizing)

  • Applicatie-installatie-instructies

 

Een blueprint is visueel te bouwen op een Canvas binnen Prism :


ree


Zoals in bovenstaand voorbeeld zie je een 3-Tier applicatie bestaande uit vm’s op een lokaal Nutanix cluster en 1 webserver in Amazon (gewoon omdat het kan en te laten zien dat Self Service tegelijkertijd over meerdere Public Clouds kan functioneren) die achter een proxy server zitten.

 

Deze blueprints kunnen eventueel in de Marketplace gepubliceerd worden om door andere projecten gebruikt te worden.

Als blueprints eenmaal uitgerold zijn is dat zichtbaar onder de sectie Applications :

 

ree

Hier zien we de applicatie genaamd Marco-LAMP (Linux-Apache-MySQL-PhP)


ree

Deze bestaat uit 5 VM's (1 proxy, 3 webservers en 1 database server)


Beheer van applications  mbv Playbooks


Playbooks is een tool in Prism om routinematige  zaken te automatiseren op basis van gebeurtenissen (alerts, triggers), zoals bv het uitbreiden van geheugen in een VM. Triggers zijn meestal event gedreven zoals tijdschema’s, webhooks etc.

Playbooks zijn onderdeel van Intelligent Operations.


Dat ziet er dan als volgt uit :


ree

In dit Playbook wordt een VM uitgebreid met 1 GB geheugen. Allereerst wordt er een snapshot gemaakt, vervolgens de VM uitgezet, het geheugen “bijgeplaatst” en de VM wordt weer aangezet. Je kunt alle veel voorkomende taken op deze manier vatten in playbooks en op elk  moment gebruiken via Prism Central:


ree


ree

Dit was een handmatige actie. Deze zijn ook te koppelen aan b.v. een Alert dat optreed.

In dit voorbeeld is er een Alert Policy gemaakt die een kritische melding geeft bij een threshold van 20%:


ree

Ook is er een Alert Playbook gemaakt waarin bij de gedefinieerde Alert onderstaande acties uitgevoerd worden (Aanmaken Snapshot en toevoegen geheugen)


ree

We laten vervolgens als test een memory intensieve taak lopen en we zien dat het playbook getriggerd wordt door de alert:


Alert :


ree

Door trigger playbook geactiveerd:


ree


ScaleIn en ScaleOut voorbeeld


Wanneer er eenmaal een applicatie is uitgerold kan het b.v. zijn dat binnen de applicatie de webservers het erg druk krijgen. Dan is er de noodzaak om het aantal webservers uit te breiden. In plaats van handmatig nieuwe VM’s te deployen is onderstaande veel eenvoudiger :

 

Binnen de blueprint kun je de Actions uitbreiden met verschillende zaken, hieronder is bijvoorbeeld een ScaleIn, een Scaleout en een DatabaseBackup actie opgenomen :


ree

Deze acties zijn eenvoudig te gebruiken binnen je applicatie:


ree

Deze acties zijn b.v. weer te koppelen aan een alert die ziet dat de webservers hoge load hebben zodat automatisch een extra VM  uitgerold wordt om de andere VM’s te onlasten, vervolgens kan deze weer automatisch verwijderd worden indien de load voor langere tijd weer gedaald is.


Op deze manier zijn tal van mogelijkheden om op basis van alerts, maar zeker ook op basis van tijd- en event-triggerd gebeurtenissen acties te laten uitvoeren

 

Nutanix Runbooks


Een runbook is een framework om routinetaken en procedures te automatiseren die zich uitstrekken over meerdere applicaties, zonder dat er een blueprint of een applicatie bij betrokken is.

Een runbook is een verzameling taken die je kunt definiëren om opeenvolgend uit te voeren op verschillende endpoints (een verzameling IP adressen van VM’s)


Hieronder een voorbeeld.


We hebben een bepaald endpoint gedefinieerd, genaamd Marco-Endpoint 😊


ree


Voor deze demo is dat een Linux VM waar een postfix en s-nail (lokale MTA en mail client) geïnstalleerd is.

Vervolgens is er een runbook gemaakt welke met een script de disk configuratie verzameld en vervolgens in een mail verstuurd.


ree

Inhoud Runbook:


ree


Runbook is te testen door deze te selecteren en Execute te kiezen


Resultaat is een mail met de diskconfig van deze LinuxVM


ree

Attachement :


ree

Dit runbook is vervolgens ook te publiseren in de marketplace voor de gewenste projecten en daar te gebruiken :


ree

Conclusie


Zoals te zien zijn Playbooks en Runbooks krachtige tools die in het Self Service framework integreren en het automatiseren van processen en applicaties erg vereenvoudigen.



 
 
 

Comments


MarcosTips

©2022 by MarcosTips. Proudly created with Wix.com

bottom of page