Redmine στο Kubernetes - Μέρος 1: Προετοιμασία του Ambiente

6/22/2020
6 λεπτά
Lukáš Beňa -> Lukáš Beňa

Στη σειρά questa in due parti, εγκαταστήστε το Redmine στο Kubernetes. Χρησιμοποιήστε το strumenti e pratiche consigliati con l'obiettivo di distribuire un'istanza resiliente di Redmine su HTTPS.

Abbiamo diviso questa guida in due parti per concentrarci prima sull'installazione degli strumenti e dei componenti che verranno utilizati per la distribuzione di Redmine. Ma non preoccuparti per la complessità. Anche sei nuovo a Kubernetes, sarà una spiegazione comprensibile.

Questa guida è stata scritta per essere ανεξάρτητο νέφος, quindi abbiamo intenzionalmente omesso tutte le menzioni del cloud che abbiamo utilizzato. Lascia un commento se riesci a indovinare il cloud che abbiamo utilizzato e dicci quale dettaglio lo ha rivelato. Ti consigliamo di utilizzare il servizio Kubernetes offerto dal tuo cloud, poiché è ben integrato con gli altri service che il tuo cloud fornisce.

Ambienti come microk8s o minikube non sono considerati qui poiché richiedono una configurazione aggiuntiva che esula dallo scopo di questa guida. Ειδικότερα, la nostra διαμόρφωση HTTPS richiede che il nostro cluster abbia un IP pubblico.


Ουσιάμο Χελμ

Kubernetes è un strumento complesso per l'δοχείο orchestrazione dei. Ci sono molti concetti che dobbiamo imparare per iniziare. Fortunatamente c'è un progetto chiamato Πηδάλιο che fornisce il livello di astrazione di cui abbiamo bisogno. Con le loro parole "Se abbiamo fatto le cose giuste, gli utenti potrebbero installare Helm e poi, entro pochi minuti, installare componenti preconfezionati di qualità produttiva".

Tralasciando le ragioni dei loro nomi (tutto racconta la storia di una metafora, Helm, Kubernetes e Containers), Helm semplifica davvero l'installazione consentendo allo stesso tempo di personalizzare il componente alle nostre esigenze. Utilizzeremo Helm 3, la loro ultima e ancora più semplice versione.

Se usi la shell del cloud del tuo provider, è probabile che Helm 3 sia già διαθέσιμο, ma se non lo è, puoi installarlo seguendo la guida fornita dalla documentazione di Helm, helm.sh/docs/intro/install/. Devi συστάδα già avere accesso al tuo ντάλα ρίγκα ντι κομάντο τσε ούσι. Il tuo πάροχος cloud ha una guida su come fare anche questo.


Εγκαταστήστε τον ελεγκτή Ingress

Questo è il primo componente che installeremo nel nostro cluster ed è anche il primo concetto di Kubernetes che vedremo. Un controller Ingress si trova alla porta d'ingresso del tuo cluster, riceve tutte le richieste web e le reindirizza al componente interno responsabile di rispondere alla richiesta. Inizialmente, non ci sarà nessuno pronto a rispondere, ma quando installeremo Redmine, verrà aggiunto come destinazione per le richieste.

Kubernetes fornisce il ελεγκτής Ingress NGINX che useremo. La loro documentazione spiega come installarlo usando Helm:

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

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

Il primo comando aggiunge il repository delle applicazioni dove si trova il controller Ingress, mentre il secondo lo installa nel tuo cluster. Quando finito, il Comando stamperà alcune informazioni per iniziare, inclusa la modalità per ottenere l'indirizzo IP pubblico assegnato all controller:

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

Il risultato sarà simile a questo:

NOME TIPO CLUSTER-IP ΕΞΩΤΕΡΙΚΗ ΘΥΡΑ(ΕΣ) IP ETA'

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 ώρες

Prendi nota dell'EXTERNAL-IP poiché ne avremo bisogno nel passaggio successivo. Potrebbe accadere che invece di un IP il valore che ottieni sia . Ci vuole del tempo per il cloud ανά ανοιχτό σύμπλεγμα IP pubblico e assegnarlo al tuo. Aspetta solo qualche secondo in più e l'IP dovrebbe essere disponibile.


Δημιουργία εγγραφής DNS A

Ora che hai l'IP, puoi semplicemente andare su un browser e vedere come risponde il tuo cluster. Φυσικό, δεν έχει εγκατασταθεί ανορθωμένη εφαρμογή, il tuo cluster risponderà con un errore "404 Not Found". Δημιουργήστε ένα Dominio DNS για να συνδέσετε μια IP καταστολή, sperando che sia più facile da ricordare di una lista di numeri e punti.

Il modo di creare un dominio internet για το Redmine dipende molto dal tuo πάροχος di dominio, ma in tutti i casi, finirai per creare un record DNS A che collega un nome di dominio al tuo IP. Βεβαιωθείτε ότι ο παροχέας DNS no-ip.com είναι seguente schermata.

Δημιουργία εγγραφής DNS A

I dati da completare, come ci si potrebbe aspettare, sono il όνομα DNS και l'IP. No-IP è proprio ciò di cui abbiamo bisogno για εικονογράφηση δημιουργίας ενός τομέα, έχει πιθανότητες να έχει έναν παροχέα DNS diverso. Il processo è abbastanza simile in tutti loro.

Ci vuole del tempo perché il nuovo record si propaghi, quindi puoi usare il ping per verificare quando l'IP viene risolto correttamente:

ping redminek8s.ddns.net


Passaggi διαδοχικά

Ora che abbiamo un ingress controller e un dominio DNS, l'unica cosa che resta è ρυθμίστε το HTTPS για να εγκαταστήσετε το Redmine. Χρησιμοποιήστε τη βάση δεδομένων PostgreSQL, η οποία είναι διαθέσιμη για να ρυθμίσετε τις παραμέτρους για να χρησιμοποιήσετε το Helm.

Rimani sintonizzato περ Redmine στο Kubernetes Parte 2: Installazione di Redmine.

L'aggiornamento definitivo di Redmine; Εύκολος.

Πραγματοποιήστε όλες τις δυνατές δυνατότητες για την εφαρμογή, gestione and controllo del progetto perfetti σε un unico λογισμικό.

Prova Easy Redmine δωρεάν ανά 30 Giorni

Funzionalità πλήρες, πρωτόκολλο SSL, backup giornalieri, nella tua geolocalizzazione