Redmine w Kubernetes - Część 1: Pregătirea mediului.

6/22/2020
6 minut
Lukáš Beňa -> Lukáš Beňa
În această serie în două părți, vom implementa Redmine în Kubernetes. Vom folosi instrumente și practici recomandate cu scopul de aimplementa o instanță rezistentă de Redmine peste HTTPS.

Am împărțit acest ghid în două părți pentru a ne concentra mai întâi pe instalarea instrumentelor și komponentelor pe care le va folosi implementarea Redmine. Dar nu vă faceţi griji cu privire la complexitate. Chiar dacă sunteți nou în Kubernetes, va fi o explicație ușor de înțeles.

Acest ghid a fost scris pentru a fi agnostyk la nor, Așa că am lăsat intenționat toate mențiunile despre norul pe care l-am folosit. Lăsați un comentariu dacă puteți ghici norul pe care l-am folosit și spuneți-ne ce detaliu va dat de gol. Vă recomandăm să utilizați serviciul Kubernetes pe care îl oferă norul dvs., deoarece este bine integrat cu alte servicii pe care norul dvs. le oferă, dar nu sunt luate în Considerare mediile precum microk8s sau minikube, deoarece necesită o configurare suplimentară care depășește domeniul de aplicare al acestui ghid. În special, configurarea noastră HTTPS necesită ca Clusterul nostru să aibă o adresă IP publică.


Sa folosim Helm

Kubernetes este o unealtă complexă pentru pojemnik na orkiestrę. Există multe concepte pe care trebuie să le învățăm pentru a începe. Din fericire, egzystencja un proiect numit Ster care oferă nivelul de abstractizare de care avem nevoie. În cuvintele lor „Dacă am făcut lucrurile corect, utilizatorii ar putea instala Helm și apoi în câteva minute să instaleze componente gata de producție”.

Lăsând la o parte motywle pentru numele lor (toate spun povestea unei metafore, Helm, Kubernetes și containere), Helm simplifică cu adevărat obszar instalacji permițând în același timp personaliarea Componentei în funcție de nevoile noastre. Vom folosi Helm 3, ostatnia wersja może być prosta.

Dacă utilizați shell-ul norului furnizorului dvs. de nor, istnieć șanse ca Helm 3 să fie deja disponibil, dar dacă nu, îl puteți instala urmând ghidul oferit de documentația Helm, Helm.sh/docs/intro/install/. Trebuie sa aveți dostęp do klastra dvs. din linia de comandă pe care o utilizați. Udostępnij dvs. de ani are și un ghid despre cum să faceți asta.


Instalați controllerul Ingress

Acesta este primul component pe care îl vom instala în clusterul nostru și este, de asemenea, primul concept Kubernetes pe care îl vom vedea. Un controller Ingress se află la ușa de intrare a clusterului dvs., primește toate cererile web și le redirecționează către componenta internă responsabilă de răspunsul la cerere. Inițial, nu va fi nimeni pregătit să răspundă, dar când instalăm Redmine, acesta va fi adăugat ca destinație pentru cereri.

Oferta Kubernetes Kontroluj Ingress NGINX pe care îl vom folosi. Dokumentacja lub objaśnienie cum să-l instalați folosind Helm:

repozytorium sterów dodaje ingress-nginx https://kubernetes.github.io/ingress-nginx Aktualizacja repozytorium sterów &&

ster instaluje ingress-controller ingress-nginx / ingress-nginx

Prima comandă adaugă depozitul de aplicații în care se află controlerul Ingress, în timp ce a doua îl instalează în Clusterul dvs. Când ați terminat, comanda va afișa unele informații pentru a începe, inclusiv cum să obțineți adres IP publică atribuită controlerului:

kubectl uzyskać usługi - zegarek

Rezultatul va fi ceva podobne cu acesta:

NAZWA TYP KLASTER-IP PORT (y) ZEWNĘTRZNEGO IP WIEK

LoadBalancer 10.0.115.117 kontrolera nginx 89.68.23.33 80 / TCP, 443 / TCP 5m22s

Cluster-admission Controller ClusterIP 10.0.135.226 443 / TCP 5m22s

kubernetes ClusterIP 10.0.0.1 443 / TCP 44 godz

Rețineți adresa IP EXTERNAL-IP deoarece o vom avea nevoie în următorul pas. S-ar putea să se întâmple ca în loc de o adresă IP, valoarea pe care o obțineți acolo să fie . Este nevoie de ceva timp pentru ca cloud-ul să obțină o adresă IP publică și să o atribuie klasterului dvs.. Așteptați câteva secunde în plus și adresa IP ar trebui să fie disponibilă.


Utwórz rejestrację DNS A

Acum că aveți adresa IP, puteți să mergeți la un browser și să vedeți cum răspunde clusterul dumneavoastră. Desigur, deoarece încă nu este instalată nicio aplicație, clusterul dumneavoastră va răspunde cu o eroare „404 Not Found”. Vom crea un domeny DNS pe care îl putem asocia acelei adres IP, sperăm că mai ușor de reținut decât o listă de numere și puncte.

Modalitatea de tworzenia domeny internetowej dla Redmine-ul dumneavoastră depinde foarte mult de furnizorul dumneavoastră de domenii, dar în toate cazurile, veți crea or înregistrare DNS A Care Leagă unme de domeniu cu adresa IP. Uitați-vă la captura de ecran de mai jos de la furnizorul de DNS no-ip.com dla referință.

Crearea înregistrării noastre DNS A

Datele de completat, așa cum v-ați aștepta, sunt numele DNS i adres IP. No-IP este dokładne ceea ce avem nevoie pentru a ilustra crearea unui domeniu, dar probabil că veți alege un furnizor DNS diferit. Procesul este destul de podobne în toate cazurile.

Durează ceva timp pentru ca noua înregistrare să se propage, astfel încât puteți utiliza comanda ping pentru a verifica când adresa IP este rezolvată corect:

pinguj redminek8s.ddns.net


Następne kroki

Acum că avem un controller de intrare și un domeniu DNS, singurul lucru rămas de făcut este Skonfiguruj HTTPS dla witryny-ul, aby zainstalować Redmine. Vom utiliza PostgreSQL ca bază de date, dar veți vedea cat de ușor este să configurați totul folosind Helm.

Staţi pe aproape pentru Redmine w Kubernetes Partea 2: Instaarea Redmine-ului.

Zaktualizuj ostateczną wersję Redmine? Ușoară.

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

Încercați Easy Redmine w 30 zile de încercare za darmo

Pełna funkcjonalność, ochrona SSL, kopia zapasowa uri zilnice, w geolocalizarea dvs.