Redmine i Kubernetes - Del 1: Förbereda miljön

6/22/2020
9 perc
Lukáš Beňa.

A tvådelade kommer sorozatot a Redmine i Kubernetes végrehajtóinál. Vi kommer att använda rekommenderade verktyg och metoder med målet att implementera en robust instans av Redmine over HTTPS.

Vi delade upp denna guide i två delar för att först fokusera på installen av verktygen och komponenterna som Redmine-deploymeneten kommer att använda. Men oroa dig inte för komplexiteten. Även om du är ny på Kubernetes kommer det att vara en förståelig förklaring.

Denna guide är skriven för att vara molnagnosztikus, så vi har medvetet utelämnat alla omnämnanden av det moln vi använde. Lämna en kommentar om du kan gissa vilket moln vi använde och berätta vilken detalj som avslöjade det. Vi rekommenderar att du använder Kubernetes-tjänsten som ditt moln erbjuder, eftersom den är väl integrerad med andra tjänster som ditt moln också tillhandahåller.

Miljöer som microk8s eller minikube tas inte upp här eftersom de kräver ytterligare konfiguration som ligger utanför omfattningen av denna guide. Specifikt kräver vår HTTPS-konfiguráció att vår kluster har en offentlig IP-cím.


Låt oss använda Helm

Kubernetes är ett komplext verktyg för konténer vagy kesering. Det finns många begrepp vi behöver lära oss för att komma igång. Lyckligtvis finns det ett projekt som heter Sisak som ger den abstraktionsnivå vi behöver. I deras egna ord "Om vi ​​gjorde rätt, skulle användare kunna installera Helm och sedan inom några minuter installera komponenter av produktionskvalitet direkt ur lådan"

Utan att gå in på anledningarna till deras namn (det berättar hela historien om en metafor, Helm, Kubernetes och Containers) förenklar helm verkligen installen samtidigt som det ger utrymme att anpassa komponenten efter våra behov. Vi kommer att använda Helm 3, deras senaste och ännu enklare version.

Om du använder molnshell från din molnleverantör är det troligt att Helm 3 redan är tillgängligt, men om inte kan du installera det enligt guiden som Helm-den tillhandahåller, helm.sh/docs/intro/install/. Du måste redan ha åtkomst till ditt kluster från kommandoraden du använder. Din molnleverantör har också en guide om hur du gör det.


Installera Ingress Controller

Detta är den första komponenten vi kommer att installera i vår kluster och är också det första kubernetes-konceptet vi kommer att se. En Ingress-controller sitter vid ingångsdörren till ditt kluster, tar emot alla webbförfrågningar och omdirigerar dem till den interna komponenten som är ansvarig för att svara på förfrågan. I början kommer det inte att finnas någon redo att svara, men när vi installerar Redmine kommer det att läggas till som hu rendeltetési hely förfrågningarna.

Kubernetes tillhandahåller NGINX bemeneti vezérlő som vi kommer att använda. Deras dokumentáció förklarar hur man installerar det med hjälp av Helm:

helm repo hozzáadása ingress-nginx https://kubernetes.github.io/ingress-nginx && helm repo frissítés

sisak telepítése ingress-kontroller ingress-nginx / ingress-nginx

Det första kommandot lägger till applikationsrepository där ingress-controllern finns, medan det andra installerar den i ditt kluster. När installen är klar kommer kommandot att skriva ut information för att komma igång, inklusive hur man får den offentliga IP-adressen som tilldelats till controllern:

kubectl szolgáltatások - óra

Resultatet kommer att vara något liknande detta:

NÉV &

Skapa en DNS A-post

Nu när du har IP-adressen kan du bara gå till en webbläsare och se hur ditt kluster svarar. Självklart kommer ditt kluster att svara med ett "404 Not Found" felmeddelande eftersom ingen applikation är installerad ännu. Vi kommer att skapa en DNS-domän som vi kan associera med den IP-adressen, förhoppningsvis lättare att komma ihåg än en lista med siffror och punkter.

Sättet att skapa en internetdomän för din Redmine beror mycket på din domänleverantör, men i alla fall skapar du en DNS A-post som länkar ett domännamn med din IP-adress. Se följande skärmbild från DNS-leverantören no-ip.com som referens.

Skapar vår DNS A-post

Uppgifterna som du behöver fylla i, som du kanske förväntar dig, är domännamnet és IP-cím. No-IP är precis vad vi behöver för att illustrera skapandet av en domän, men du kommer förmodligen att välja en annan DNS-leverantör. Processen är ganska liknande i alla fall.

Det tar lite tid för den nya posten att spridas, så du kan använda ping för att kontrollera när IP-adressen har lösts korrekt:

ping redminek8s.ddns.net


Nästa steg

Nu när vi har en ingress-controller och en DNS-domän är det enda som återstår att HTTPS konfigurálás a webplats és a Redmine telepítéséhez. Vi kommer att använda PostgreSQL som vår databas, men du kommer att se hur enkelt det är att konfigurera allt med hjälp av Helm.

Håll dig uppdaterad för Redmine a Kubernetes Del 2-ben: Telepítés a Redmine-ban.

Az ultimata Redmine-upgraderingen? Enkel.

Få alla kraftfulla verktyg för perfekt projektplanering, -hantering och -kontroll i en enda programvara.

Prova Easy Redmine 30 dagar ingyenes próbaidőszakban

Fullständiga funktioner, SSL-skyddad, dagliga säkerhetskopior, i din geografiska plats