SaaS-arkitektur og iværksætterudvikling · Lektion

Containerisering og orkestrering

Lær, hvordan containere og orchestrators som Kubernetes pakker og kører SaaS-applikationer ensartet på tværs af miljøer i en CI/CD-pipeline.

Lektion 4 af 413 trin

Containerisering og orkestrering er en gratis SaaS-arkitektur og iværksætterudvikling-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i SaaS-arkitektur og iværksætterudvikling, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. SaaS-arkitektur og iværksætterudvikling-kurset indeholder 4 lektioner i alt.

Problemet, som containere løser

Software opfører sig forskelligt på forskellige maskiner på grund af biblioteker og konfigurationer, der ikke stemmer overens. Containere pakker en app sammen med alle dens afhængigheder, så den kører ens overalt.

Det løser det klassiske problem: "Det virker på min maskine".

Containere sammenlignet med virtuelle maskiner

VM'er virtualiserer et helt operativsystem og er tunge. Containere deler værtskernel'en og isolerer kun applikationen, så de er lette og starter hurtigt.

Du kan køre mange containere dér, hvor du ellers ville køre få VM'er.

Definition af et image

Et container-image er et bygget artefakt, der beskrives af en Dockerfile. Det angiver base-imaget, afhængighederne og startkommandoen.

FROM node:20-alpine
WORKDIR /app
COPY package.json .
RUN npm install
COPY . .
CMD ["node", "server.js"]

Images og registre

Byggede images gemmes i et register (Docker Hub, ECR, GCR). Hvert image får et tag som myapp:1.4.2.

I CI/CD bygger pipelinen et image, skubber det til registret og implementerer det på servere.

Hvorfor orkestrering

Det er nemt at køre én container. Hvis du skal køre hundredvis på mange maskiner med sundhedstjek, skalering og løbende opdateringer, har du brug for en orkestrator.

Kubernetes er det dominerende valg til SaaS i stor skala.

Pods og implementeringer

I Kubernetes kører en Pod én eller flere containere. En Deployment angiver, hvor mange replika-Pods du ønsker, og sørger for, at de kører.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: api
spec:
  replicas: 3
  template:
    spec:
      containers:
      - name: api
        image: myapp:1.4.2

Tjenester og netværk

Pods er kortlivede og får nye IP-adresser. En Kubernetes-Service giver en stabil adresse og fordeler trafikken mellem de matchende Pods.

Det afkobler kaldere fra de enkelte Pods' livscyklusser.

Deklarativ ønsket tilstand

Kubernetes er deklarativt: Du beskriver den ønskede tilstand, og kontrolsløjfen arbejder løbende på at få virkeligheden til at stemme overens med den.

Hvis en Pod går ned, starter controlleren automatisk en ny. Du administrerer hensigten, ikke de enkelte trin.

Løbende opdateringer

Orkestratorer udfører løbende opdateringer: Pods med den nye version starter, mens de gamle tømmes, så tjenesten forbliver tilgængelig hele tiden.

Hvis den nye version ikke består sundhedstjekkene, standses udrulningen, og den kan automatisk rulles tilbage.

Automatisk skalering af Pods

Horizontal Pod Autoscaler tilføjer eller fjerner Pod-replikaer baseret på CPU, hukommelse eller brugerdefinerede målinger.

Det tilpasser automatisk kapaciteten til efterspørgslen, hvilket giver SaaS en vigtig fordel med hensyn til omkostninger og pålidelighed.

Containere i CI/CD-pipelinen

Et typisk forløb: En commit udløser CI, som bygger og tester et image, skubber det til et register og opdaterer Kubernetes-implementeringen til det nye tag.

Det gør implementeringer gentagelige, revisionssporbare og hurtige.

Hurtigt tjek

Test din viden om containerisering.

Opsummering

Du har lært om containerisering og orkestrering:

  • Containere pakker apps, så de kører ensartet, og er lettere end VM'er
  • Images og registre føder pipelinen
  • Kubernetes-Deployments, Services, løbende opdateringer og automatisk skalering kører SaaS i stor skala

Deklarativ ønsket tilstand binder det hele sammen med CI/CD.

Gratis at komme i gang

Lær SaaS-arkitektur og iværksætterudvikling med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “Containerisering og orkestrering” gratis?

Ja — alle 3 lektioner i læringssporet SaaS-arkitektur og iværksætterudvikling, inklusive “Containerisering og orkestrering”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. SaaS-arkitektur og iværksætterudvikling-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Containerisering og orkestrering”?

Lær, hvordan containere og orchestrators som Kubernetes pakker og kører SaaS-applikationer ensartet på tværs af miljøer i en CI/CD-pipeline. Du øver dig i SaaS-arkitektur og iværksætterudvikling med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på SaaS-arkitektur og iværksætterudvikling?

Der kræves ingen tidligere erfaring. SaaS-arkitektur og iværksætterudvikling på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “Containerisering og orkestrering”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne SaaS-arkitektur og iværksætterudvikling-lektion?

Ja. Alle SaaS-arkitektur og iværksætterudvikling-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Infrastructure as Code (IaC)
  2. Automatiserede udrulninger og rollbacks
  3. Udrulningsstrategier og blue/green
  4. Containerisering og orkestrering
← Tilbage til SaaS-arkitektur og iværksætterudvikling