Programutveckling och programdistribution
Granska mönster och metoder för programutveckling, konfigurera Azure Pipelines och implementera metodtips för platstillförlitlighet (SRE). SRE är en programvaruteknikmetod för programutveckling och distribution, ändringshantering, övervakning och nödåtgärder.
Planera, träna och bevis
Använd följande checklista och programutvecklingsresurser för att planera programutveckling och distribution. Du bör kunna besvara följande frågor:
- Har du förberett din programutvecklingsmiljö och ditt installationsarbetsflöde?
- Hur strukturerar du projektmappen för att stödja Kubernetes-programutveckling?
- Har du identifierat kraven på tillstånd, konfiguration och lagring i ditt program?
Checklista för SRE
Förbered utvecklingsmiljön. Konfigurera din miljö med verktygen för att skapa containrar och konfigurera ditt arbetsflöde för utveckling.
Mer information finns i:
Containerisera ditt program. Bekanta dig med kubernetes-utvecklingsupplevelsen från slutpunkt till slutpunkt, inklusive programställningar, arbetsflöden för inre loopar, ramverk för programhantering, CI/CD-pipelines, loggaggregering, övervakning och programmått.
Mer information finns i:
Granska vanliga Kubernetes-scenarier. Kubernetes ses ofta som en plattform för att leverera mikrotjänster, men det blir en bredare plattform. Mer information om vanliga Kubernetes-scenarier, till exempel batchanalys och arbetsflöde, finns i Översikt över vanliga Kubernetes-scenarier (video).
Förbered ditt program för Kubernetes. Förbered din programfilsystemlayout för Kubernetes och organisera för veckovisa eller dagliga versioner. Lär dig hur Kubernetes-distributionsprocessen möjliggör tillförlitliga uppgraderingar utan stilleståndstid.
Mer information finns i:
Hantera programlagring. Förstå prestandabehov och åtkomstmetoder för poddar så att du kan tillhandahålla lämpliga lagringsalternativ. Planera för sätt att säkerhetskopiera och testa återställningsprocessen för ansluten lagring.
Mer information finns i:
Hantera programhemligheter. Använd ett nyckelvalv för att lagra och hämta nycklar och autentiseringsuppgifter. Lagra inte autentiseringsuppgifter i programkoden.
Mer information finns i:
Distribuera till produktion och tillämpa metodtips
När du förbereder programmet för produktion använder du följande checklista. Du bör kunna besvara följande frågor:
- Kan du övervaka alla aspekter av ditt program?
- Har du definierat resurskrav för ditt program? Vad sägs om skalningskrav?
- Kan du distribuera nya versioner av programmet utan att påverka produktionssystemen?
Checklista för metodtips för SRE
Konfigurera hälsokontroller för beredskap och livskraft. Kubernetes använder beredskaps- och livenesskontroller för att veta när ditt program är redo att ta emot trafik och när det behöver startas om. När du inte definierar kontroller kan Kubernetes inte avgöra om programmet körs. Mer information finns i Kontroller av liveness och beredskap.
Konfigurera loggning, programövervakning och aviseringar. Det är viktigt att övervaka containrarna, särskilt när du kör ett produktionskluster i stor skala med flera program. Den rekommenderade loggningsmetoden för containerbaserade program är att skriva till standardutdataströmmarna (
stdout
) och standardfelet (stderr
).Mer information finns i:
Definiera resurskrav för programmet. Ett primärt sätt att hantera beräkningsresurserna i ett Kubernetes-kluster är att använda poddbegäranden och -gränser. Dessa begäranden och begränsningar talar om för Kubernetes-schemaläggaren vilka beräkningsresurser som ska tilldelas till en podd. Mer information finns i Definiera poddresursbegäranden och gränser.
Konfigurera krav för programskalning. Kubernetes har stöd för horisontell autoskalning av poddar så att antalet poddar i en distribution justeras beroende på CPU-användningen eller något annat mått du väljer. Om du vill använda autoskalning måste alla containrar i dina poddar ha cpu-begäranden och gränser definierade. Mer information finns i Konfigurera horisontell automatisk skalning av poddar.
Distribuera program med hjälp av en automatiserad pipeline och DevOps. Den fullständiga automatiseringen av alla steg mellan kodincheckning till produktionsdistribution gör att teamen kan fokusera på att skapa kod och ta bort omkostnaderna och potentiella mänskliga fel i manuella steg. Att distribuera ny kod är snabbare och mindre riskabelt, vilket hjälper teamen att bli mer flexibla, mer produktiva och mer säkra på att de kör kod.
Mer information finns i:
Optimera och skala
Nu när programmet är i produktion använder du checklistan för programdistribution för att optimera arbetsflödet och förbereda programmet och teamet för skalning. Du bör kunna besvara följande frågor:
- Är övergripande programproblem abstraherade från ditt program?
- Kan du upprätthålla systemets och programmets tillförlitlighet samtidigt som du itererar på nya funktioner och versioner?
Checklista för programdistribution
Distribuera en API-gateway. En API-gateway fungerar som en startpunkt för mikrotjänster, frikopplar klienter från dina mikrotjänster, lägger till ytterligare ett säkerhetslager och minskar komplexiteten i dina mikrotjänster genom att ta bort bördan av att hantera övergripande problem. Mer information finns i Använda Azure API Management med mikrotjänster som distribuerats i Azure Kubernetes Service.
Distribuera ett tjänstnät. Ett tjänstnät tillhandahåller funktioner för dina arbetsbelastningar, till exempel trafikhantering, återhämtning, princip, säkerhet, stark identitet och observerbarhet. Ditt program är frikopplat från de här driftfunktionerna och tjänstnätet flyttar dem från programskiktet och ned till infrastrukturskiktet.
Mer information finns i:
Implementera SRE-metoder. SRE är en beprövad metod som upprätthåller avgörande system- och programtillförlitlighet och itererar med den hastighet som marknadsplatsen kräver.
Mer information finns i: