Redmine mot Kubernetes - första gången 2: Installera Redmine

6/30/2020
8 minuter
Lukáš Beňa.

Toto je druhá část serie o nasazení Redmine do Kubernetes. V tomto článku poskytneme pokyny, jak nasadit spolehlivous instalaci Redmine.

Počítání části 1

Du har installerat Redmine på Kubernetes. Přece jenom, kvůli tomu jste přišli, že ano?

V Redmine på Kubernetes - första gången: Příprava prostředí jsme nainstalovali Ingress Controller, komponent för att skapa en internetförsörjning av uvnitř vašeho clusteru, en vytvořili jsme DNS-domenu redminek8s.ddns.net. Nytt är jen potřebujeme nakonfigurovat HTTPS och jsme připraveni nasadit Redmine.


HTTPS:s certifikathanterare

Jag když bychom mohli ponechat náš Redmine jako HTTP, HTTPS är standard för webben stránky, takže většina prohlížečů vás varuje o bezpečnostních problémech, pokud HTTPS není používáno.

När HTTPS är tillgängligt är det ingen trivialní úkol, protože musíte koupit certifikát a nahrát ho na svůj web, obnovovat ho po určité době en opakovat Celý process. Cert-manager automatizuje všechno toto, včetně obnovy certifikátů och dokonce získává zdarma certifikáty. Vice informací naleznete na jejich stránkách, ale vše, co potřebujete vědět, vám vysvětlím níže.


Installera cert-manageru

Pro instalaci cert-manageru och vašem clusteru proveďte následující kroky:

rodret repo lägg till jetstack https://charts.jetstack.io && helm repo-uppdatering

helm install cert-manager jetstack / cert-manager - set installCRDs = true

Nejprve přidáte repozitář, kde se cert-manager nachází, en poté nainstalujete jeho nejnovější verzi.


Připojení k certifikační autoritě

Nyní musíme instruovat cert-manager, aby se připojil k certifikačnímu poskytovateli, kterého si vybereme. Použijeme LetsEncrypt, bezplatnou certifikatční autoritu. Nejprve vytvořte tento soubor (nezapomeňte nahradit skutečnou e-mailovou adresou) a pojmenujte ho cluster-issuer.yaml

Apiversion: cert-manager.io/v1alpha2

typ: ClusterIssuer

Metadata:

  namn: letsencrypt

spec:

  höjdpunkt:

    server: https://acme-v02.api.letsencrypt.org/directory

    e-post:

    PrivateKeysCretref:

      namn: letsencrypt

    lösare:

    - http01:

        inträde:

          klass: nginx

Poté ho aplikujte na svůj kluster pomocí

kubectl applicera -f cluster-emittent.yaml

Blahopřejeme! Soubor výše je první konfigurace Kubernetes, kterou píšeme a aplikujeme na cluster. Možná jste si všimli, že ukazuje, jak se připojit k LetsEncrypt, ale také popisuje Ingress Controller, který jsme vytvořili v části 1 (Třída: nginx na konci) Tento typ konfigurace má některé meřenzami, akteré meřizami ch vlastností na jiných. Tyto mezery ponechte tak, jak jsou, abyste zajistili, že soubor bude správně přečten a aplikován.

Nytt kluster för HTTPS. Kdykoli nainstalujeme aplikaci, můžeme ji instruovat, aby pracovala s HTTPS a voilà! Celý process získání certifikátu bude automaticky proveden pozadu.


Installera Redmine

Till jsme všichni čekali. Redmine můžeme nainstalovat několika způsoby, ale nejpohodlnější způsob je použít Helm. Nejprve přidáme repozitář, kde se Redmine nachází, stejně jako jsme již dělali dříve.

helm repo lägg till bitnami https://charts.bitnami.com/bitnami && helm repo-uppdatering

En tentokrát místo instalace ihned vytvoříme konfigurační soubor, abychom určili některé vlastní chování, které chceme, aby Redmine měl.

Všechny konfigurace rozdělíme do vlastní sekce, ale všechny je uložíme do stejného souboru, jeden po druhém. Soubor pojmenujeme values.yaml.

Všechny aplikace Helm mají soubor values.yaml s všemi možnými konfiguracemi, které lze provést na aplikaci. Když vytvoříme vlastní values.yaml, definujeme změny, které chceme. Jakákoliv hodnota, kterou nezahrneme do našeho souboru, zůstane tak, jak je v souboru s výchozími hodnotami.

Všechny výchozí hodnoty lze také najít na stránce aplikace Helm, https://hub.helm.sh/charts/bitnami/redmine. Jděte and zkontrolujte všechny configurace.


První uživatel Admin

REDMINEUSERNAME: ADMINUSER

RedminePassword:

Tento krok je stejně nutný jako snadno pochopitelný. Je to náš první uživatel v Redmine, ten, kterého použijeme k přihlášení poprvé.

För instalaci Redmine budete moci s tímto uživatelem přistupovat k nové instalaci a configurovat ji.


Databasera PostgreSQL

Výchozí instalace pomocí Helm vyžaduje vytvoření databáze mariadb. Místo toho však nakonfigurujeme naši instalaci tak, aby používala PostgreSQL. Musíte také přidat alespoň heslo k této databázi, jak můžete vidět níže.

DatabaseType: PostgreSQL

Mariadb:

  aktiverad: falsk

PostgreSQL:

  aktiverad: sant

  postgresqlDatabas: Redmine

  postgresql Användarnamn: Redmine

  postgresqlPassword:

Musíme explicitně říci naší instalaci, že nechceme, aby byla spolu s configurací pro databázi PostgreSQL instalována také MariaDB.


Konfigurera DNS jména

Následující konfigurace är druhou stranou DNS konfigurace, kterou jsme provedli v části 1. Jak můžete vidět, povolujeme TLS, protokol för HTTPS, ett nastavujeme värdnamn, který jsme použili při vythoremuření záš

inträde:

  aktiverad: sant

  certManager: sant

  värdnamn: redminek8s.ddns.net

  tls: sant

  annoteringar:

    kubernetes.io/ingress.class: nginx

    Cert-manager.io/cluster-issuer: LETSENCRYPT

Také v posledních dvou řádcích propojíme naši aplikaci s Ingress Controllerem as Cluster Issuerem, který jsme vytvořili dříve.

Nya můžeme nasadit Redmine s naší vlastní konfigurací:

helm installera Redmine -f Values.yaml bitnami / redmine

Tento řádek je podobný jiným řádkům helminstallation, které jsme použili dříve, ale tentokrát poskytujeme vlastní values.yaml. To je způsob, jak přizpůsobit jakoukoli aplikaci Helm.

Stále potřebujeme trochu trpělivosti, protože vytvoření aplikace trvá nějakou dobu. Můžete spustit tento příkaz, abyste zkontrolovali stav kontejnerů vaší aplikace:

kubectl få skidor - klocka

Příkaz vrátí něco podobného tomuto:

NAMN KLAR STATUS ÅTERSTART Åldern

. . .

redmine-999c68dd9-x7h2k    1/1     Running   0          6m40s

redmine-postgresql-0 1/1 Running 0 6m40s

Musíte počkat, dokud stav obou kontejnerů nebude Running a všechny budou připraveny 1/1, což mi v mém případě trvalo asi 6 minut.

Nyligen är det möjligt att göra det på ett nytt sätt att installera:

Redmine är připraven


Záver

Kubernetes je složitý nástroj pro nasazení aplikací, ale s pomocí Helmu (bez nadsázky) jsme se v této složitosti zorientovali a nasadili spolehlivivou instalaci Redmine.

Shrnutí tohoto návodu naleznete v následujícím git repozitáři: https://github.com/lcofre/redmine-on-k8s. Pokud se zaseknete, neváhejte porovnat s vašimi soubory.

Nätverkskonceptet med diskuse, protože byly složité nebo vysvětlení bylo specifické pro moln. Mezi nimi jsou Liveness a Readiness vaší aplikace, konfigurace příchozích e-mail eller škálování pro zvládání většího zatížení. Prosím, dejte nám vědět, co vás nejvíce zajímá, abychom to mohli diskutovat v budoucím návodu.

Nejlepší uppgradera Redmine? Snadné.

Získejte všechny mocné 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ě.