Présentation du contrôle de mission Tanzu

Aujourd'hui, nous voulons parler de VMware Tanzu, une nouvelle gamme de produits et services annoncée lors de la conférence VMWorld de l'année dernière. Au programme, l'un des outils les plus intéressants : Tanzu Mission Control.

Attention : il y a beaucoup d'images sous la coupe.

Présentation du contrôle de mission Tanzu

Qu'est-ce que le contrôle de mission

Comme l’entreprise elle-même l’indique sur son blog, l’objectif principal de VMware Tanzu Mission Control est de « mettre de l’ordre dans le chaos des clusters ». Mission Control est une plate-forme pilotée par API qui permettra aux administrateurs d'appliquer des politiques aux clusters ou aux groupes de clusters et de définir des règles de sécurité. Les outils SaaS s'intègrent en toute sécurité dans les clusters Kubernetes via un agent et prennent en charge diverses opérations de cluster standard, y compris les opérations de gestion du cycle de vie (déploiement, mise à l'échelle, suppression, etc.).

L'idéologie de la ligne Tanzu repose sur l'utilisation maximale des technologies open source. Pour gérer le cycle de vie des clusters Tanzu Kubernetes Grid, l'API Cluster est utilisée, Velero est utilisé pour les sauvegardes et la récupération, Sonobuoy est utilisé pour surveiller la conformité avec la configuration des clusters Kubernetes et Contour comme contrôleur d'entrée.

La liste générale des fonctions de Tanzu Mission Control ressemble à ceci :

  • gestion centralisée de tous vos clusters Kubernetes ;
  • gestion des identités et des accès (IAM) ;
  • diagnostic et surveillance de l'état du cluster ;
  • gérer les paramètres de configuration et de sécurité ;
  • planifier des contrôles de santé réguliers du cluster ;
  • créer des sauvegardes et restaurer ;
  • gestion des quotas;
  • représentation visuelle de l’utilisation des ressources.

Présentation du contrôle de mission Tanzu

Pourquoi c'est important

Tanzu Mission Control aidera les entreprises à résoudre le problème de la gestion d'une vaste flotte de clusters Kubernetes situés sur site, dans le cloud et auprès de plusieurs fournisseurs tiers. Tôt ou tard, toute entreprise dont les activités sont liées à l'informatique se retrouve obligée de prendre en charge de nombreux clusters hétérogènes situés chez différents fournisseurs. Chaque cluster se transforme en une boule de neige qui nécessite une organisation compétente, une infrastructure, des politiques, une protection, des systèmes de surveillance appropriés et bien plus encore.

De nos jours, toute entreprise s’efforce de réduire ses coûts et d’automatiser ses processus de routine. Et le paysage informatique complexe ne favorise clairement pas les économies et la concentration sur les tâches prioritaires. Tanzu Mission Control donne aux organisations la possibilité d'exploiter plusieurs clusters Kubernetes déployés sur plusieurs fournisseurs tout en harmonisant le modèle opérationnel.

Architecture des solutions

Présentation du contrôle de mission Tanzu

Tanzu Mission Control est une plate-forme mutualisée qui permet aux utilisateurs d'accéder à un ensemble de politiques hautement configurables qui peuvent être appliquées aux clusters et groupes de clusters Kubernetes. Chaque utilisateur est lié à une organisation, qui est la « racine » des ressources : groupes de cluster et espaces de travail.

Présentation du contrôle de mission Tanzu

Ce que Tanzu Mission Control peut faire

Ci-dessus nous avons déjà brièvement listé la liste des fonctions de la solution. Voyons comment cela est implémenté dans l'interface.

Une vue unique de tous les clusters Kubernetes de l'entreprise :

Présentation du contrôle de mission Tanzu

Création d'un nouveau cluster :

Présentation du contrôle de mission Tanzu

Présentation du contrôle de mission Tanzu

Vous pouvez immédiatement attribuer un groupe à un cluster, et il héritera des stratégies qui lui sont affectées.

Connexion au cluster :

Présentation du contrôle de mission Tanzu

Les clusters déjà existants peuvent simplement être connectés à l'aide d'un agent spécial.

Regroupement en cluster :

Présentation du contrôle de mission Tanzu

Dans les groupes de clusters, vous pouvez regrouper les clusters pour qu'ils héritent immédiatement des stratégies attribuées au niveau du groupe, sans intervention manuelle.

Espaces de travail :

Présentation du contrôle de mission Tanzu

Offre la possibilité de configurer de manière flexible l’accès à une application située dans plusieurs espaces de noms, clusters et infrastructures cloud.

Examinons de plus près les principes de fonctionnement de Tanzu Mission Control dans les travaux de laboratoire.

Laboratoire n°1

Bien entendu, il est assez difficile d'imaginer en détail le fonctionnement de Mission Control et des nouvelles solutions Tanzu sans pratique. Afin de vous permettre de découvrir les principales fonctionnalités de la gamme, VMware vous donne accès à plusieurs paillasses de laboratoire. Ces bancs vous permettent d'effectuer des travaux de laboratoire en suivant des instructions étape par étape. En plus de Tanzu Mission Control lui-même, d'autres solutions sont disponibles pour tests et études. Une liste complète des travaux de laboratoire peut être trouvée sur cette page.

Pour une connaissance pratique des différentes solutions (y compris un petit « jeu » sur vSAN), différentes durées sont allouées. Ne vous inquiétez pas, ce sont des chiffres très relatifs. Par exemple, un laboratoire sur Tanzu Mission Control peut être « résolu » jusqu'à 9 heures et demie en passant de chez soi. De plus, même si le temps imparti est écoulé, vous pouvez revenir en arrière et tout recommencer.

Réussir les travaux de laboratoire #1
Pour accéder aux laboratoires, vous aurez besoin d'un compte VMware. Après autorisation, une fenêtre pop-up s'ouvrira avec les grandes lignes de l'œuvre. Des instructions détaillées seront placées sur le côté droit de l’écran.

Après avoir lu une courte introduction à Tanzu, vous serez invité à vous entraîner dans la simulation interactive Mission Control.

Une nouvelle fenêtre contextuelle de machine Windows s'ouvrira et il vous sera demandé d'effectuer quelques opérations de base :

  • créer un cluster
  • configurer ses paramètres de base
  • actualisez la page et assurez-vous que tout est configuré correctement
  • définir des politiques et vérifier le cluster
  • créer un espace de travail
  • créer un espace de noms
  • travailler à nouveau avec les politiques, chaque étape est expliquée en détail dans le manuel
  • mise à niveau du cluster de démonstration


Bien entendu, la simulation interactive n'offre pas suffisamment de liberté pour une étude indépendante : vous vous déplacez le long de rails pré-posés par les développeurs.

Laboratoire n°2

Ici, nous avons déjà affaire à quelque chose de plus grave. Ce travail de laboratoire n'est pas aussi lié aux « rails » que le précédent et nécessite une étude plus approfondie. Nous ne le présenterons pas ici dans son intégralité : pour gagner du temps, nous analyserons uniquement le deuxième module, le premier est consacré à l'aspect théorique du travail de Tanzu Mission Control. Si vous le souhaitez, vous pouvez le parcourir entièrement par vous-même. Ce module nous offre une plongée approfondie dans la gestion du cycle de vie des clusters via Tanzu Mission Control.

Remarque : les travaux du laboratoire Tanzu Mission Control sont régulièrement mis à jour et affinés. Si des écrans ou des étapes diffèrent de ceux ci-dessous à mesure que vous terminez l'atelier, suivez les instructions sur le côté droit de l'écran. Nous passerons en revue la version actuelle du LR au moment de la rédaction et considérerons ses éléments clés.

Réussir les travaux de laboratoire #2
Après le processus d'autorisation dans VMware Cloud Services, nous lançons Tanzu Mission Control.

Présentation du contrôle de mission Tanzu

La première étape suggérée par le laboratoire consiste à déployer un cluster Kubernetes. Nous devons d’abord accéder à la machine virtuelle Ubuntu à l’aide de PuTTY. Lancez l'utilitaire et sélectionnez une session avec Ubuntu.

Présentation du contrôle de mission Tanzu

Nous exécutons tour à tour trois commandes :

  • créer un cluster : kind create cluster --config 3node.yaml --name=hol
  • chargement du fichier KUBECONFIG : export KUBECONFIG="$(kind get kubeconfig-path --name="hol")"
  • sortie du nœud : kubectl get nodes

Présentation du contrôle de mission Tanzu

Le cluster que nous avons créé doit maintenant être ajouté à Tanzu Mission Control. De PuTTY, nous revenons à Chrome, allons dans Clusters et cliquez sur ATTACHER LE GROUPE.
Sélectionnez un groupe dans le menu déroulant - défaut, saisissez le nom proposé par le laboratoire et cliquez sur S'INSCRIRE.

Présentation du contrôle de mission Tanzu

Copiez la commande reçue et accédez à PuTTY.

Présentation du contrôle de mission Tanzu

Nous exécutons la commande reçue.

Présentation du contrôle de mission Tanzu

Pour suivre la progression, exécutez une autre commande : watch kubectl get pods -n vmware-system-tmc. Nous attendons que tous les conteneurs aient un statut Fonctionnement ou Complété.

Présentation du contrôle de mission Tanzu

Retournez à Tanzu Mission Control et cliquez sur VÉRIFIER LA CONNEXION. Si tout s'est bien passé, les indicateurs de tous les contrôles devraient être verts.

Présentation du contrôle de mission Tanzu

Créons maintenant un nouveau groupe de clusters et déployons-y un nouveau cluster. Accédez aux groupes de cluster et cliquez sur NOUVEAU GROUPE DE CLUSTER. Entrez le nom et cliquez CREATE.

Présentation du contrôle de mission Tanzu

Le nouveau groupe devrait immédiatement apparaître dans la liste.

Présentation du contrôle de mission Tanzu

Déployons un nouveau cluster : accédez à Clusterspousser NOUVEAU GRAPPE et sélectionnez l’option associée aux travaux de laboratoire.

Présentation du contrôle de mission Tanzu

Ajoutons le nom du cluster, sélectionnons le groupe qui lui est attribué (dans notre cas, des ateliers pratiques) et la région de déploiement.

Présentation du contrôle de mission Tanzu

Il existe d'autres options disponibles lors de la création d'un cluster, mais cela ne sert à rien de les modifier pendant le TP. Sélectionnez la configuration dont vous avez besoin et cliquez sur Suivant.

Présentation du contrôle de mission Tanzu

Certains paramètres doivent être modifiés, pour cela cliquez sur Modifier.

Présentation du contrôle de mission Tanzu

Augmentons le nombre de nœuds de travail à deux, enregistrons les paramètres et cliquez sur CREATE.
Pendant le processus, vous verrez une barre de progression comme celle-ci.

Présentation du contrôle de mission Tanzu

Après un déploiement réussi, vous verrez cette image. Tous les reçus doivent être verts.

Présentation du contrôle de mission Tanzu

Nous devons maintenant télécharger le fichier KUBECONFIG pour gérer le cluster à l'aide des commandes kubectl standard. Cela peut être fait directement via l'interface utilisateur de Tanzu Mission Control. Téléchargez le fichier et procédez au téléchargement de Tanzu Mission Control CLI en cliquant sur cliquez ici .

Présentation du contrôle de mission Tanzu

Sélectionnez la version souhaitée et téléchargez la CLI.

Présentation du contrôle de mission Tanzu

Nous devons maintenant obtenir le jeton API. Pour ce faire, rendez-vous sur Mon compte et générer un nouveau jeton.

Présentation du contrôle de mission Tanzu

Remplissez les champs et cliquez PRODUIRE.

Présentation du contrôle de mission Tanzu

Copiez le jeton obtenu et cliquez sur VOIR PLUS. Ouvrez Power Shell et entrez la commande tmc-login, puis le jeton que nous avons reçu et copié à l'étape précédente, puis le nom du contexte de connexion. Choisir info journaux de ceux proposés, région et Olympus-par défaut comme clé ssh.

Présentation du contrôle de mission Tanzu

Nous obtenons des espaces de noms :kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get namespaces.

Nous introduisons kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get nodespour s'assurer que tous les nœuds sont en état Prêt à fonctionner.

Présentation du contrôle de mission Tanzu

Nous devons maintenant déployer une petite application dans ce cluster. Faisons deux déploiements - coffee et tea - sous la forme de services coffee-svc et tea-svc, dont chacun lance des images différentes - nginxdemos/hello et nginxdemos/hello:plain-text. Cela se fait comme suit.

À travers PowerShell allez dans les téléchargements et trouvez le fichier café-services.yaml.

Présentation du contrôle de mission Tanzu

En raison de certains changements dans l'API, nous devrons la mettre à jour.

Les politiques de sécurité des pods sont activées par défaut. Pour exécuter des applications avec des privilèges, vous devez lier votre compte.

Créez une liaison : kubectl --kubeconfig=kubeconfig-aws-cluster.yml create clusterrolebinding privileged-cluster-role-binding --clusterrole=vmware-system-tmc-psp-privileged --group=system:authenticated
Déployons l'application : kubectl --kubeconfig=kubeconfig-aws-cluster.yml apply -f cafe-services.yaml
vérifier: kubectl --kubeconfig=kubeconfig-aws-cluster.yml get pods

Présentation du contrôle de mission Tanzu

Le module 2 est terminé, vous êtes belle et incroyable ! Nous vous recommandons de suivre vous-même les modules restants, y compris la gestion des politiques et les contrôles de conformité.

Si vous souhaitez réaliser cet atelier dans son intégralité, vous pouvez le trouver ici dans le catalogue. Et nous passerons à la dernière partie de l'article. Parlons de ce que nous avons réussi à voir, tirons les premières conclusions précises et expliquons en détail ce qu'est Tanzu Mission Control par rapport aux processus commerciaux réels.

Avis et conclusions

Bien sûr, il est trop tôt pour parler des problèmes pratiques liés au travail avec Tanzu. Il n'y a pas tellement de matériel pour l'auto-apprentissage, et aujourd'hui il n'est pas possible de déployer un banc d'essai pour « piquer » un nouveau produit de tous les côtés. Néanmoins, même à partir des données disponibles, certaines conclusions peuvent être tirées.

Avantages de Tanzu Mission Control

Le système s’est avéré vraiment intéressant. Je voudrais immédiatement souligner quelques goodies pratiques et utiles :

  • Vous pouvez créer des clusters via le panneau Web et via la console, ce que les développeurs apprécieront vraiment.
  • La gestion RBAC via les espaces de travail est implémentée dans l'interface utilisateur. Cela ne fonctionne pas encore en laboratoire, mais en théorie, c’est une bonne chose.
  • Gestion centralisée des privilèges basée sur des modèles
  • Accès complet aux espaces de noms.
  • Éditeur YAML.
  • Création de politiques de réseau.
  • Surveillance de l’état du cluster.
  • Possibilité de sauvegarder et de restaurer via la console.
  • Gérez les quotas et les ressources avec une visualisation de l'utilisation réelle.
  • Lancement automatique de l'inspection des clusters.

Encore une fois, de nombreux composants sont actuellement en cours de développement, il est donc trop tôt pour parler pleinement des avantages et des inconvénients de certains outils. À propos, Tanzu MC, sur la base de la démonstration, peut mettre à niveau un cluster à la volée et, en général, fournir le cycle de vie complet d'un cluster à plusieurs fournisseurs à la fois.

Voici quelques exemples de « haut niveau ».

Vers le cluster de quelqu'un d'autre avec sa propre charte

Disons que vous disposez d'une équipe de développement avec des rôles et des responsabilités clairement définis. Chacun est occupé par ses propres affaires et ne devrait même pas interférer accidentellement avec le travail de ses collègues. Ou bien l'équipe compte un ou plusieurs spécialistes moins expérimentés à qui vous ne souhaitez pas accorder de droits et libertés inutiles. Supposons également que vous disposiez de Kubernetes de trois fournisseurs à la fois. Ainsi, afin de limiter les droits et de les ramener à un dénominateur commun, vous devrez vous rendre un à un sur chaque panneau de contrôle et tout enregistrer manuellement. D'accord, ce n'est pas le passe-temps le plus productif. Et plus vous disposez de ressources, plus le processus est fastidieux. Tanzu Mission Control vous permettra de gérer la délimitation des rôles à partir d'une « seule fenêtre ». À notre avis, c'est une fonction très pratique : personne ne cassera rien si vous oubliez accidentellement de préciser les droits nécessaires quelque part.

D'ailleurs, nos confrères de MTS sur leur blog par rapport Kubernetes du fournisseur et open source. Si vous souhaitez depuis longtemps savoir quelles sont les différences et ce qu'il faut rechercher lors du choix, bienvenue.

Travail compact avec des journaux

Un autre exemple tiré de la vie réelle consiste à travailler avec des journaux. Supposons que l'équipe dispose également d'un testeur. Un beau jour, il s'adresse aux développeurs et leur annonce : « un bug a été trouvé dans l'application, nous allons le corriger de toute urgence ». Il est naturel que la première chose avec laquelle un développeur veuille se familiariser, ce soient les journaux. Les envoyer sous forme de fichiers par e-mail ou Telegram est une mauvaise manière et date du siècle dernier. Mission Control propose une alternative : vous pouvez définir des droits spéciaux pour le développeur afin qu'il ne puisse lire que les journaux dans un espace de noms spécifique. Dans ce cas, il suffit au testeur de dire : « il y a des bugs dans telle application, dans tel domaine, dans tel espace de noms », et le développeur peut facilement ouvrir les logs et pouvoir localiser le problème. Et en raison de droits limités, vous ne pourrez pas y remédier immédiatement si vos compétences ne le permettent pas.

Un cluster sain a une application saine.

Une autre fonctionnalité intéressante de Tanzu MC est le suivi de l’état du cluster. À en juger par les documents préliminaires, le système vous permet de visualiser certaines statistiques. Pour le moment, il est difficile de dire exactement à quel point ces informations seront détaillées : jusqu'à présent, tout semble assez modeste et simple. Il y a une surveillance de la charge du CPU et de la RAM, l'état de tous les composants est affiché. Mais même sous une forme aussi spartiate, c'est un détail très utile et efficace.

Les résultats de

Bien sûr, dans la présentation en laboratoire de Mission Control, dans des conditions apparemment stériles, il y a quelques aspérités. Vous les remarquerez probablement vous-même si vous décidez de vous lancer dans les travaux. Certains aspects ne sont pas suffisamment intuitifs - même un administrateur expérimenté devra lire le manuel pour comprendre l'interface et ses capacités.

Cependant, compte tenu de la complexité du produit, de son importance et du rôle qu’il jouera sur le marché, le résultat s’est avéré formidable. On a l’impression que les créateurs ont essayé d’améliorer le flux de travail de l’utilisateur. Rendre chaque élément de contrôle aussi fonctionnel et compréhensible que possible.

Il ne reste plus qu'à essayer Tanzu sur banc d'essai pour bien comprendre tous ses avantages, inconvénients et innovations. Dès qu'une telle opportunité se présentera, nous partagerons avec les lecteurs Habr un rapport détaillé sur l'utilisation du produit.

Source: habr.com

Ajouter un commentaire