Kubernetes(forkortet K8s) er et open source-system, der bruges til at administrere og implementere containeriserede applikationer på tværs af et computernetværk. Kubernetes er blevet en populær og kraftfuld containerstyringsplatform, oprindeligt udviklet af Google og i øjeblikket vedligeholdt af et stort fællesskab af udviklere.
De vigtigste funktioner Kubernetes inkluderer
-
Container Management : Kubernetes giver dig mulighed for at pakke applikationer og deres ressourcer ind i containers. Containers give et letvægtsmiljø og sikre, at applikationer kører konsekvent på ethvert system.
-
Automatiseret implementering : Kubernetes muliggør automatiseret implementering og nem skalerbarhed af applikationer og tjenester. Du kan angive ressourcekrav, antallet af forekomster og Kubernetes vil automatisk bevare den ønskede tilstand.
-
Ressourcestyring : K8s administrerer serverressourcer såsom CPU, hukommelse og lagring for at sikre, at applikationer ikke bruger for store ressourcer og ikke forstyrrer hinanden.
-
Automatisk gendannelse og fejltolerance : Kubernetes hjælper applikationer med automatisk genopretning efter fejl. Den kan automatisk rulle tilbage til en tidligere version af en applikation, hvis den nye version støder på problemer.
-
Belastningsbalancering og trafikfordeling : Kubernetes giver mekanismer til jævnt at fordele trafik mellem forekomster af applikationer på forskellige servere nodes. Dette forbedrer ydeevnen og sikrer skalerbarhed.
-
Konfiguration og Secrets Management : Kubernetes giver dig mulighed for sikkert at administrere applikationskonfiguration og hemmeligheder ved hjælp af funktioner som K8s Secrets og ConfigMaps.
Driftsmekanismerne for Kubernetes omfatter
-
Nodes: Serverne eller individuelle computere i netværket omtales som " nodes." Der er to typer af nodes i Kubernetes: Master Node og Worker Node. Master Node styrer og styrer hele systemet, mens Worker Node eksekverer containers og applikationer.
-
Pods: En Pod er den mindste deployerbare enhed i Kubernetes. En pod kan indeholde en eller flere containers, men de deler den samme netværkslagring og livscyklus. Dette letter kommunikationen mellem containers i en pod.
-
Controller: Controllere er komponenter, der administrerer og vedligeholder replikaer af pods. Typer af controllere omfatter ReplicaSet(sikring af det korrekte antal pods og genstart om nødvendigt), Deployment(håndtering af versioner og opdateringer af applikationer) og StatefulSet(til implementering af stateful applikationer).
-
Service: Tjenester er en mekanisme til belastningsbalancering og fordeling af trafik til pods. Tjenester gør det nemt for applikationer at få adgang pods uden at skulle kende deres specifikke placeringer.
-
Kubelet og Kube Proxy: Kubelet er en komponent, der kører på hver arbejderknude, og er ansvarlig for styring pods på denne knude. Kube Proxy er en netværksproxy til at oprette forbindelse til pods.
Som et resultat Kubernetes automatiserer implementeringen og styringen af containeriserede applikationer, hvilket reducerer den tid og indsats, der kræves for at vedligeholde komplekse systemer.