Redmine w Kubernetes - Partea 2: Instalarea Redmine
Relacja z części 1
Până acum, cu siguranță aștepți cu nerăbdare instalarea Redmine pe Kubernetes. Acesta este motivul pentru care ai venit, nu-i așa?
w Redmine in Kubernetes - Część 1: Przygotowanie środowiska, instaluję Ingress Controller, un component pentru redirecționarea cererilor de internet in interiorul clusterului tău, și am creat un domeniu DNS, redminek8s.ddns.net. Uzyskaj dostęp do konfiguracji HTTPS, a następnie zaimplementuj Redmine.
Menedżer certyfikatów HTTPS cu
Deși am putea păstra Redmine-ul nostru ca HTTP, HTTPS devenit standardul pentru site-uri web, atât de mult încât majoritatea browserelor te avertizează cu privire la o problemă de securitate atunci când un site nu usează HTTPS.
De obicei, activarea 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 să repeți procesl. Cert-manager automatizează toate acestea, inclusiv reînnoirea certificatelor și chiar obținerea de certificate gratuite. Poți vedea mai multe informații pe ich strona internetowa, dar îți voi exlica tot ce trebuie să știi în continuare.
Zainstaluj menedżera certyfikatów
Wykonaj următorii pași pentru a instala cert-manager w klastrze tău:
repozytorium sterów dodaje jetstack https://charts.jetstack.io Aktualizacja repozytorium sterów &&
helm install cert-manager jetstack / cert-manager --set installCRDs = true
Mai întâi adaugi depozitul unde se află cert-manager, apoi instalezi ultima w wersji.
Conectare la Autoritatea de Certificare
Acum trebuie să instruim cert-manager să se conecteze la furnizorul de certificate pe care îl alegem. Vom folosi LetsEncrypt lub autorytatywny certyfikat za darmo. Creează mai întâi acest fișier (nu uita să înlocuiești cu o adresă de e-mail reală) și numește-l cluster-issuer.yaml
Wersja api: cert-manager.io/v1alpha2
rodzaj: ClusterIssuer
metadane:
nazwa: letsencrypt
specyfikacja:
kulminacja:
server: https://acme-v02.api.letsencrypt.org/directory
e-mail:
prywatnyKeySecretRef:
nazwa: letsencrypt
solwery:
- http01:
ingres:
klasa: nginx
Aplică-l apoi în Clusterul tău cu
kubectl stosuje -f klaster-emiter.yaml
Powodzenia! Fișierul de mai sus este prima configurație Kubernetes pe care o scriem și o aplicăm w klastrze. Poate ai obserwacja că arată cum să te conectezi la LetsEncrypt, dar descrie și Ingress Controller-ul pe care l-am creat în Partea 1 (klasa: nginx la sfârșit). Acest tip de configurație are 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 jest aktywowany przez HTTPS. Możesz to zrobić lub zainstalować aplikację, lub umieścić instrukcję w funkcji HTTPS i voilà! Întregul proces de obținere a certificatului va fi realizat automat în spatele scenei.
Instalacja Redmine
Aceasta este ceea ce am asteptat cu totii. Zainstaluj Redmine w wielu modach, dzięki czemu możesz cieszyć się estetyką Helm. Asa cum am facut deja, mai intai adaugam depozitul unde se afla Redmine
repozytorium sterów dodaj bitnami https://charts.bitnami.com/bitnami Aktualizacja repozytorium sterów &&
Dar de data aceasta, in loc sa installati inmediat, vom crea un fisier de configurare, pentru a indica un comportament personalizat pe care dorim sa-l aiba Redmine.
Vom separa toate configurarile in propria lor sectiune, dar le vom pune toate in acelasi fisier, unul dupa altul. Numele fisierului va fi wartości.yaml.
Toate aplicatiile Helm au un fisier values.yaml cu toate configurarile posibile care pot fi facute pentru aplicatie. Cand cream propriul values.yaml, definit modificarile pe care le dorim. Orice valoare pe care nu o includem in fisierul nostru va fi lasata asa cum este in fisierul implicit.
Toate valorile implicite pot fi gasite si pe pagina aplicatiei Helm, https://hub.helm.sh/charts/bitnami/redmine. Weryfikacja konfiguracji.
Główny administrator utylizatora
Redmine Nazwa użytkownika: adminUser
RedminePassword:
Acest pas este la fel de necesar ca siusor de inteles. Este primul nostru utilizator pe Redmine, cel pe care il vom folosi pentru a ne conecta pentru prima data.
Cand Redmine jest instalowany, można uzyskać dostęp do aplikacji z dostępem do narzędzia, które umożliwia konfigurację obszaru instalacyjnego dumneavoastra.
Baza danych PostgreSQL
Implicit, instalarea noastra Helm va necesita crearea unei baze de date mariadb. W schimb, vom configura installarea noastra sa foloseasca PostgreSQL. Trebuie sa adaugati cel putin o parola pentru a accesa aceasta baza de date, asa cum puteti vedea mai jos
DatabaseType: postgresql
mariadb:
włączone: fałsz
postgresql:
włączone: prawda
postgresqlBaza danych: Redmine
postgresqlNazwa użytkownika: Redmine
postgresqlPassword:
Trebuie w trybie jawnej instalacji, które można znaleźć w bazie danych MariaDB, aby zainstalować impreuna cu configurarea bazy danych PostgreSQL.
Skonfiguruj obszar numerów DNS
Configurarea de mai jos este partea cealaltă a configurării DNS pe care am făcut-o în Partea 1. După cum puteți vedea, activăm TLS, protocolul din spatele HTTPS, și setăm numele gazdei pe care l-am folosit la crearea înregistrării noastre DNS :
ingres:
włączone: prawda
certManager: prawda
nazwa hosta: redminek8s.ddns.net
tls: prawda
adnotacje:
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: Letencrypt
De asemenea, w ultimele două linii legăm aplicația noastră cu Controlerul Ingress și cu Emitentul Cluster pe care l-am creat anterior.
Zastosowano tę implementację Redmine cu konfigurația noastră personalizată:
ster instaluje Redmine -f values.yaml bitnami / redmine
Această linie este podobne cu alte linii helm install pe care le-am folosit anterior, dar de data aceasta furnizăm un values.yaml personalizat. Acesta este modul de personaliza orice aplicație Helm.
Mai avem nevoie de puțină răbdare, deoarece crearea aplicației durează ceva timp. Puteți executa această comandă pentru a verifica starea Containerelor aplicației:
kubectl dostać strąki - zegarek
Comanda va returna ceva podobne cu acesta:
IMIĘ IMIĘ GOTOWY STATUS WZNOWUJE WIEK
. . .
redmine-999c68dd9-x7h2k 1/1 Running 0 6m40s
redmine-postgresql-0 1/1 Bieganie 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 durat aproximativ 6 minut.
Acum totul este pregătit pentru a deschide Browsel și a merge la noua noastră implementare:
Redmine este pregătit
Konkluzja
Kubernetes este o unealtă complexă pentru aimplementa aplicații, dar am navigat prin acea complexitate cu ajutorul lui Helm (fără joc de cuvinte) și am implementat o 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 probleme.
Am lăsat unele concepte din discuție pentru că erau complexe sau objaśnienia specyficzne dla epoki 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.
Zaktualizuj ostateczną wersję Redmine? Ușoară.
Obțineți toate instrumentele puternice pentru planificarea, gestionarea și controlul Perfect al proiectelor într-un singur software.