Redmine i Kubernetes - Del 2: Installer Redmine

6/30/2020
8 minutter
Lukáš Beňa -> Lukáš Beňa
Aceasta este a doua parte a seriesi despre implementarea Redmine in Kubernetes. I acest articol, vom oferi instrucțiuni despre cum să implementați o instalare fiabilă a Redmine.

Genfortælling af del 1

Până acum, cu siguranță aștepți cu nerăbdare instalarea Redmine på Kubernetes. Acesta este motivul pentru care ai venit, nu-i așa?

i Redmine i Kubernetes - Del 1: Forberedelse af miljø, er installeret Ingress Controller, en komponent, der er omdirigeret til internettet i en indvendig clusterului tău, og jeg er oprettet en domeniu DNS, redminek8s.ddns.net. Acum trebuie skal konfigurere HTTPS og suntem pregătiți să implementăm Redmine.


HTTPS cu cert-manager

Deși er putea păstra Redmine-ul nostru for HTTP, HTTPS en devenit standard pentru site-uri web, atât de mult încât majoritateaa browsereeller at avertizează cu privire la o problemă desecuritate atunci cand un site nu useazăă.

De obicei, aktiverer HTTPS nu este o sarcină trivială, deoarece trebuie să cumperi un certificat și să-l încarci pe site-ul tău, să-l reînnoiești după un anumit timp ȃi proces ul. Cert-manager automatiserer acestea, inklusiv reînnoirea-certifikat eller gratis certifikat. Poți vedea mai multe informații pe deres hjemmeside, dar îți voi explica tot ce trebuie să știi în continuare.


Installer cert-manager

Udfør værktøjet til at installere en cert-manager i en gruppe:

roret repo tilføj jetstack https://charts.jetstack.io && roret repo-opdatering

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

Mai întâi adaugi depozitul unde se află cert-manager, apoi instalezi ultimata sa versiune.


Conectare la Autoritatea de Certificare

Acum trebuie să instruim cert-manager să conecteze la furnizorul de certificate pe care îl alegem. Vom folosi LetsEncrypt, eller autoritation af certifikat gratis. Creează mai întâi acest fișier (nu uita să înlocuiești cu o adresse på e-mail reală) și numește-l cluster-issuer.yaml

apiVersion: cert-manager.io/v1alpha2

slags: ClusterIssuer

metadata:

  navn: letsencrypt

spec:

  acme:

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

    e-mail:

    privateKeySecretRef:

      navn: letsencrypt

    løsere:

    - http01:

        indtrængning:

          klasse: nginx

Aplică-l apoi în clusterul tău cu

kubectl anvende -f klyngeudsteder.yaml

Felicitări! Fișierul de mai sus este prima configurație Kubernetes pe care o scriem și o aplicăm în cluster. Poate ai observat că arată cum să te conectezi la LetsEncrypt, dar beskrivelse și Ingress Controller-ul pe care l-am creat în Partea 1 (klasse: nginx la sfârșit). Acest tip de configurație er câteva linii cu spații pentru a indica dependența unor proprietăți de altele. Păstrează aceste spații așa cum sunt prezentate pentru a te asigura că fișierul este citit și aplicat corect.

Acum clusterul tău este aktiverer til HTTPS. Ori de câte ori instalăm o aplicație, eller putem instrui să funcționeze cu HTTPS și voilà! Întregulation process de obținere and certificatului va fi realisat automat în spatele scenei.


Installer Redmine

Aceasta este ceea ce am asteptat cu totii. Installer Redmine på flere måder, så du kan bruge den til Helm. Asa cum am facut deja, mai intai adaugam depozitul unde se afla Redmine

roret repo tilføj bitnami https://charts.bitnami.com/bitnami && roret repo-opdatering

Når de data aceasta, i loc til instalati imediat, vom oprette en Fisier de configurare, pentru en indikation af comportament personalisat pe care dorim sa-l aiba Redmine.

Vom separa toate konfigureret i propria lor sectiune, dar le vom pune toate in acelasi fisier, unul dupa altul. Numele fisierului va fi værdier.yaml.

Toate aplicatiile Helm au un fisier values.yaml cu toate configurarile posibile care pot fi facute pentru aplicatie. Cand cream propriul values.yaml, definim modificarile pe care le dorim. Orice valoare pe care nu o includem i fisierul nostru va fi lasata asa cum este in fisierul implicit.

Toate valorile implicit pot fi gasite si pe pagina aplicatiei Helm, https://hub.helm.sh/charts/bitnami/redmine. Verificati toate konfigurerbar.


Primul utilizator Admin

RedmineUsnavn: adminUser

RedminePassword:

Acest pas este la fel de necesar ca si usor de inteles. Este primul nostru utilizator pe Redmine, cel pe care il vom folosi pentru and ne conecta pentru prima data.

Cand Redmine er installeret, kan bruges til at bruge den til en konfiguration af installationsområdet.


Dato for PostgreSQL

Implicit, instalarea noastra Helm va necesita crearea unei baze de date mariadb. I skimb, vom configura instalarea noastra sa foloseasca PostgreSQL. Trebuie sa adaugati cel putin o parola pentru a accesa aceasta baza de date, asa cum puteti vedea mai jos

database type: postgresql

mariadb:

  aktiveret: falsk

PostgreSQL:

  aktiveret: sandt

  postgresqlDatabase: Redmine

  postgresqlUsnavn: Redmine

  postgresqlPassword:

Trebuie sa spunem eksplicit instalarii noastre ca nu dorim ca MariaDB sa fie instalat impreuna cu configurarea pentru baza de date PostgreSQL.


Konfigurer DNS-numre

Konfiguration af maj er este partea cealaltă og configurării DNS pe care am făcut-o în Partea 1. După cum puteți vedea, activăm TLS, protokol din spatele HTTPS, și setăm numele gazdeiăm numele gazdei pe caren la-reacit

indtrængning:

  aktiveret: sandt

  certManager: sandt

  værtsnavn: redminek8s.ddns.net

  tls: sandt

  anmærkninger:

    kubernetes.io/ingress.class: nginx

    cert-manager.io/cluster-issuer: letsencrypt

De asemenea, în ultimele două linii legăm aplicația noastră cu Controlerul Ingress și cu Emitentul Cluster pe care l-am creat anterior.

Acum putem implementa Redmine cu configurația noastră personalizată:

rorinstallere Redmine -f Values.yaml bitnami / redmine

Această linie este lignendeă cu alte linii helm install pe care le-am folosit anterior, dar de data aceasta furnizăm un values.yaml personalisat. Acesta este modul for en personlig orice applikation Helm.

Mai avem nevoie de puțină răbdare, deoarece crearea aplicației durează ceva timp. Puteți executa această commandă pentru a verifica starea containereor aplicației:

kubectl få pods - ur

Comanda va returna ceva lignende cu acesta:

NAVN KLAR STATUS OMSTARTER ALDER

. . .

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

redmine-postgresql-0 1/1 Løb 0 6m40s

Trebuie să așteptați până când starea ambelor containere este Running și toate sunt pregătite 1/1, ceea ce în cazul meu a vare aproximativ 6 minute.

Acum totul este pregătit pentru a deschide browserul și a merge la noua noastră implementare:

Redmine este pregătit


Konklusion

Kubernetes este o unealtă complexă pentru a implementa aplicații, dar am navigat prin acea complexitate cu ajutorul lui Helm (fără joc de cuvinte) și er implementat or instalare fiabilă a Redmine.

Puteți găsi un rezumat al acestui ghid în următorul depozit git: https://github.com/lcofre/redmine-on-k8s. Nu ezitați să comparați cu fișierele dvs. dacă întâmpinați problem.

Am lăsat unele concepte din discuție pentru că erau complexe sau explicația æra specifică pentru cloud. Printre acestea se numără Liveness și Readiness a aplicației dvs., configurarea mesajelor primite și scalarea pentru a gestiona mai multe încărcări. Vă rugăm să ne spuneți mai jos ce vă interesează cel mai mult, astfel încât să putem discuta despre acestea într-un ghid viitor.

Aktualisere endelig Redmine? Ușoară.

Obțineți toate instrumentele puternice pentru planificarea, gestionarea og controlul perfect al proiectelor într-un singur software.

Încercați Easy Redmine în 30 de zile de încercare gratuită

Complete funktioner, beskyttet SSL, backup-uri zilnice, i geolokalisering dvs.