>_ DevTrendsnl

Taal

Home

Talen

Secties

Frontend Backend Mobiel DevOps AI / ML GameDev Blockchain Embedded Beveiliging
JavaScript

Hoe Layer5 probeert Kubernetes en Service Mesh ontwikkelaarsvriendelijk te maken

Layer5 logo

Wanneer een project groeit naar een dozijn microservices, verandert infrastructuurbeheer in chaos. Ontwikkelaars schrijven code, operations worstelt om manifesten te begrijpen, en wanneer er fouten optreden, schuiven alle partijen de schuld in cirkels rond. Een veelvoorkomende situatie, maar niet een prettige.

Op een gegeven moment kwam ik de Layer5 repository tegen. In wezen is het het vlaggenschipproject van een organisatie die een hele suite aan open-source hulpprogramma's ontwikkelt voor het werken met Kubernetes en service meshes. Hun hoofdidee is om infrastructuur zichtbaar te maken en ontwikkelaars visuele controle te geven zonder de noodzaak om handmatig honderden regels YAML te herschrijven.

Wat is er inbegrepen in het Project

De Layer5 repository dient als showcase en hub voor verschillende onafhankelijke tools. Elk daarvan pakt een specifieke taak aan in de infrastructuurstack.

Meshery

Meshery

Dit is een managementdashboard voor Kubernetes en service meshes zoals Istio, Linkerd of Consul. Het hulpprogramma kan verbinding maken met clusters, de huidige topologie lezen, configuraties valideren tegen best practices en netwerkprestaties testen.

Kanvas

Kanvas

Een visuele infrastructuureditor. In plaats van manifesten in de terminal te bewerken, bouw je je architectuur op een interactief canvas. Het diagram wordt in realtime gesynchroniseerd met het cluster, zodat wijzigingen onmiddellijk zichtbaar zijn voor het hele team.

Nighthawk

Nighthawk

Een load testing tool voor Layer 7 van het OSI-model (HTTP, HTTPS, HTTP/2). Het werd geschreven in C++ als load generator voor Envoy, en het Layer5-team integreerde het in hun latentie- en doorvoertestscenario's.

Catalog

Cloud Native Catalog en Patterns

Een catalogus van kant-en-klare architectuurpatronen voor Kubernetes. Als je een canary release moet opzetten of verkeer moet splitsen tussen serviceversies, kun je een bewezen template uit de catalogus gebruiken in plaats van het wiel opnieuw uit te vinden.

SMP

Service Mesh Performance en Sistent

De SMP-specificatie standaardiseert de verzameling van service mesh prestatiemetrieken, zodat testresultaten over verschillende omgevingen correct kunnen worden vergeleken. En Sistent is hun eigen design system en React-componentenbibliotheek, waar alle webinterfaces van de producten van het bedrijf op zijn gebouwd.

Sistent

Hoe het Onder de Motorkap Werkt

De meeste services van het project zijn geschreven in Go en JavaScript. Voor clusterintegratie wordt Meshery Operator gebruikt, die binnen Kubernetes wordt geïnstalleerd en de MeshSync-component uitvoert.

Meshery Operator

MeshSync luistert naar Kubernetes API-events en stuurt resourcestatus door naar de Meshery-server. De hele stack werkt onder de Apache 2.0-licentie, dus de code is volledig open voor modificatie en lokale implementatie.

Je kunt het Meshery CLI-hulpprogramma op je lokale machine installeren en starten met één commando:

curl -L https://meshery.io/install | PLATFORM=kubernetes bash -
mesheryctl system start

Na opstarten opent een lokale webinterface waar je de gewenste Service Mesh-adapter kunt selecteren, een bestaande kubeconfig kunt verbinden en verkeer kunt beginnen te profileren.

Praktische Scenario's

In welke situaties bespaart de Layer5-toolkit daadwerkelijk tijd:

  1. Service Mesh-oplossingen vergelijken vóór adoptie. Als je team moet kiezen tussen Istio en Linkerd, helpen de ingebouwde benchmarks op basis van Nighthawk om identieke synthetische loads uit te voeren en geheugengebruik te vergelijken met netwerklatentie.
  2. Onboarding van nieuwe ontwikkelaars. De visuele kaart in Kanvas helpt nieuwkomers sneller te begrijpen hoe services zijn verbonden, zonder verouderde diagrammen in Confluence te hoeven lezen.
  3. Configuratie-audits. De patterncatalogus geeft aan waar resource limits ontbreken in manifesten of waar mTLS-beveiligingsbeleid verkeerd is geconfigureerd.
  4. Training voor cloudtechnologieën. Het ingebouwde Layer5 Academy-platform bevat interactieve oefeningen waar je veilig kunt oefenen zonder het risico te lopen een productiecluster plat te leggen.

Layer5 Academy

Is het de Moeite Waard om te Proberen

Layer5 bleek een substantieel project te zijn met een heleboel subprojecten. Aan de ene kant kan de leercurve door de overvloed aan entiteiten steil lijken: je moet uitzoeken waar Meshery eindigt en Kanvas begint. Aan de andere kant, als je team vastloopt op de complexiteiten van het onderhouden van microservices op Kubernetes, zal de visuele benadering van architectuur een deel van het routinematige werk wegnemen.

De gemakkelijkste manier om te beginnen is met mesheryctl op een lokale Minikube of k3s. Op deze manier zie je onmiddellijk hoe visualisatie het diagnosticeren van netwerkproblemen in je stack vereenvoudigt.

Gerelateerde projecten