Achtung: Unter dem Schnitt befinden sich viele Bilder.
Was ist Missionskontrolle?
Wie das Unternehmen in einem Blogbeitrag sagt, besteht das Hauptziel von VMware Tanzu Mission Control darin, "Ordnung in das Cluster-Chaos zu bringen". Mission Control ist eine API-gesteuerte Plattform, mit der Administratoren Richtlinien auf Cluster oder Clustergruppen anwenden und Sicherheitsregeln festlegen können. SaaS-basierte Tools lassen sich über einen Agenten sicher in Kubernetes-Cluster integrieren und unterstützen eine Vielzahl von Standardclustervorgängen, einschließlich Lifecycle-Management-Vorgängen (Bereitstellung, Skalierung, Löschung usw.).
Die Ideologie der Tanzu-Linie basiert auf dem maximalen Einsatz von Open-Source-Technologien. Die Cluster-API wird verwendet, um den Lebenszyklus von Tanzu Kubernetes Grid-Clustern zu verwalten, Velero wird für Sicherungen und Wiederherstellungen verwendet, Sonobuoy wird verwendet, um die Entsprechung der Konfiguration von Kubernetes- und Contour-Clustern als Ingress-Controller zu steuern.
Die allgemeine Liste der Tanzu Mission Control-Funktionen sieht folgendermaßen aus:
- Zentralverwaltung aller Ihrer Kubernetes-Cluster;
- Identitäts- und Zugriffsmanagement (IAM);
- Diagnose und Überwachung des Status von Clustern;
- Verwaltung von Konfigurations- und Sicherheitseinstellungen;
- Planen regelmäßiger Überprüfungen des Status des Clusters;
- Erstellung von Backups und Wiederherstellung;
- Quotenmanagement;
- eine visualisierte Darstellung der Ressourcennutzung.
Warum ist es wichtig?
Tanzu Mission Control unterstützt Unternehmen bei der Verwaltung einer großen Flotte von Kubernetes-Clustern, die sich lokal, in der Cloud und bei mehreren Drittanbietern befinden. Früher oder später muss jedes Unternehmen, dessen Aktivitäten an die IT gebunden sind, viele heterogene Cluster bei verschiedenen Anbietern unterhalten. Jeder Cluster verwandelt sich in einen Schneeball, der eine kompetente Organisation, die entsprechende Infrastruktur, Richtlinien, Schutz, Überwachungssysteme und vieles mehr benötigt.
Heutzutage versucht jedes Unternehmen, Kosten zu senken und Routineprozesse zu automatisieren. Und die komplexe IT-Landschaft ist eindeutig nicht förderlich und konzentriert sich auf vorrangige Aufgaben. Mit Tanzu Mission Control können Unternehmen mit mehreren Kubernetes-Clustern arbeiten, die von mehreren Anbietern bereitgestellt werden, und gleichzeitig das Betriebsmodell harmonisieren.
Lösungsarchitektur
Tanzu Mission Control ist eine mandantenfähige Plattform, mit der Benutzer auf eine Reihe hochgradig anpassbarer Richtlinien zugreifen können, die auf Cluster und Gruppen von Kubernetes-Clustern angewendet werden können. Jeder Benutzer ist an die Organisation gebunden. Er ist die "Wurzel" der Ressourcen - Gruppen von Clustern und Arbeitsbereichen (Workspaces).
Was Tanzu Mission Control kann
Oben haben wir die Liste der Lösungsfunktionen bereits kurz aufgelistet. Mal sehen, wie dies in der Schnittstelle implementiert wird.
Eine einzige Ansicht aller Kubernetes-Cluster in einem Unternehmen:
Erstellen eines neuen Clusters:
Sie können einem Cluster sofort eine Gruppe zuweisen, die die festgelegten Richtlinien erbt.
Clusterverbindung:
Bereits vorhandene Cluster können einfach mit einem speziellen Agenten verbunden werden.
Cluster-Gruppierung:
In Cluster-Gruppen können Sie Cluster gruppieren, um zugewiesene Richtlinien ohne manuelles Eingreifen sofort auf Gruppenebene zu erben.
Arbeitsbereiche:
Bietet die Möglichkeit, den Zugriff auf eine Anwendung, die sich in mehreren Namespaces, Clustern und Cloud-Infrastrukturen befindet, flexibel zu konfigurieren.
Schauen wir uns die Prinzipien der Tanzu-Missionskontrolle in der Laborarbeit genauer an.
Labor Nr. 1
Natürlich ist es ziemlich schwierig, sich die Arbeit von Mission Control und die neuen Tanzu-Lösungen ohne Übung im Detail vorzustellen. Damit Sie die grundlegenden Funktionen der Linie kennenlernen können, bietet VMware Zugriff auf mehrere Laborstände. Auf diesen Bänken können Sie Laborarbeiten anhand einer schrittweisen Anleitung ausführen. Neben Tanzu Mission Control selbst stehen weitere Lösungen zum Testen und Studieren zur Verfügung. Eine vollständige Liste der Laborarbeiten finden Sie auf dieser Seite .
Für die praktische Einarbeitung in verschiedene Lösungen (einschließlich eines kleinen vSAN-Spiels) werden unterschiedliche Zeiten zugewiesen. Keine Sorge, das sind sehr relative Zahlen. Zum Beispiel kann ein Tanzu Mission Control-Labor bis zu 9,5 Stunden lang „gelöst“ werden, wenn Sie von zu Hause aus vorbeikommen. Selbst wenn der Timer abläuft, können Sie zurückgehen und noch einmal von vorne beginnen.
Passage der Laborarbeit # 1
VMware. . .
Tanzu Mission Control.
windows-, :
, : .
Tanzu Mission Control.
windows-, :
- ,
- ,
- -
, : .
Labor Nr. 2
Hier haben wir es bereits mit etwas Ernsthafterem zu tun. Diese Laborarbeit ist nicht so stark an die "Schienen" gebunden wie die vorherige und erfordert eine genauere Untersuchung. Wir werden es hier nicht vollständig zitieren: Um Ihre Zeit zu sparen, werden wir nur das zweite Modul analysieren, das erste ist dem theoretischen Aspekt der Tanzu-Missionskontrolle gewidmet. Wenn Sie möchten, können Sie es selbst ausfüllen. Dieses Modul lädt uns ein, über Tanzu Mission Control in das Cluster-Lebenszyklusmanagement einzutauchen.
Hinweis: Die Labore von Tanzu Mission Control werden regelmäßig aktualisiert und verfeinert. Wenn Sie während des Abschlusses des Labors andere Bildschirme oder Schritte als die folgenden haben, befolgen Sie die Anweisungen auf der rechten Seite des Bildschirms. Wir werden die aktuelle Version des LR zum Zeitpunkt dieses Schreibens durchgehen und seine Schlüsselelemente betrachten.
Passage der Laborarbeit # 2
VMware Cloud Services, Tanzu Mission Control.
, , — Kubernetes. Ubuntu PuTTY. Ubuntu.
:
Tanzu Mission Control. PuTTY Chrome, Clusters ATTACH CLUSTER.
— default, REGISTER.
PuTTY.
.
:
Tanzu Mission Control VERIFY CONNECTION. , .
. Cluster groups NEW CLUSTER GROUP. CREATE.
.
: Clusters, NEW CLUSTER .
, — hands-on-labs — .
, . , Next.
, Edit.
, CREATE.
.
. .
KUBECONFIG, kubectl. Tanzu Mission Control. Tanzu Mission Control CLI click here.
CLI.
API Token. My Account .
GENERATE.
CONTINUE. Power Shell tmc-login, — , , — Login Context Name. info , olympus-default ssh-.
namespaces:
. — coffee and tea — coffee-svc tea-svc, — nginxdemos/hello and nginxdemos/hello:plain-text. .
PowerShell cafe-services.yaml.
- API .
Pod Security Policies . .
:
:
:
2 , ! , .
, . . , , , Tanzu Mission Control -.
, , — Kubernetes. Ubuntu PuTTY. Ubuntu.
:
- :
kind create cluster --config 3node.yaml --name=hol - KUBECONFIG-:
export KUBECONFIG="$(kind get kubeconfig-path --name="hol")" - :
kubectl get nodes
Tanzu Mission Control. PuTTY Chrome, Clusters ATTACH CLUSTER.
— default, REGISTER.
PuTTY.
.
:
watch kubectl get pods -n vmware-system-tmc. , Running Completed.
Tanzu Mission Control VERIFY CONNECTION. , .
. Cluster groups NEW CLUSTER GROUP. CREATE.
.
: Clusters, NEW CLUSTER .
, — hands-on-labs — .
, . , Next.
, Edit.
, CREATE.
.
. .
KUBECONFIG, kubectl. Tanzu Mission Control. Tanzu Mission Control CLI click here.
CLI.
API Token. My Account .
GENERATE.
CONTINUE. Power Shell tmc-login, — , , — Login Context Name. info , olympus-default ssh-.
namespaces:
kubectl --kubeconfig=C:\Users\Administrator\Downloads\kubeconfig-aws-cluster.yml get namespaces.
kubectl --kubeconfig=C:\Users\Administrator\Downloads\kubeconfig-aws-cluster.yml get nodes, , Ready.
. — coffee and tea — coffee-svc tea-svc, — nginxdemos/hello and nginxdemos/hello:plain-text. .
PowerShell cafe-services.yaml.
- API .
Pod Security Policies . .
:
kubectl --kubeconfig=kubeconfig-aws-cluster.yml create clusterrolebinding privileged-cluster-role-binding --clusterrole=vmware-system-tmc-psp-privileged --group=system:authenticated
:
kubectl --kubeconfig=kubeconfig-aws-cluster.yml apply -f cafe-services.yaml
:
kubectl --kubeconfig=kubeconfig-aws-cluster.yml get pods
2 , ! , .
, . . , , , Tanzu Mission Control -.
Meinungen und Schlussfolgerungen
Natürlich ist es zu früh, um über praktische Fragen der Arbeit mit Tanzu zu sprechen. Es gibt nicht so viele Materialien für unabhängige Studien, und heute ist es nicht möglich, einen Prüfstand einzusetzen, um ein neues Produkt von allen Seiten zu "stechen". Trotzdem können auch aus den verfügbaren Daten bestimmte Schlussfolgerungen gezogen werden.
Vorteile der Tanzu-Missionskontrolle
Das System kam wirklich interessant heraus. Ich möchte sofort einige praktische und nützliche Brötchen hervorheben:
- Sie können Cluster über das Webpanel und über die Konsole erstellen, was Entwicklern wirklich gefallen wird.
- Die RBAC-Verwaltung über Arbeitsbereiche ist in der Benutzeroberfläche implementiert. Funktioniert noch nicht im Labor, aber theoretisch ist es eine großartige Sache.
- Zentralisierte Berechtigungsverwaltung basierend auf Vorlagen
- Voller Zugriff auf Namespaces.
- YAML-Editor.
- Erstellung von Netzwerkrichtlinien.
- Überwachung des Clusterzustands.
- Konsolen-Sicherungs- und Wiederherstellungsfunktion.
- Kontingent- und Ressourcenmanagement mit Visualisierung der tatsächlichen Entsorgung.
- Automatischer Start der Clusterinspektion.
Wiederum werden derzeit viele Komponenten fertiggestellt, sodass es noch zu früh ist, um die Vor- und Nachteile einiger Tools vollständig zu besprechen. Übrigens kann Tanzu MC, basierend auf der Demonstration, den Cluster im laufenden Betrieb aktualisieren und im Allgemeinen den gesamten Lebenszyklus des Clusters von vielen Anbietern gleichzeitig bereitstellen.
Hier sind einige Beispiele auf hoher Ebene.
In den Cluster eines anderen mit eigener Charta
Angenommen, Sie haben ein Entwicklungsteam mit klar definierten Rollen und Verantwortlichkeiten. Jeder ist mit seinem eigenen Geschäft beschäftigt und sollte nicht einmal versehentlich die Arbeit der Kollegen stören. Oder das Team verfügt über einen oder mehrere weniger erfahrene Spezialisten, denen Sie keine unnötigen Rechte und Freiheiten gewähren möchten. Nehmen wir auch an, Sie haben Kubernetes von drei Anbietern gleichzeitig. Um die Rechte einzuschränken und auf einen gemeinsamen Nenner zu bringen, müssen Sie daher jedes Bedienfeld einzeln eingeben und alles manuell registrieren. Stimmen Sie zu, nicht der produktivste Zeitvertreib. Und je mehr Ressourcen Sie haben, desto trostloser wird der Prozess. Mit Tanzu Mission Control können Sie die Rollenabgrenzung über ein "einzelnes Fenster" verwalten. Unserer Meinung nach ist dies eine sehr praktische Funktion: Niemand wird etwas kaputt machen, wenn Sie versehentlich vergessen, die erforderlichen Rechte irgendwo anzugeben.
Übrigens haben unsere Kollegen von MTS in ihrem Blog Kubernetes vom Anbieter und Open Source verglichen . Wenn Sie schon lange wissen wollten, was die Unterschiede sind und worauf Sie bei der Auswahl achten sollten - willkommen.
Kompakte Arbeit mit Protokollen
Ein weiteres Beispiel aus dem wirklichen Leben ist die Arbeit mit Protokollen. Angenommen, das Team hat auch einen Tester. Eines schönen Tages kommt er zu den Entwicklern und kündigt an: "Es wurde ein Fehler in der Anwendung gefunden, wir werden ihn dringend beheben." Das erste, was ein Entwickler kennenlernen möchte, sind natürlich die Protokolle. Das Senden in Dateien per E-Mail oder Telegramm ist schlecht und das letzte Jahrhundert. Mission Control bietet eine Alternative: Sie können dem Entwickler spezielle Rechte erteilen, damit er die Protokolle nur in einem bestimmten Namespace lesen kann. In diesem Fall reicht es aus, wenn ein Tester sagt: „Es gibt Fehler in dieser und jener Anwendung, in diesem und jenem Feld, in diesem und jenem Namespace“, und der Entwickler kann die Protokolle leicht öffnen und das Problem lokalisieren. Und aufgrund eingeschränkter Rechte wird er nicht sofort klettern, um das Problem zu beheben, wenn die Kompetenz dies nicht zulässt.
Gesunde Cluster Gesunde App
Eine weitere großartige Funktion von Tanzu MC ist die Verfolgung des Clusterzustands. Nach den vorläufigen Materialien zu urteilen, können Sie mit dem System einige Statistiken anzeigen. Im Moment ist es schwer zu sagen, wie detailliert diese Informationen sein werden: Bisher sieht alles recht bescheiden und einfach aus. Es erfolgt eine Überwachung der CPU- und RAM-Auslastung, die Status aller Komponenten werden angezeigt. Aber auch in dieser spartanischen Form ist es ein sehr nützliches und effektives Detail.
Ergebnis
Natürlich wird in der Labordarstellung von Mission Control unter scheinbar sterilen Bedingungen eine gewisse Rauheit beobachtet. Sie selbst werden sie wahrscheinlich bemerken, wenn Sie sich entscheiden, die Arbeit durchzugehen. Einige Punkte werden nicht intuitiv genug gemacht - selbst ein erfahrener Administrator muss das Handbuch lesen, um die Benutzeroberfläche und ihre Funktionen zu verstehen.
Angesichts der Komplexität des Produkts, seiner Bedeutung und der Rolle, die es auf dem Markt spielen wird, erwies es sich jedoch als cool. Es scheint, als hätten die Ersteller versucht, den Workflow des Benutzers zu korrigieren. Machen Sie jede Steuerung so funktional und verständlich wie möglich.
Es bleibt nur, Tanzu auf einem Prüfstand zu testen, um all seine Vor- und Nachteile und Innovationen wirklich zu verstehen. Sobald sich uns eine solche Gelegenheit bietet, werden wir den Lesern von Habr einen detaillierten Bericht über die Arbeit mit dem Produkt vorlegen.