utgÄvan av containerorkestreringsplattformen , som gör det möjligt att hantera en kluster av isolerade containrar som en enhet och tillhandahÄller mekanismer för distribution, underhÄll och skalning av applikationer som körs i containrar. Projektet skapades ursprungligen av Google, men överfördes sedan till en oberoende plattform som förvaltas av Linux Foundation. Plattformen positioneras som en community-driven universell lösning, frikopplad frÄn specifika system och kapabel att fungera med alla applikationer i alla molnmiljöer. Koden för Kubernetes Àr skriven i Go och Àr licensierad under Apache 2.0.
Funktioner för distribution och hantering av infrastruktur erbjuds, sÄsom DNS-hantering, belastningsbalansering,
distribuering av containrar över klusterknutar (migration av containrar baserat pÄ förÀndringar i belastning och tjÀnstebehov), hÀlsokontroller pÄ applikationsnivÄ, kontohantering, uppdatering och dynamisk skalning av den aktiva klustret utan att stoppa det. Det Àr möjligt att distribuera grupper av containrar med genomförande av uppdaterings- och ÄterstÀllningsoperationer direkt för hela gruppen, samt logisk uppdelning av klustret med resursavdelning. Stöd för dynamisk migrering av applikationer finns, dÀr bÄde lokala lagringssystem och nÀtverkslagringssystem kan anvÀndas för datalagring.
UtgÄvan av Kubernetes 1.18 inkluderar 38 förÀndringar och förbÀttringar, varav 15 har uppgraderats till stabil status, och 11 till beta status. 12 nya förÀndringar har föreslagits som alfa. Vid förberedelsen av den nya versionen har lika mycket arbete lagts bÄde pÄ att förbÀttra olika funktioner och stabilisera experimentella möjligheter samt pÄ att lÀgga till nya utvecklingar. Huvudsakliga förÀndringar:
- Kubectl
- alfa-versionen av kommandot "kubectl debug", som förenklar felsökning i pods genom att lansera temporÀra containrar med felsökningsverktyg.
- kommandot "kubectl diff", som gör det möjligt att se vad som kommer att förÀndras i klustret om man tillÀmpar manifestet.
- alla generatorer frÄn kommandot "kubectl run", förutom generatorn för att starta en ensam pod.
- flaggen "âdry-run", beroende pĂ„ dess vĂ€rde (client, server och none) utförs provkörningen av kommandot antingen pĂ„ klientens eller serverns sida.
- kubectl-kod till ett separat repositorium. Detta möjliggjorde att separera kubectl frÄn interna beroenden i kubernetes och underlÀttade importen av koden till tredjepartsprojekt.
- Ingress
- Àndring av API-grupp för Ingress till networking.v1beta1.
- nya fÀlt:
- pathType, vilket gör det möjligt att ange hur vÀgen i begÀran ska jÀmföras
- IngressClassName â ersĂ€ttning för annotationen kubernetes.io/ingress.class, som har mĂ€rkts som förĂ„ldrad. Detta fĂ€lt anger namnet pĂ„ det sĂ€rskilda objektet IngressClass
- IngressClass-objektet, dÀr namnet pÄ ingresses kontrollern, dess ytterligare parametrar och kÀnnetecknet för att anvÀnda den som standard anges.
- TjÀnst
- fÀltet AppProtocol, dÀr man kan ange vilken protokoll applikationen anvÀnder
- till beta-status och aktiverad som standard EndpointSlicesAPI, som Àr en mer funktionell ersÀttning för vanliga Endpoints.
- NĂ€tverk
- IPv6 har översatts till beta-status.
- Permanenta diskar. Följande funktionalitet har förklarats stabil:
- Konfigurering av applikation
- I objekten ConfigMap och Secret ett nytt fÀlt "immutable". Att stÀlla in fÀltet till true förbjuder Àndring av objektet.
- SchemalÀggare
- möjlighet att skapa ytterligare profiler för kube-scheduler. Om det tidigare krĂ€vdes att starta ytterligare separata schemalĂ€ggare för att implementera icke-standardiserade algoritmer för pod-fördelning, finns möjligheten nu att skapa ytterligare instĂ€llningsuppsĂ€ttningar för den standardiserade schemalĂ€ggaren och ange dess namn i samma fĂ€lt för podden ".spec.schedulerName". Status â alfa.
- har förklarats stabil
- Skalning
- möjligheten att ange i manifestet för HPA graden av aggressivitet vid förÀndring av antalet körda poddar, det vill sÀga att vid ökad belastning köra N gÄnger fler instanser (instance) direkt.
- Kubelet
- har fÄtt beta-status. Funktionen inkluderar NUMA-fordelning, vilket gör att man kan undvika prestandaförsÀmring pÄ multikÀrniga system.
- Beta-status funktionen PodOverhead, som gör det möjligt att ange i RuntimeClass ett ytterligare antal resurser som behövs för att starta en pod.
- stöd för HugePages, i alfa-status har containerisolering lagts till och stöd för flera storlekar av hugepages.
- endpunkt för metrik /metrics/resource/v1alpha1, istÀllet anvÀnds /metrics/resource
- API
- möjligheten att anvÀnda den förÄldrade API-gruppen apps/v1beta1 och extensions/v1beta1 har tagits bort.
- har uppgraderats till beta2-status. Denna förbÀttring flyttar manipuleringen av objekt frÄn kubectl till API-servern. Författarna till förbÀttringen pÄstÄr att detta kommer att ÄtgÀrda mÄnga befintliga buggar som inte kan lösas i den nuvarande situationen. De har ocksÄ lagt till sektionen «.metadata.managedFields», dÀr de föreslÄr att lagra historiken för objektÀndringar, med angivande av vem, nÀr och vad som Àndrats.
- stabil CertificateSigningRequest API.
- Stöd för Windows-plattformen.
- Stödet för Windows-node fortsÀtter att expandera. Alfa-versioner har lagts till:
- har överfört stödet till stabil status
- Stödet för Windows-node fortsÀtter att expandera. Alfa-versioner har lagts till:
KĂ€lla: opennet.ru
