Redmine v Kubernetes – Část 1: Příprava prostředí

6/22/2020
6 minuter
Lukáš Beňa.
V této dvoudílné sérii nasadíme Redmine do Kubernetes. Budeme používat doporučené nástroje a postupy s cílem nasadit odolnou instanci Redmine přes HTTPS.

Rozdělili jsme tento návod na dvě části, abychom se nejprve zaměřili na instalaci nástrojů a komponent, které bude Redmine využívat. Ale nemusíte se obávat složitosti. I když jste noví v Kubernetes, bude to srozumitelné vysvětlení.

Tento průvodce byl napsán tak, aby byl nezávislý i moln, takže jsme úmyslně vynechali všechny zmínky o použitém cloudu. Zanechte komentář, pokud uhodnete, jaký cloud jsme použili, a řekněte nám, jaký detalj till prozradil. Doporučujeme vám použít službu Kubernetes, kterou váš cloud nabízí, protože je dobře integrována s dalšími službami, které váš cloud také poskytuje.

Prostředí jako microk8s nebo minikube zde nejsou zvažována, protože vyžadují nějakou další konfiguraci, která spadá mimo rozsah tohoto průvodce. Zejména naše konfigurera HTTPS vyžaduje, aby náš kluster měl veřejnou IP-adress.


Použijme Helm

Kubernetes är složitý nástroj pro orchestraci kontejnerů. Existuje mnoho konceptů, které musíme naučit, abychom začali. Naštěstí pro nás existuje project jménem Helm, který poskytuje úroveň abstrakce, kterou potřebujeme. Podle jejich vlastních slov "Pokud jsme udělali věci správně, uživatelé av mohli nainstalovat Helm a během několika minut instalovat komponenty s produkční kvalitou."

Opomíjejíce důvody pro jejich jména (všechno to vypráví příběh metafory, Helmu, Kubernetesu a kontejnerům), ror opravdu zjednodušuje instalaci a zároveň umožňuje přizpůsobit komponentu našim potřebám. Budeme používat Helm 3, jejich nejnovější a ještě jednodušší verzi.

Pokud používáte cloudovou konzoli vašeho poskytovatele cloudu, je pravděpodobné, že je Helm 3 již k dispozici, ale pokud ne, můžete ho nainstalovat podle průvodce, který poskytují dokumenty Helm, helm.sh/docs/intro/install/. Musíte mít již přístup k vašemu clusteru z příkazové řádky, kterou používáte. Váš poskytovatel cloudu má také průvodce, jak to udělat.


Nainstalujte Ingress Controller

Toto je první komponenta, kterou nainstalujeme do našeho clusteru a je take prvním conceptem kubernetes, který uvidíme. Ingångskontroller sedí u vstupních dveří vašeho clusteru, přijímá všechny webove požadavky and přesměrovává je en interní komponentu zodpovědnou za zodpovězení požadavku. Původně nebude nikdo připraven odpovídat, ale když nainstalujeme Redmine, bude přidán jako cíl pro požadavky.

Kubernetes poskytuje NGINX Ingress Controller, který použijeme. Visa dokument, jak ho nainstalovat pomocí Helm:

helm repo lägg till ingress-nginx https://kubernetes.github.io/ingress-nginx && helm repo-uppdatering

helm installera ingress-controller ingress-nginx / ingress-nginx

První příkaz přidá repozitář aplikací, kde se nachází ingångskontroller, zatímco druhý ho nainstaluje do vašeho clusteru. Po dokončení příkazu se vytisknou některé informace, jak začít, včetně toho, jak získat veřejnou IP adresu přiřazenou k controlleru:

kubectl få tjänster - klocka

Výsledek bude podobný tomuto:

NAMN TYP CLUSTER-IP EXTERN-IP PORT (S) ÅLDER

nginx-controller LoadBalancer 10.0.115.117 89.68.23.33 80 / TCP, 443 / TCP 5m22s

controller-tillträde ClusterIP 10.0.135.226 443 / TCP 5m22s

kubernetes ClusterIP 10.0.0.1 443 / TCP 44h

Zaznamenejte EXTERNAL-IP, protože ji budeme potřebovat in dalším kroku. Může se stát, že místo IP adresy získáte hodnotu . Trvá nějakou dobu, než moln získá veřejnou IP adresu a přiřadí ji k vašemu clusteru. Počkejte par sekund a IP by měla být k dispozici.


Vytvoření DNS záznamu A

Ny, když máte IP-adress, můžete jít do prohlížeče a zjistit, jak váš cluster odpovídá. Samozřejmě, pokud ještě není nainstalována žádná aplikace, váš cluster odpoví chybou "404 Not Found". Vytvoříme DNS doménu, kterou můžeme přiřadit k této IP-adress, snadněji si ji zapamatujete než seznam čísel a teček.

Ladda ner internet för hemmet på Redmine výrazně závisí na vašem poskytovateli domén, ale ve všech případech vytvoříte DNS záznam A, který propojí název domény s vaší IP adresou. Jako referenci si můžete prohlédnout následující snímek obrazovky od poskytovatele DNS no-ip.com.

Vytváření našeho DNS záznamu A

Data, která musíte vyplnit, jsou ange DNS och IP-adress. No-IP je přesně till, co potřebujeme k ilustraci vytvoření domény, ale pravděpodobně och vyberete jiného poskytovatele DNS. Proces är však v podstatě stejný u všech z nich.

Trvá nějakou dobu, než se nový záznam rozšíří, takže můžete použít příkaz ping k ověření, zda se IP-adress správně přeložila:

ping redminek8s.ddns.net


Nästa steg

Nytt, když máme kontrollerar för att göra en DNS-domenu, säkra din nakonfigurera HTTPS för naše stránky och nainstalovat Redmine. Jako databázi použijeme PostgreSQL, ale uvidíte, jak snadné je vše nakonfigurovat pomocí Helm.

Zůstaňte naladěni na Redmine v Kubernetes nästa 2: Installera Redmine.

Den ultimata uppgraderingen av Redmine? Snadné.

Získejte všechny výkonné nástroje pro dokonalé plánování, řízení a kontrollu projectů v jednom softwaru.

Vyzkoušejte Easy Redmine på 30 dagar

Kompletní funkce, chráněno protokolem SSL, denní zálohování, veší lokalitě.