Redmine i Kubernetes - Del 2: Installer 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.