Naar de inhoud

Documentatie

Besturingssystemen

Twee manieren om een besturingssysteem op een machine te krijgen. Een voorbereid template klonen is de snelle en de standaard. Over het netwerk installeren is wat je nodig hebt als er niets is om van te klonen: een kale machine, of een distributie die je geïnstalleerd wilt hebben in plaats van gekopieerd.

De catalogus

Je catalogus is de lijst besturingssystemen die je aanbiedt. Elk item is per integratie aan iets concreets gekoppeld: een template op je hypervisor, of een profiel voor netwerkinstallatie.

Uit een integratie zonder gekoppeld besturingssysteem kan niet besteld worden, en het bestelformulier zegt dat, met een link naar het tabblad dat het oplost. De telling houdt rekening met de installatiemethode: een integratie die op klonen van templates staat telt geen profielen mee die hij nooit gebruikt.

Templates

Een template is een machine op je eigen hypervisor die Provibr kloont. Je kunt er zelf een bouwen, of het platform er een voor je laten bouwen: de cataloguspagina geeft je een commando dat je op je eigen node draait, dat een cloud-image ophaalt, het klaarmaakt en er een template van maakt.

Een image klaarmaken is een vaste volgorde: kopiëren, de architectuur uitlezen, het bestandssysteem vergroten, de pakketindex bijwerken, installeren wat een cloudmachine nodig heeft, configureren, controleren of inloggen als root over SSH werkt, controleren of hostsleutels opnieuw gegenereerd worden, machinespecifieke identiteit wissen, en een checksum nemen.

De imagebibliotheek zelf wordt door je provider onderhouden en niet door jou. Wat jij beheert is welke items je organisatie aanbiedt en naar welk template elk item op elke integratie wijst.
De identifier van een template moet buiten de range vmid's op de integratie liggen. Binnen de range zou de toewijzer die identifier uiteindelijk uitgeven en zou de volgende bestelling van zichzelf klonen.

Over het netwerk installeren

De agent kan zelf een netwerkboot bedienen: hij beantwoordt het bootverzoek, geeft een bootloader uit, levert de kernel en de installer, en verstrekt het antwoordbestand dat de installatie onbewaakt maakt. Er hoeft vooraf niets in je netwerk te draaien.

Profielen

Een profiel is één installatie van begin tot eind beschreven. Er is een set die je provider onderhoudt en die je kunt klonen, en er zijn die van jezelf.

  • Distributie, release en architectuur, en het antwoordformaat dat daarbij hoort.
  • Waar het installatiemedium vandaan komt: geleverd door de agent, wat werkt zonder route naar het internet, of opgehaald bij een mirror, waarvoor die route wel nodig is.
  • Netwerk: vanaf de bootserver, of een vast adres uit je eigen adresbeheer.
  • Schijfindeling, SSH-beleid, extra pakketten, locale, toetsenbordindeling en tijdzone.
  • Commando's om na de installatie te draaien, ofwel binnen de installer ofwel binnen het geïnstalleerde systeem.

De dienst op de agent

Netwerkinstallatie wordt per agent aangezet, op een eigen tabblad. Je kiest op welke netwerkinterface hij luistert, en die keuze wordt door de kernel afgedwongen en niet door het programma.

Standaard antwoordt de agent naast de adresserver die je al hebt, en voegt hij alleen toe wat een netwerkboot nodig heeft. Hij kan ook zelf adressen uitgeven, maar dat wordt gepresenteerd als testvoorziening: het vraagt één specifieke interface en één adresblok, het vraagt om bevestiging, en het zet zichzelf na een dag weer uit.

De agent meldt ook andere bootservers die hij op hetzelfde segment ziet, want twee servers die dezelfde machine antwoorden is precies het soort probleem dat van een afstand onzichtbaar is.

Een installatie draaien

Je start hem op het tabblad Instellingen van de server. Provibr controleert alles wat het kan controleren voordat de knop iets doet: de agent ondersteunt het, de integratie staat op installeren over het netwerk, de dienst staat aan, van de machine zijn MAC-adressen bekend, en het profiel heeft alles wat het nodig heeft.

De volgorde doet ertoe en is met opzet zo. Je agent krijgt eerst te horen dat hij moet luisteren, en pas als hij dat bevestigt wordt de machine aangezet. Andersom zou de machine opstarten voordat er iets luisterde, geen antwoord krijgen en stilletjes terugvallen op zijn schijf.

Het root-wachtwoord en de SSH-sleutels gaan het antwoordbestand in dat de installer leest. Het samengestelde bestand wordt nooit bewaard, en het auditspoor legt alleen vast dát die velden ingevuld waren.

Een installatie overschrijft de schijf. Daarom is er voor het starten ervan een eigen recht nodig en moet je eerst de naam van de server typen.

Als hij niet opstart

De agent legt vast wat hij zag, fase voor fase: of de dienst luisterde, of er een bootverzoek binnenkwam, of de bootloader opgehaald werd, of de kernel startte, of de installer terugmeldde. Een fase bereiken bewijst de fases ervoor, dus de laatst bereikte fase is de hele diagnose.

  • Helemaal geen verzoek: de machine heeft nooit gevraagd. Controleer of hij vanaf het netwerk opstart en of de agent op het juiste segment staat.
  • Er kwam een verzoek binnen dat niet paste: het MAC-adres in het verzoek is niet het adres dat op de server is vastgelegd.
  • Het antwoord is verstuurd maar de bootloader is nooit opgehaald, meestal door een andere bootserver op hetzelfde segment, of firmware die de poort van de agent niet kan bereiken.
  • De bootloader draaide, maar de kernel, de initiële ramdisk of het antwoordbestand ging mis.
  • De installer startte en meldde zich nooit terug. Vanaf hier is het de installatie zelf, en is zijn eigen logboek de plek om te kijken.
MAC- en IP-adressen zijn in deze tijdlijn afgeschermd, tenzij je het recht hebt om ze volledig te zien. Ook dit is een functie die je provider aanzet.

De cache op de agent

Alles wat de agent voor een installatie moet ophalen blijft op zijn schijf staan, geadresseerd op checksum en gecontroleerd op handtekening. De tweede machine die je installeert downloadt het dus niet opnieuw.

Op het tabblad Cache van de agent kun je bekijken wat er staat, iets vooruit ophalen, het verifiëren, een item verwijderen en de hele cache leegmaken. Bekijken en wijzigen zijn aparte rechten.

Een item dat in gebruik is of nog binnenkomt kan niet verwijderd worden, en het paneel zegt welke van de twee het is. De cache heeft een budget; verlaag je het onder wat er al staat, dan laat het paneel zien dat je eroverheen zit in plaats van te doen alsof dat niet zo is.