Bonjour à toutes et tous, 

Le 4 Octobre, l’équipe Tanzu annonce la sortie de la version communautaire, « Tanzu Community Edition » https://tanzu.vmware.com/content/blog/vmware-tanzu-community-edition-announcement

Et c’est une bonne nouvelle ! nous allons vous expliquer pourquoi.

Pourquoi VMware sort une version communautaire?

Tous simplement car Tanzu est basé sur des briques d’opensource et que les développeurs ont besoins de travailler sur Tanzu dans la continuité de la production. c’est une des raisons pour laquel VMware propose TCE à tous les développeurs installable sur n’importe quelle machine et rapidement déployé.

VMware confirme sa forte contribution sur de nombreux projets opensource. Par exemple, c’est actuellement, le 2eme contributeur du projet Kubernetes. ( Stats CNCF : ICI )

De plus, de mon point de vue « OPS », il s’agit d’un très bon outils pour monter en puissance sur ces technologies.

Les composants

Mais avant d’aller plus loin dans les tests, de quoi se compose cette suite ?

Maintenant, nous allons faire un focus sur les différents composants. 

Carvel Package Management

Carvel fournit un ensemble d’outils qui facilitent la création, la configuration et le déploiement de votre application sur Kubernetes. (Packaging)

Site : https://carvel.dev/

Git : https://github.com/vmware-tanzu/carvel

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=carvel

Contour

Contour est un « contrôleur d’entrée » (Ingress Controller) pour Kubernetes fournissant un plan de contrôle (Control Plane) pour « Envoy » (service de proxy). Contour prend en charge les mises à jour de configuration dynamiques et la délégation d’entrée multi-team.

Git : https://github.com/projectcontour

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=contour

External DNS

Inspiré de Kubernetes DNS,  ExternalDNS rend les ressources Kubernetes détectables via des serveurs DNS publics. Comme KubeDNS, il récupère une liste de ressources (services, entrées, etc.) à partir de l’ API Kubernetes pour déterminer une liste souhaitée d’enregistrements DNS. Contrairement à KubeDNS, cependant, ce n’est pas un serveur DNS lui-même, mais configure simplement d’autres fournisseurs DNS en conséquence, par exemple AWS Route 53 ou Google Cloud DNS .

En résumé, ExternalDNS vous permet de contrôler les enregistrements DNS de manière dynamique via les ressources Kubernetes d’une manière indépendante du fournisseur DNS

Git : https://github.com/kubernetes-sigs/external-dns.

Multus

Multus CNI est un plugin d’interface réseau de conteneur (CNI) pour Kubernetes qui permet d’attacher plusieurs interfaces réseau aux pods. En règle générale, dans Kubernetes, chaque pod n’a qu’une seule interface réseau. Avec Multus, vous pouvez créer un pod doté de plusieurs interfaces. Multus agissant comme un « méta-plugin », un plugin CNI qui peut appeler plusieurs autres plugins CNI.

Git : https://github.com/k8snetworkplumbingwg/multus-cni

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=multus

Antrea

Antrea est une solution de réseau native Kubernetes. Il opère au niveau 3/4 pour fournir des services de réseau & sécurité  pour un cluster Kubernetes, en s’appuyant sur Open vSwitch comme data plane.

Site : https://antrea.io/

Git : https://github.com/antrea-io/antrea

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=antrea

Calico

Calico est un moteur de stratégie réseau & sécurité (segmentation) pour Kubernetes.

Site : https://www.tigera.io/project-calico/

Git : https://github.com/projectcalico/calico

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=project-calico 

Velero

Velero est un outil pour sauvegarder et restaurer, effectuer une reprise après sinistre ou migrer des ressources d’un cluster Kubernetes et des volumes persistants.

Site : https://velero.io/

Git : https://github.com/vmware-tanzu/velero

Pinniped

Pinniped est un service d’authentification pour les clusters Kubernetes

Site : https://pinniped.dev/

Git : https://github.com/vmware-tanzu/pinniped

Sonobuoy

Sonobuoy est un outil de diagnostic et de validation qui permet de mieux comprendre l’état et la configuration d’un cluster Kubernetes en exécutant un choix de tests de configuration de manière accessible.

Site : https://sonobuoy.io/

Git : https://github.com/vmware-tanzu/sonobuoy

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=sonobuoy

Cert Manager

Cert-manager est un outil qui simplifie le processus d’obtention, de renouvellement et d’utilisation des certificats pour les clusters Kubernetes.

Site : https://cert-manager.io/

Git : https://github.com/jetstack/cert-manager

Open Policy Agent

L’Open Policy Agent (OPA, prononcé « oh-pa »), c’est du « Policy As Code ». OPA est un moteur de politique open source qui unifie l’application des politiques sur l’ensemble de la stack. OPA fournit un langage déclaratif de haut niveau qui vous permet de spécifier la politique sous forme de code et d’API simples. Vous pouvez utiliser OPA pour appliquer des stratégies dans les microservices, vos clusters Kubernetes, les pipelines CI/CD, les passerelles API, etc.

Site : https://www.openpolicyagent.org/

Git : https://github.com/open-policy-agent

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=open-policy-agent-opa

Knative

Knative (prononcer kay-nay-tiv) est un projet Open Source qui ajoute à Kubernetes des composants pour le déploiement, l’exécution et la gestion des applications cloud-native « serverless ».

Site : https://knative.dev/docs/

Git : https://github.com/knative

Harbor

Harbor est un registre open source qui sécurise les artefacts avec des politiques et un contrôle d’accès basé sur des rôles. Il garantit que les images sont exemptes de vulnérabilités, et signe les images. Harbor, est un projet phase de « Resgistry » pour sécuriser les artefacts sur les plates-formes cloud native Kubernetes et Docker.

Git : https://github.com/goharbor/harbor

Site : https://goharbor.io/

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=harbor

Kubeapps

Kubeapps est une application Web intégrée au cluster qui permet aux utilisateurs disposant d’une installation unique de déployer, gérer et mettre à niveau des applications sur un cluster Kubernetes.

Avec Kubeapps, vous pouvez :

  • Personnalisez les déploiements via une interface utilisateur intuitive basée sur des formulaires
  • Inspecter, mettre à jour et supprimer les applications installées dans le cluster
  • Parcourez et déployez des graphiques Helm à partir de référentiels de graphiques publics ou privés (y compris VMware Marketplace™ et Bitnami Application Catalog )
  • Parcourir et déployer les opérateurs Kubernetes
  • Authentification sécurisée auprès de Kubeapps à l’aide d’un fournisseur OAuth2/OIDC autonome ou à l’ aide de Pinniped
  • Autorisation sécurisée basée sur le contrôle d’accès basé sur les rôles Kubernetes

Site : https://kubeapps.com/

Git : https://github.com/kubeapps/kubeapps

Kpack

Kpack

kpack construit des images de conteneurs à l’aide de Buildpacks natifs du cloud. Il prend les dépôts de code source (comme GitHub), construit le code en une image de conteneur et la télécharge vers le registre de conteneurs de votre choix.

Git : https://github.com/pivotal/kpack

Prometheus

Prometheus est un système de surveillance des systèmes et des services. Il collecte les métriques des cibles configurées à des intervalles donnés, évalue les expressions de règle, affiche les résultats et peut déclencher des alertes lorsque des conditions spécifiées sont observées.

Git : https://github.com/prometheus/prometheus

Site : https://prometheus.io/

CNCF : https://landscape.cncf.io/?selected=prometheus

Fluentbit

Fluent Bit permet de collecter des données telles que des métriques et des journaux de différentes sources, de les enrichir avec des filtres et de les envoyer à plusieurs destinations. C’est un choix privilégié pour les environnements conteneurisés comme Kubernetes .

Fluent Bit est un sous-projet de la CNCF sous l’égide de Fluentd.

https://fluentbit.io/

https://github.com/fluent/fluent-bit

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=fluentd

Grafana

Est il nécessaire de présenter le projet Grafana ? Il s’agit une interface Web de présentation de données chronologiques grâce à de nombreux modèles. Il est multi sources de données grâce à de nombreux plugins et il est d’ailleurs régulièrement utilisé avec Prometheus comme source de données

Git : https://github.com/grafana/grafana

Site : https://grafana.com/

Licence : Apache 2.0

CNCF : https://landscape.cncf.io/?selected=grafana

 

Dans peu de temps, nous allons présenter l’installation de TCE. A très bientôt !

Damien Rivière

Rédigé par

Damien Rivière

Damien Rivière est depuis près de 9 ans consultant chez Axians Cloud Builder. Spécialisé dans la virtualisation autour des produits VMware et dans le stockage autour des solutions Dell EMC, Damien est certifié VMware Certified Professional – Datacenter virtualization 4, 5 et 6 ainsi que EMC Implementation Engineer – VNX et Unity. Damien est également certifié VCP6-NV (Network Virtualization), VMCE Veeam, DCIE DataCore, AWS Technical Professional, CCNA Cisco, Netapp, Simplivity…