Redmine i Kubernetes - Del 2: Installera Redmine

6/30/2020
8 λεπτά
Λούκα Μπέγια
Detta är den andra delen av serien om att distribuera Redmine i Kubernetes. I den här artikeln kommer vi att ge instruktioner om hur man distribuerar en pålitlig εγκατάσταση του Redmine.

Återberättelse Del 1

Μπορείτε να χρησιμοποιήσετε το πρόγραμμα εγκατάστασης του Redmine στο Kubernetes. Det är ju trots allt det du kom hit för, eller hur?

I Redmine på Kubernetes - Del 1: Förbereda miljön Εγκατάσταση μέσω Ελεγκτή εισόδου, ένα στοιχείο για την πρόσβαση στο Διαδίκτυο για το Internetförfrågningar inuti ditt kluster, και στο skapade στο DNS-domän, redminek8s.ddns.net. Δεν μπορείτε να ρυθμίσετε το HTTPS και να επαναλάβετε τη διανομή του Redmine.


HTTPS med cert-manager

Även om vi kan behålla Redmine som HTTP και HTTPS blivit standarden for webplatser, så mycket att de flesta webbläsare varnar dig for en säkerhetsrisk när HTTPS inte används av en webplats.

Att aktivera HTTPS är vanligtvis inte en trivial uppgift, eftersom du behöver köpa ett certifikat och ladda upp det till din webplats, förnya det efter en viss tid och upprepa processen. Πιστοποιητικός διαχειριστής αυτοματοποιήστε όλα τα στοιχεία, συμπεριλαμβανομένης της έκδοσης πιστοποιητικών και των δωρεάν πιστοποιητικών. Du kan se mer information på deras webplats, άνδρες jag kommer att förklara allt du behöver veta härnäst.


Installera cert-manager

Χρησιμοποιήστε το πρόγραμμα για την εγκατάσταση του πιστοποιητικού διαχειριστή και την ομάδα:

τιμόνι repo προσθέστε jetstack https://charts.jetstack.io && helm repo ενημέρωση

helm install cert-manager jetstack / cert-manager - set installCRDs = true

Πρώτη έκδοση μέχρι εγγραφή για πιστοποιητικό διαχειριστή Φινλανδών και σεντάν εγκατάστασης για την έκδοση της έκδοσης.


Απάντηση μέχρι το πιστοποιητικό

Nu behöver vi instruera cert-manager att ansluta till den certifikatleverantör vi väljer. Επικοινωνήστε με το LetsEncrypt, δωρεάν πιστοποιητικό. Skapa först denna fil (kom ihåg att ersätta med en riktig e-postadress) och döp den till cluster-issuer.yaml

apiVersion: cert-manager.io/v1alpha2

είδος: ClusterIssuer

μεταδεδομένα:

  όνομα: letsencrypt

προδιαγραφή:

  ακμή:

    υπηρέτης: https://acme-v02.api.letsencrypt.org/directory

    ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ:

    privateKeySecretRef:

      όνομα: letsencrypt

    επιλυτές:

    - http01:

        είσοδος:

          τάξη: nginx

Tillämpa sedan den på ditt kluster med

kubectl apply -f cluster -issuer.yaml

Δωρεάν! Το αρχείο αυτό είναι το Kubernetes-konfigurationen vi skriver och tillämpar på klustret. Du kanske har märkt att den visar hur man ansluter till LetsEncrypt, men den beskriver också Ingress Controller som vi skapade i Del 1 (κλάση: nginx i slutet). Den här typen av konfiguration har några rader med mellanslag for att ange beroende av vissa egenskaper till andra. Behåll dessa mellanslag som visas for att säkerställa att filen läses och tillämpas korrekt.

Δεν υπάρχουν ενεργές ομάδες για το HTTPS. När vi installerar en application kan vi instruera den att fungera med HTTPS och voilà! Hela processen med att få certifikatet kommer att göras automatiskt i bakgrunden.


Εγκατάσταση στο Redmine

Detta är vad vi alla har väntat på. Μπορείτε να εγκαταστήσετε το Redmine på några olika sätt, men det mest bekväma sättet är att använda Helm. Precis som vi gjorde tidigare, först lägger vi till lagret där Redmine finns

helm repo προσθέστε bitnami https://charts.bitnami.com/bitnami && helm repo ενημέρωση

Men den här gången kommer vi inte att installera direct, vi kommer att skapa en konfigurationsfil for att ange några anpassade beteenden som vill att Redmine ska ha.

Vi kommer att separera alla konfigurationer i egna avsnitt men du lägger dem alla i samma fil, en efter den andra. Αποθηκεύστε το αρχείο μέχρι values.yaml.

Alla Helm-applikationer έχει τις αξίες.yaml-fil med alla möjliga ρυθμιστή som kan göras for applikationen. När vi skapar vår egen values.yaml definierar vi de ändringar vi vill ha. Alla värden som vi inte inkluderar i vår fil kommer att vara oförändrade i standardfilen.

Alla standardvärden kan också hittas på Helm-applikationens sida, https://hub.helm.sh/charts/bitnami/redmine. Μπορείτε να δείτε και να δημιουργήσετε όλα αυτά.


Första administratörsanvändaren

RedmineAnvändarnamn: adminUser

RedmineLösenord:

Detta steg är lika nödvändigt som lätt att förstå. Det är vår första användare på Redmine, den som vi kommer att använda för att logga in för första gången.

När Redmine är installerat kommer du att kunna komma åt det med denna användare for att konfigurer din helt nya εγκατάσταση.


PostgreSQL-βάσεις δεδομένων

Som standard kommer vår Helm-installation att kräva att en mariadb-databas skapas. Καθαρίστε το Commer και τη ρύθμιση και την εγκατάσταση στο använda PostgreSQL. Du behöver också lägga till minst ett lösenord för att komma åt denna databas, som du kan se nedan

Τύπος βάσης δεδομένων: postgresql

mariadb:

  ενεργοποιημένο: false

postgresql:

  ενεργοποιημένο: true

  postgresql Βάση δεδομένων: Redmine

  postgresql Όνομα χρήστη: Redmine

  postgresqlPassword:

Μπορείτε να δείτε την εγκατάσταση και την εγκατάσταση στο MariaDB ska installeras tillsammans med konfigurationen for PostgreSQL-databasen.


Ρύθμιση DNS

Ρύθμιση παραμέτρων σε ένα καινούργιο σύστημα ρύθμισης DNS για τη ρύθμιση του DNS και Del 1. Μπορείτε να ενεργοποιήσετε το TLS, το πρωτόκολλο HTTPS, το πρωτόκολλο στο HTTPS, και το νέο πρόγραμμα για την εφαρμογή DNS και το DNS-post:

είσοδος:

  ενεργοποιημένο: true

  certManager: αλήθεια

  όνομα κεντρικού υπολογιστή: redminek8s.ddns.net

  tls: αλήθεια

  σχολιασμοί:

    kubernetes.io/ingress.class: nginx

    cert-manager.io/cluster-issuer: letsencrypt

Också på de två sista raderna länkar vi vår εφαρμογή med Ingress Controller και med Cluster Issuer som vi skapade tidigare.

Δεν μπορείτε να διανείμετε το Redmine με τη ρύθμιση και τη διαμόρφωση:

τιμόνι εγκατάστασης Redmine -f values.yaml bitnami/redmine

Den raden liknar andra helm installera rader vi använde tidigare, men den här gången tillhandahåller vi en anpassad values.yaml. Detta är sättet att anpassa vilken Helm-aplikation som helst.

Vi behöver lite mer tålamod ändå, eftersom skapandet av applikationen tar lite tid. Μπορείτε να χρησιμοποιήσετε τις εντολές για τον έλεγχο του καθεστώτος για τις εφαρμογές dinacontainrar:

kubectl få pods --ρολόι

Commandot kommer att returnera något liknande detta:

NAMN KLAR STATUS OMSTART ÅLDER

. . .

redmine-999c68dd9-x7h2k    1/1     Kör   0          6m40s

redmine-postgresql-0 1/1 Kör 0 6m40s

Du måste vänta tills statusen for båda containrarna är Kör och alla är redo 1/1, vilket i mitt fall tog cirka 6 λεπτά.

Nu är allt klart för att öppna webbläsaren och gå till vår nya διανομή:

Redmine är redo


περίληψη

Kubernetes är ett complext verktyg for att distribuera applikationer, men viigerade genom den komplexiteten med hjälp av Helm (ingen ordlek avsedd) och distribuerade en pålitlig εγκατάσταση στο Redmine.

Du kan hitta en sammanfattning av denna guide and följande git-repo: https://github.com/lcofre/redmine-on-k8s. Känn dig fri att jämföra med dina filer om du fastnar.

Vi lämnade några begrepp utanför diskussionen eftersom de var komplexa eller förklaringen var molnspecifik. Ανοιχτοί φινλανδοί Ζωντανή και ετοιμότητα για την εφαρμογή, ρύθμιση της ηλεκτρονικής ταχυδρομικής αποστολής και του skalning για την εφαρμογή και την εφαρμογή. Οδηγός Låt oss veta nedan vad som intresserar dig mest så kan vi diskutera det i en framtida.

Είναι τελικά το Redmine-upgradering; Ένκελ.

Få alla kraftfulla verktyg för perfekt projektplanering, -hantering och -controll i en enda programvara.

Prova Easy Redmine και 30 dagars δωρεάν προσφορά

Fullständiga funktioner, SSL-skyddad, dagliga säkerhetskopior, και din geografiska plats