Kubernetes

Oprettelse af Kubernetes-klynge ved hjælp af Amazons EKS-tjeneste

Oprettelse af Kubernetes-klynge ved hjælp af Amazons EKS-tjeneste
Kubernetes er et komplekst program. Det er beregnet til en distribueret klynge af computernoder og er designet til at modstå stigninger i arbejdsbelastning, linkfejl og nodefejl. Det er også et hurtigt bevægende projekt med konstante (og ofte bagud inkompatible) ændringer og tredjepartsafhængigheder.

I betragtning af al den kompleksitet, der ligger til grund for det, er det meget vanskeligt og dyrt for en organisation at være vært og vedligeholde en Kubernetes-klynge og køre deres applikationer oven på den. Hvis du ikke er i gang med at drive Kubernetes-klynger, kan du bruge Amazons Elastic Kubernetes Service (EKS) til at implementere dine applikationer. Det vil i høj grad reducere driftsomkostningerne, og du kan være let at vide, at erfarne udviklere og operatører i stedet er større end det.

Forudsætninger

Oprettelse af en Kubernetes-klynge

Du kan også oprette klyngen via CLI, men de fleste nye brugere finder den grafiske konsol venligere. Så vi bruger det i stedet. Forudsat at du er logget ind på din AWS-konsol, kan vi komme i gang ved at gå til Tjenester fra øverste højre hjørne og klikke på EKS fra rullemenuen:

Næste menu viser AWS intro side, lad os gå til Klynger under EKS-undermenuen.

Her kan du se listen over alle Kubernetes-klynger oprettet under din konto. Da der ikke er nogen, lad os oprette en.

Klik på Opret klynge. Giv det et navn, vælg den version af Kubernetes, du ønsker, på tidspunktet for denne skrivende version 1.11 understøttes af Amazon. Klik derefter på Rollenavn, fordi vi har brug for at oprette en rolle, som vi har brug for til Amazon EKS, så den kan administrere vores klynge.

Oprettelse og tildeling af rolle

Før vi kommer i gang med det, lad os forstå en nøgleforskel mellem Amazon EKS (en AWS-tjeneste) og din Kubernetes-klyngeAWS. AWS adskiller ansvar overalt, hvor det kan, for at give dig en meget finkornet kontrol over alt. Hvis du ønsker at give dig selv eller en tredjepart fuld kontrol over disse ressourcer, kan du også gøre det.

Tænke på Amazon EKS som en sådan part, der administrerer din Kubernetes-klynge (din EKS-klynge) på dine vegne, men det kræver din eksplicitte tilladelse til netop det. For at gøre det vil vi 'oprette' og tildele Rolle at administrere EKS-klynger under vores AWS-konto og tildele den til Amazon EKS.

I den nye IAM-fane, der er åbnet efter at have klikket på rollenavn, vil du se et par standardroller til fakturering og support er allerede på plads. Lad os oprette en ny til EKS. Klik på Opret rolle.

Vælg typen af ​​betroet enhed som AWS-tjeneste, for hvilken rollen skulle oprettes, og vælg derefter EKS, så din EKS-klynge kan tale direkte til Amazon EKS direkte og udføre optimalt. Klik derefter på Næste.

Nu vil du kunne se tilladelses- og tilladelsesgrænser, der er knyttet til denne rolle. Standardværdierne er i orden, bare klik på næste.

Den næste menu beder dig om at tilføje tags (nøgleværdipar) til denne rolle. Det er helt valgfrit, men ret nyttigt, hvis du bruger CLI til at styre dine AWS-ressourcer, og der er mange forskellige roller og ressourcer at styre. Vi tilføjer ikke nogen tags. Klik Næste og giv din rolle et meningsfuldt navn og en beskrivelse.

Og det er det! Klik på Opret rolle og vi kan gå tilbage til vores oprettelse af EKS-klynger. Næste gang du vil oprette en anden klynge, kan du genbruge den samme rolle igen.

Tilbage til Cluster Creation

Selvom din AWS-konto er helt ny, er der stadig standard VPC (Virtual Private Cloud) med et par undernet oprettet i den. Disse er ofte spredt over forskellige AWS-regioner, og du skal vælge mindst to af dem for at det skal være en klynge.

Og vælg standardsikkerhedsgruppen for at tillade, at mest indgående og udgående trafik går normalt.

Klik på skab og din Kubernetes-klynge kører på få minutter. Når din klynge er oprettet. Du kan altid få et overblik over det ved at gå til EKS → Cluster → myCluster. Naturligvis vil den sidste del, navnet på din klynge være anderledes.

Lokal opsætning

Den måde, EKS-platformen fungerer på, er, at den giver dig mulighed for at interagere med kontrolplanet ved flyets API-slutpunkt. Kontrolplan svarer til masternoderne i vanilje Kubernetes-klynger. Det kører etcd, CA'er og selvfølgelig API-serveren, som du vil bruge til at kontrollere din Kubernetes-klynge.

Du bliver nødt til at konfigurere din kubectl og / eller dit dashboard til at arbejde med dette API-slutpunkt, og når det er konfigureret, kan du begynde at liste alle dine ressourcer, implementeringer osv., Som du ville gøre med en almindelig Kubernetes-klynge.

Hvis du ikke allerede har Kubectl installeret på din computer, kan du gøre det ved at følge dette link til Mac, Windows eller din foretrukne Linux-distro.

Vi har brug for en ekstra binær, der ville være AWS IAM-autentificerings binær til din platform. Download det herfra og gør det til en eksekverbar.

$ sudo chmod + x ./ aws-iam-autentificator

Føj det til en af ​​dine $ PATH-mapper for eksempel / usr / bin eller / sbin eller / usr / local / sbin. Eller du kan gøre som Amazon anbefaler og bare tilføje det til dit hjemmekatalog og gøre $ HOME til en del af din PATH-variabel.

$ cp ./ aws-iam-authenticator $ HOME / bin / aws-iam-authenticator &&
eksporter PATH = $ HOME / bin: $ PATH

Næste test, om binærfiler fungerer.

$ kubectl version
$ aws-iam-authenticator hjælp

Nu er vi nødt til at konfigurere disse binære filer, så de kan tale sikkert med vores Kubernetes-klynge.  Du kan gøre det manuelt, hvis du ikke vil oprette AWS CLI, men det er ikke en pålidelig tilgang. Derfor nævnte jeg i forudsætningerne, at AWS CLI var nødvendig. Så forudsat at du har installeret det og konfigureret det til at arbejde med din AWS-konto, skal du køre følgende kommando:

Bemærk: Hvis du allerede brugte kubectl til at administrere en anden Kubernetes-klynge, med konfigurationsfilerne som standard ~ /.kube Beliggenhed. Du vil muligvis tage backup af denne mappe, før du kører følgende kommando.

$ aws eks update-kubeconfig --navn myCluster

Navnet på din klynge ville være anderledes end “myCluster ”, erstatte det i stedet. Kommandoen update-kubeconfig opdaterer faktisk din kubectl-konfiguration ved at redigere filerne i ~ /.kube folder. Hvis denne placering ikke eksisterer, opretter den en ny til dig.

Nu er du klar til at interface med din klynge.

$ Aws eks beskriver-klynge - navn myCluster

Hvor skal vi næste?

Nu er du endelig klar til at tilføje medarbejdernoder ved hjælp af CloudFormation og distribuere din applikation på tværs af alle de regioner, du klynger, VPC har adgang til. Al denne proces kan også automatiseres til nth grad, hvis du vælger at bruge AWS CLI til alt fra oprettelse af klyngen til implementering og skalering af dine apps.

Håber du fandt denne tutorial nyttig og indsigtsfuld.

Mus AppyMouse pegefelt på skærmen og musemarkør til Windows-tablets
AppyMouse pegefelt på skærmen og musemarkør til Windows-tablets
Tabletbrugere savner ofte musemarkøren, især når de er vante til at bruge bærbare computere. Touchscreen-smartphones og tablets har mange fordele, og ...
Mus Midterste museknap fungerer ikke i Windows 10
Midterste museknap fungerer ikke i Windows 10
Det midterste museknap hjælper dig med at rulle gennem lange websider og skærme med en masse data. Hvis det stopper, vil du ende med at bruge tastatur...
Mus Sådan ændres venstre og højre museknap på Windows 10-pc
Sådan ændres venstre og højre museknap på Windows 10-pc
Det er en ganske normal, at alle computermusenheder er ergonomisk designet til højrehåndede brugere. Men der er musenheder til rådighed, der er specie...