Redmine и Kubernetes - Дел 1: Предназначени милиони

6/22/2020
9 минути
Лукаш Беня.

Искам да направя комерсиална серия, която внедрява Redmine в Kubernetes. Ние изпращаме препоръки за верктиг и методи за внедряване на стабилни инстанции от Redmine през HTTPS.

Vi delade upp denna guide i två delar för att först fokusera på инсталиране на верктиген и компонентна като Redmine-deploymeneten kommer att använd. Men oroa dig inte for complexiteten. Även om du är ny på Kubernetes kommer det att vara en förståelig förklaring.

Това ръководство е скрито за това 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. Препоръчваме ви да обърнете внимание на 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 или 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-конфигурация att vår kluster har en offentlig IP-adress.


Låt oss använda Helm

Kubernetes är ett complext verktyg för контейнерно управление. Det finns många begrepp vi behöver lära oss för att komma igång. Lyckligtvis finns det ett projekt som heter Шлем som ger den abstractionsnivå 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 name (det berättar hela historien om en metafor, Helm, Kubernetes och Containers) förenklar helm verkligen installationen samtidigt som det ger utrymme att anpassa komponentn efter våra behov. В съобщението ви се появи Helm 3, последната версия и новата версия.

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-dokumentationen 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.


Инсталирайте Ingress Controller

Това е първият компонент, който инсталирате на коммерция, и вашият клъстер е också на първия kubernetes-концепт на коммерцията. 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 en дестинация за förfrågningarna.

Kubernetes tillhandahåller NGINX Contress Controller som vi kommer att använda. Deras документация, изготвена за инсталиране на човек с помощта на Helm:

helm repo добавете ingress-nginx https://kubernetes.github.io/ingress-nginx && helm repo update

helm инсталирате входящ контролер ingress-nginx / ingress-nginx

Първата команда е оставена до хранилище за приложения, за да бъде включен контролерът за вход, но друг инсталиращ инструмент е в този клъстер. När installationen är klar kommer kommandot att skriva ut information for att komma igång, inklusive hur man får den offentliga IP-adressen som tilldelats till controller:

kubectl получите услуги - гледайте

Resultatet kommer att vara något liknande detta:

НАМН &

Скапа и DNS A-post

Nu när du har IP-adressen kan du bara go 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 application är instalerad ä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 list 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 IP-адрес. Se följande skärmbild från DNS-leverantören no-ip.com so referencs.

Skapar vår DNS A-post

Uppgifterna som du behöver fylla i, som du kanske förväntar dig, är домейн и IP адрес. No-IP е прецизно 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 östs korekten:

ping redminek8s.ddns.net


Nästa steg

Сега вече нямате входен контролер и DNS домейнът е край на претърсвания адрес конфигурира HTTPS за различни уеб платове и инсталира Redmine. Ако потребителят използва PostgreSQL като различни бази данни, хората, които изпращат съобщение, трябва да бъдат конфигурирани всички с помощта на Helm.

Håll dig updaterad for Redmine в Kubernetes Del 2: Инсталиране на Redmine.

Последно надграждане на Redmine? Enkel.

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

Prova Easy Redmine в 30 дни безплатен период на изпробване

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