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

6/22/2020
9 minut
Łukasz Beňa.

I denna tvådelade serie kommer vi att implementera Redmine i Kubernetes. Vi kommer att använda recommenderade verktyg orch metoder med målet att implementera en solid instans av Redmine över 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. Mężczyźni oroa dig inte för kompleksiteten. Ę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 molnagnostisk, 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å Tilhandahåller.

Miljöer som microk8s lub minikube tas inte upp här eftersom de kräver ytterligare konfiguracja za pomocą ligger utanför omfattningen av denna Guide. Specifikt kräver vår Konfiguracja HTTPS att vår kluster har en offentlig adres IP.


Låt oss använda Helm

Kubernetes är ett komplext verktyg för kontenerorkestring. Det finns många begrepp vi behöver lära oss för att komma igång. Lyckligtvis finns det ett projekt som heter Ster 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 Until deras namn (det berättar hela historien om en metafor, Helm, Kubernetes och Containers) förenklar helm Verkligen instalacji samtidigt som det ger utrymme att anpassa komponenten efter våra behov. Vi kommer att använda Helm 3, deras senaste och ännu enklare wersja.

Om du använder molnshell från din molnleverantör är det troligt att Helm 3 redan är dollgängligt, men om inte kan du installera det enligt Guiden som Helm-dokumentationen dohandahåller, Helm.sh/docs/intro/install/. Du måste redan ha åtkomst do ditt klaster från kommandoraden du använder. Din molnleverantör har också en Guide om hur du gör det.


Instalator kontrolera wejścia

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 do ditt kluster, tar emot alla webbförfrågningar och omdirigerar dem do 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 do som w miejscu docelowym förfrågningarna.

Kubernetes dohandahåller Sterownik Ingress NGINX som vi kommer att använda. Deras dokumentation förklarar hur man installerar det med hjälp av Helm:

repozytorium sterów dodaje ingress-nginx https://kubernetes.github.io/ingress-nginx Aktualizacja repozytorium sterów &&

ster instaluje ingress-controller ingress-nginx / ingress-nginx

Det första kommandot lägger do repozytorium aplikacji där ingress-controllern finns, medan det andra installerar den i ditt kluster. När installen är klar kommer kommandot att skriva ut informacje dla att komma igång, inklusive hur man får den offentliga adresów IP, które są przypisane do kontrolera:

kubectl uzyskać usługi - zegarek

Wynik kommer att vara något liknande detta:

NAZWA &

Przejdź do postu A DNS

Nu när du har adres IP kan du bara gå do en webbläsare och se hur ditt kluster svarar. Självklart kommer ditt klaster 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-adresen, förhoppningsvis lättare att komma ihåg än en lista med siffror och punkter.

Sättet att skapa en internetdomän for 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 adres IP. Se följande skärmbild från DNS-leverantören no-ip.com z odniesieniami.

Skapar vår DNS A-post

Uppgifterna som du behöver fylla i, som du kanske förväntar dig, är domännamnet i adres IP. No-IP to precis vad vi behöver for att ilustrera 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 can använda ping for att kontrollera när IP-addressen har lösts korrekt:

pinguj 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 Skonfiguruj HTTPS dla platform internetowych i instalatorów Redmine. Vi kommer att använda PostgreSQL som vår database, men du kommer att se hur enkelt det är att konfigurera allt med hjälp av Helm.

Håll dig uppdaterad för Redmine w Kubernetes Del 2: Instalacja przez Redmine.

Den ultimata Redmine-uppgraderingen? Enkla.

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

Prova Easy Redmine w okresie 30 dni za darmo

Pełna funkcja, SSL-skyddad, dagliga säkerhetskopior, na platformach geograficznych