‫CRD's en het patroon van de operator.
‫Dit is waar het echt interessant wordt
‫met Kubernetes. Want als we beginnen met
‫het toevoegen van al deze tools van derden, en er zijn al
‫deze API's in Kubernetes om het uit te breiden.
‫Kubernetes zelf wordt zijn eigen platform waarop u dingen kunt doen
‫waarvoor het nooit is ontworpen of waarvan u nooit had
‫gedacht dat het zou kunnen.
‫Ten eerste, als je je tot nu toe in deze cursus
‫nog niet hebt gerealiseerd, kun je dingen van derden toevoegen aan Kubernetes.
‫Het maakt niet alleen gebruik van de Kubernetes API.
‫Nu kunt u met aangepaste bronnen en aangepaste controllers
‫de API wijzigen.
‫U kunt de API daadwerkelijk gebruiken om
‫deze uit te breiden. Dan krijgt zelfs
‫kubectl, op de opdrachtregel, nieuwe opdrachten en kan nieuwe
‫brontypen en nieuwe controllers zien. Een paar jaar geleden
‫kwam CoreOS met een mooi artikel over het
‫Operator-patroon, dat hun manier was om aangepaste bronnen
‫en aangepaste controllers samen te implementeren op
‫een manier die je in staat zou stellen om
‫eerder gecompliceerde software in Kubernetes te gebruiken,
‫maar dat Kubernetes is op de hoogte van
‫die software. Als je een
‫complex monitoringsysteem had zoals Prometheus, en je
‫wilde het implementeren, het up-to-date houden en het
‫er gewoon alles mee doen, dan
‫hoefde je niet per se alle verschillende onderdelen
‫te leren. ervan en hoe ze werken in Kubernetes.
‫Sommigen van hen hebben mogelijk StatefulSet nodig.
‫Sommige hebben mogelijk implementaties en services nodig.
‫Sommigen hebben er misschien een soort cron-job in nodig.
‫Ik bedoel, er zijn al deze verschillende soorten bronnen die
‫het nodig kan hebben om een volledig functionerende
‫monitoringoplossing te hebben.
‫Dat is maar één voorbeeld.
‫Kortom, er is nu al deze software die
‫dit patroon overneemt en hun eigen aangepaste code in Kubernetes
‫implementeert om het uit te breiden.
‫In wezen geeft het je kubectl-commando's om
‫die tools te bedienen alsof ze oorspronkelijk
‫deel uitmaken van Kubernetes zelf.
‫Dit gebeurt voor allerlei soorten open source-dingen, je kunt
‫deze dingen toevoegen in... in de bronnen zie je een
‫heleboel lijsten en verschillende websites waarop je deze
‫dingen kunt vinden.
‫Je beschouwt ze als echt complexe YAML-bestanden
‫waarmee je niet alleen iets kunt implementeren en het
‫vervolgens gewoon kunt uitvoeren, maar in feite opdrachten
‫en andere API's krijgt die uit
‫Kubernetes zelf komen.
‫Het is een behoorlijk opwindend gebied omdat het vrij nieuw
‫is en het laat gewoon zien hoe Kubernetes
‫alles overneemt. Er is geen
‫limiet aan wat het niet kan beheren en controleren.
‫Ik zou zeggen dat je natuurlijk niet alles hier
‫wilt toevoegen, omdat elk van deze zijn
‫eigen informatie aan Kubernetes zou toevoegen aan de ETCD-database, de API
‫en het controlevlak zou uitbreiden, en al dat soort dingen.
‫Het kan een potentieel gebied
‫zijn waar als je te veel toevoegt, je uiteindelijk te
‫veel complexiteit in je systeem zelf krijgt.
‫Op dit moment, in ieder geval voor zaken als
‫monitoring, en databases, en back-ups en logging, zijn dit de
‫gebieden waar ik me zou concentreren op het verkrijgen
‫van CRD's en het type operatorpatroon in plaats
‫van alleen een YAML te vinden die je hebt gezien op
‫internet en zeggen: ik wil dit
‫met dat YAML-bestand implementeren.
‫Dit geeft het meer intelligentie.
‫Er zijn veel bronnen over elk van
‫deze en natuurlijk zou elk een andere implementatie
‫en gebruik hebben. Ik raad ze zeker aan om ze te
‫bekijken nu ze bestaan.