Redmine και Kubernetes - Del 1: Forberedelse af miljøet

6/22/2020
6 λεπτά
Λούκα Μπέγια

I denne to-delte serie vil vi implementere Redmine i Kubernetes. Βεβαιωθείτε ότι η Bruge anbefalede værktøjer og metoder med det formål σε εφαρμογή σε ισχυρές στιγμές από το Redmine μέσω HTTPS.

Vi har opdelt denne vejledning i to dele for at fokusere først på εγκατάσταση από værktøjer και στοιχείο, som Redmine-implementeringen vil bruge. Men bekymre dig ikke om kompleksiteten. Selvom du er ny til Kubernetes, vil det være en forståelig forklaring.

Denne vejledning blev skrevet for at være cloud-agnostisk, så vi undlod bevidst alle omtaler af den sky, vi brugte. Efterlad en kommentar, hvis du kan gætte, hvilken sky vi brugte, og fortæl os, hvilken detalje der afslørede det. Vi anbefaler dig at Bruge Kubernetes-tjenesten, som din sky tilbyder, da den er godt integreret med andre tjenester, som din sky også tilbyder.

Miljøer som microk8s eller minikube er ikke taget i betragtning her, da de kræver lidt απλή διαμόρφωση, som er uden for denne vejlednings omfang. Især kræver vores Ρύθμιση HTTPS, στο vores klynge har en offentlig διεύθυνση IP.


Lad os bruge Helm

Kubernetes er et komplekst værktøj til ενορχήστρωση εμπορευματοκιβωτίων. Der er mange begreber, vi skal lære for at komme i gang. Heldigvis er der et projekt kaldet Πηδάλιο, som giver det abstraktionsniveau, vi har brug for. I deres egne ord "Hvis vi gjorde tingene rigtigt, kunne brugere installere Helm og inden for få minutter installere komponenter af produktionskvalitet ud af hylden"

Uden at gå ind i årsagerne til deres navne (det hele fortæller historien om en metafor, Helm, Kubernetes og Containere) gør τιμόνι virkelig installen enklere, samtidig med at der er plads til at tilpasse komponenten til vores behov. Vi vil bruge Helm 3, deres nyeste og endnu enklere version.

Hvis du bruger skyens shell fra din skyudbyder, er der stor sandsynlighed for, στο Helm 3 allerede er tilgængelig, men hvis ikke kan du installere det ved at følge vejledningen, som Helm-documentationen giver, helm.sh/docs/intro/install/. Du skal allerede έχουν adgang til din klynge fra den kommandolinje, du bruger. Din skyudbyder har også en vejledning om, hvordan du gør det.


Ελεγκτής εισόδου εγκαταστάτη

Dette er den første komponent, vi vil installere i vores klynge, og det er også det første Kubernetes-koncept, vi vil se. En Ingress-controller sidder ved indgangsdøren til din klynge, modtager alle webanmodninger og omdirigerer dem til den interne komponent, der er ansvarlig for at besvare anmodningen. I starten vil der ikke være nogen klar til at besvare, men når vi installerer Redmine, vil det blive tilføjet som en προορισμός για anmodningerne.

Μοχλός Kubernetes Ελεγκτής εισόδου NGINX, som vi vil bruge. Η τεκμηρίωση για τον οδηγό, τον εγκαταστάτη του εγκαταστάτη και την εφαρμογή του Helm:

τιμόνι repo προσθέστε ingress-nginx https://kubernetes.github.io/ingress-nginx && helm repo ενημέρωση

τιμόνι εγκαθιστώστε το ingress-controller ingress-nginx / ingress-nginx

Για να δημιουργήσετε ένα αποθετήριο εφαρμογών για την εισαγωγή, τον έλεγχο εισόδου, τον τεχνικό εγκατάστασης και τον εγκαταστάτη και τον έλεγχο. Når installen er færdig, udskriver kommandoen nogle oplysninger for at komme i gang, herunder hvordan man får den offentlige IP, der er tildelt controlleren:

kubectl get υπηρεσίες --watch

Αποτελέσματα για το νέο lignende dette:

NAVN TYPE CLUSTER-IP ΕΞΩΤΕΡΙΚΗ ΘΥΡΑ IP(ΕΣ) ALDER

nginx-controller LoadBalancer 10.0.115.117 89.68.23.33 80 / TCP, 443 / TCP 5m22s

ClusterIP ελεγκτή-εισαγωγής 10.0.135.226 443 / TCP 5m22s

kubernetes ClusterIP 10.0.0.1 443 / TCP 44 ώρες

Bemærk EXTERNAL-IP, da vi vil have brug for det i næste trin. Det kan ske, at værdien, du får der, i stedet for en IP er . Det tager lidt tid για το skyen στο få en offentlig IP og tildele den til din klynge. Εξαερίστε το γυμνό και το δεύτερο μόνο, og IP'en burde være tilgængelig.


Προετοιμάστε το DNS A-post

Nu hvor du har IP'en, kan du bare gå til en browser og se, hvordan dit cluster svarer dig. Selvfølgelig, da der endnu ikke er installeret nogen application, vil dit cluster svare med en "404 Not Found" fejl. Vi vil oprette et DNS-domæne, som vi kan associere med den IP, forhåbentlig nemmere στο huske end en list af tal og prikker.

Måden at oprette et internetdomæne for din Redmine afhænger i høj grad af din domæneudbyder, men i alle tilfælde ender du med at oprette en DNS A-post, der forbinder et domænenavn med din IP. Δείτε το αρχείο skærmbillede από το DNS-udbyderen no-ip.com κάποια αναφορά.

Προτιμήστε το DNS A-post

De data, der skal udfyldes, som du nok forventer, er DNS-navnet και IP'en. No-IP er lige det, vi har brug για στο illustrere oprettelsen af ​​et domæne, men du vil sandsynligvis vælge en anden DNS-udbyder. Processen er ret ens i dem alle.

Θα πρέπει να λαμβάνετε ειδήσεις για το den nye post στο sprede sig, για να κάνετε ping στην Bruge στον έλεγχο, hvornår IP'en er korrekt opløst:

ping redminek8s.ddns.net


Næste trin

Nu hvor vi har en ingress-controller og et DNS-domæne, er det eneste, der mangler, at Ρυθμίστε το HTTPS για τα websted και την εγκατάσταση του Redmine. Μπορείτε να χρησιμοποιήσετε τη βάση δεδομένων της PostgreSQL στη Μπρυζ, να χρησιμοποιήσετε τη βάση δεδομένων, καθώς και να ρυθμίσετε την εγκατάσταση του Helm.

Hold dig opdateret på Redmine στο Kubernetes Μέρος 2: Εγκατάσταση του Redmine.

Η τελική αναβάθμιση του Redmine; Nemt.

Για όλα τα kraftfulde værktøjer til Perfekt Planlægning, -styring og -control and enkelt software.

Προβάλετε το Easy Redmine και 30 ημέρες δωρεάν την περίοδο

Πλήρης λειτουργικότητα, SSL-beskyttet, αντίγραφα ασφαλείας daglige, και γεωεντοπισμός