Ett styrdiagram för hantering av Kubernetes-applikationer
Novu är en populär Helm Chart utformad för att effektivisera hanteringen av Kubernetes applikationer. Det är en robust lösning för att enkelt distribuera, uppdatera och skala behållaranpassade program. Oavsett om du arbetar med en monolitisk app eller en mikrotjänstarkitektur erbjuder Novu ett flexibelt och effektivt sätt att hantera dina Kubernetes-resurser.
Helm är de facto pakethanteraren för Kubernetes, vilket gör det möjligt för utvecklare att hantera diagram – samlingar av YAML-filer – som definierar distributionskonfigurationen för program. Novu bygger på Helm genom att erbjuda ytterligare funktioner som gör hanteringen av dessa diagram mer intuitiv och kraftfull.
En av de utmärkande egenskaperna hos Novu är dess deklarativa konfigurationsmetod. Det innebär att du kan ange exakt hur din applikation ska distribueras, skalas och underhållas utan att dyka in i komplexa YAML-strukturer. Novu abstraherar mycket av Kubernetes komplexitet, så att du kan fokusera på affärslogiken snarare än den underliggande infrastrukturen.
Novu tar ett deklarativt tillvägagångssätt för konfiguration, vilket innebär att du definierar din applikations krav i klartext. Detta är särskilt användbart för att definiera beroenden, konfigurationer och resursspecifikationer. Du kan till exempel ange att appen kräver vissa miljövariabler eller specifika volymer.
Novu integreras sömlöst med pipelines för kontinuerlig integration och kontinuerlig leverans (CI/CD). På så sätt kan du automatisera distributionen av programmet i olika miljöer, till exempel utveckling, mellanlagring och produktion. Du kan också använda verktyg som Jenkins, GitHub Actions eller CircleCI för att utlösa distributioner när kodändringar upptäcks.
Kubernetes ger kraftfulla övervaknings- och observationsmöjligheter, men att hantera dessa verktyg för varje applikation kan vara besvärligt. Novu förenklar denna process genom att tillhandahålla inbyggt stöd för övervakning och loggning. Du kan enkelt integrera mätvärden, loggar och spår från tjänster som Prometheus, Grafana och Kubernetes Metrics API.
Att distribuera program till produktion medför risker, särskilt när du arbetar i ett distribuerat system som Kubernetes. Novu innehåller robust felhantering och rollbacks mekanismer som gör att du kan upptäcka och lösa problem snabbt. Om en applikation misslyckas med att distribuera eller inte svarar kan Novu automatiskt utlösa återställningar eller nya försök.
För att installera Novu måste du ha Helm installerat på ditt system. Du kan ladda ner den med följande kommando:
helm repo add https://charts.novu.sh
helm repo update
När Helm har ställts in kan du installera Novu genom att köra:
helm install novu --create-namespace
Novu använder en YAML-fil för att definiera din applikations konfiguration. Du kommer att skapa en novu.yaml-fil i din arbetskatalog med innehåll som detta:
apiVersion: v1
kind: Component
metadata:
name: my-app
version: 1.0.0
spec:
containers:
- name: my-service
image: mycompany/myapp:latest
ports:
- containerPort: 80
Du kan ange beroenden i din Novu-konfiguration för att säkerställa att alla nödvändiga komponenter distribueras tillsammans med ditt program. Här är ett exempel:
dependencies:
- name: database
version: 1.2.3
Här är ett exempel på att distribuera en enkel webbapplikation med Novu:
helm install --set image.repository=mycompany/myapp \
--set image.tag=latest \
my-app novu
Med det här kommandot distribueras komponenten my-app med den angivna behållaravbildningen och taggen.
Novu gör det enkelt att skala din ansökan genom att helt enkelt ändra dess konfiguration. Du kan lägga till en skalningsprincip som automatiskt justerar antalet behållare baserat på efterfrågan:
spec:
containers:
- name: my-service
image: mycompany/myapp:latest
ports:
- containerPort: 80
resources:
limits:
cpus: '2'
Att uppdatera din ansökan är enkelt med Novu. Du kan helt enkelt skicka en ny version av behållaravbildningen och utlösa en uppdatering:
docker build -t mycompany/myapp:new-version .
helm update --create-namespace my-app novu
Upprätthåll alltid tydlig versionshantering för dina applikationer. Använd semantisk versionshantering (t.ex. 1.2.3) för att ange större, mindre och korrigeringsuppdateringar.
Använd CI/CD-pipelines för att automatisera testning och driftsättning. Använd webhooks eller utlösare för att automatiskt distribuera när kodändringar skickas till din lagringsplats.
Ställ in övervakning och loggning från början. Definiera mätvärden, loggar och spår i din Novu-konfiguration för att hålla reda på din applikations hälsa och prestanda.
Innan du distribuerar till produktion ska du alltid testa programmet i en mellanlagringsmiljö. Använd Novu för att skapa ett mellanlagringskluster eller namnområde för testning före distribution.
Om du stöter på problem när du använder Novu kontrollerar du loggarna och mätvärdena som tillhandahålls av Kubernetes. Vanliga problem är beroendekonflikter, resursbegränsningar eller konfigurationsfel.
Efter att ha köpt det här programmet på Esadax, kommer du att uppmanas att tillhandahålla konfigurationsparametrarna nedan. Esadax lägger till de tillhandahållna variablerna i driftsättningen så att applikationen kan startas med den konfiguration den kräver.
| Parametrar | Beskrivning |
|---|---|
apiUrl |
Värde som tillhandahålls till distributionen för apiUrl. |
webUrl |
Värde som tillhandahålls till distributionen för webUrl. |
wsUrl |
Värde som tillhandahålls till distributionen för wsUrl. |
När värdena är konfigurerade klickar du på Distribuera för att starta programmet. Det köpta programmet använder de medföljande konfigurationsvärdena, inklusive autentiseringsuppgifter som användarnamn och lösenord när dessa parametrar tillhandahålls.
Novu är ett utmärkt val för att hantera Kubernetes-applikationer på grund av dess deklarativa konfiguration, integration med CI/CD-pipelines och robust felhantering. Genom att följa stegen i den här guiden kan du snabbt distribuera, uppdatera och skala dina program med tillförsikt. Oavsett om du arbetar med ett litet projekt eller en storskalig driftsättning ger Novu den flexibilitet och kraft du behöver för att lyckas.