Redmine v Kubernetes - Část 2: Instalace Redmine v Kubernetes

6/30/2020
8 minut
Lukáš Beňa -> Lukáš Beňa

Questa è la seconda parte della série su distribuire Redmine in Kubernetes. V questo articolo, forniremo istruzioni su come distribuire un'installazione affidabile di Redmine.

Racconto Parte 1

Adesso devi essere ansioso in l'installazione di Redmine with Kubernetes. Dopotutto, è per questo che sei qui, giusto?

In Redmine in Kubernetes - Parte 1: Preparazione dell'ambiente, abbiamo instaloval do Controller Ingress, a komponenty pro reindirizzare le bohatý internet all'interno de tuo cluster, a abbiamo creato un dominio DNS, redminek8s.ddns.net. Nebo dobbiamo solo konfigurace HTTPS a siamo pronti na distribuci Redmine.


HTTPS koncertní manažer

Další informace o použití Redmine přicházejí HTTP, HTTPS nebo standardně pro web, který je součástí hlavního prohlížeče a který má problémy se zabezpečením, který web nepoužívá HTTPS.

Tipicamente, abilitare HTTPS non è un compito banale, poiché è necessario acquistare un certificato e caricarlo sul tuo sito, rinnovarlo dopo un certo tempo e ripetere il processo. Cert-manager automatizza tutto questo, compreso il rinnovo dei certificati e persino l'ottenimento di certificati gratuiti. Puoi vedere ulteriori informazioni sul jejich stránky, ma spiegherò tutto ciò che devi sapere di seguito.


Instalujte cert-manager

Následující a další průchody pro instalaci jsou cert-manager v tomto clusteru:

kormidlo repo přidat jetstack https://charts.jetstack.io && Helm repo update

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

První připojení k úložišti dove má nový cert-manager, nyní je nainstalována poslední verze.


Připojujte všechny autority certifikátů

Ora dobbiamo istruire cert-manager a connettersi al provider di certificati che abbiamo scelto. Použijte LetsEncrypt, bez autority bezplatného certifikátu. Soubor Crea prima questo (ricorda di sostituire con un un indirizzo email reale) e chiamalo cluster-issuer.yaml

apiVersion: cert-manager.io/v1alpha2

druh: ClusterIssuer

metadata:

  jméno: letsencrypt

spec:

  vrchol:

    server: https://acme-v02.api.letsencrypt.org/directory

    e-mailem:

    privateKeySecretRef:

      jméno: letsencrypt

    řešitelé:

    - http01:

        vstup:

          třída: nginx

Quindi applicalo al tuo cluster con

kubectl apply -f cluster-emiter.yaml

Gratuluji! Il file sopra è la prima configurazione di Kubernetes che scriviamo e applichiamo al cluster. Požadavek na připojení k LetsEncrypt, popište všechny ovladače Ingress, které byly vytvořeny v části 1 (třída: nginx alla fine). Questo typo di configurazione ha alcune righe con spazi indicare la dipendenza di alcune proprietà da altre. Mantieni quegli spazi přicházejí nejvíce za garanci che il file venga letto e applicato correttamente.

Nebo tento cluster je způsobilý pro HTTPS. Ogni volta che installiamo un'applicazione, possiamo istruirla and funzionare con HTTPS e voilà! Intero processo di ottenimento del certificato verrà eseguito automaticamente dietro le quinte.


Instalace Redmine

Questo è ciò che stavamo tutti aspettando. Můžete si nainstalovat Redmine v různých režimech, které jsou vhodné pro použití Helm. Přijďte abbiamo già fatto in precedenza, prima aggiungiamo il repository in cui si trova Redmine

kormidlo repo přidat bitnami https://charts.bitnami.com/bitnami && Helm repo update

Chcete-li provést instalaci subito, vytvořte soubor konfigurací podle indikovaných různých součástí přizpůsobení, které se používá pro Redmine abbia.

Separiamo tutte le configurazioni nella loro sezione ma le mettiamo tutte nello stesso file, una dopo l'altra. Chiamiamo il soubor values.yaml.

Přilba přilba obsahuje hodnoty.yaml s sebou přináší možnosti konfigurace, kterou lze použít pro tučnou aplikaci. Quando creiamo il nostro values.yaml definiamo le modifiche che vogliamo. Qualsiasi valore che non includiamo nel nostro file verrà lasciato come è nel file predefinito.

Tutti i valori predefiniti possono essere trovati anche sulla pagina dell'applicazione Helm, https://hub.helm.sh/charts/bitnami/redmine. Můžete použít a ovládat tuto konfiguraci.


Předem utente správce

RedmineUživatelské jméno: adminUser

RedmineHeslo:

Questo passaggio è tanto necessario quanto facile da capire. È nostro primo utente su Redmine, quello che useremo for access to the prima volta.

Quando Redmine je nainstalováno, můžete získat přístup k nastavení podle nové instalace.


Databáze PostgreSQL

Podle předdefinovaných požadavků je nová instalace bohatší společnosti Helm vytvořena v databázi mariadb. Nakonfigurujte novou instalaci pomocí PostgreSQL. È necessario anche aggiungere almeno una password for access to the questo database, come puoi viewre di seguito

typ databáze: postgresql

mariadb:

  povoleno: false

postgresql:

  povoleno: true

  PostgresqlDatabase: Redmine

  postgresqlUživatelské jméno: Redmine

  postgresqlHeslo:

Dobbiamo esplicitamente indicare alla nostra installazione che non-vogliamo che MariaDB a installato insieme alla configuration for the il Database PostgreSQL.


Konfigurace názvu DNS

Konfigurace, která je nastavena na rozdíl od konfigurace DNS che abbiamo fatto nella parte 1. Přijďte se podívat, abilitiamo TLS, protokol pro HTTPS, a impostiamo il nome hostitele che abbiamo použít žádný záznam DNS

vstup:

  abilitato: pravda

  certManager: pravda

  název hostitele: redminek8s.ddns.net

  tls: pravda

  anotace:

    kubernetes.io/ingress.class: nginx

    cert-manager.io/cluster-issuer: letsencrypt

Anche nelle ultime due righe collegiamo la nostra applicazione con il Controller Ingress e con il Cluster Issuer che abbiamo creato in precedenza.

Nebo možná distribuce Redmine s naší osobní konfigurací:

helm install Redmine -f hodnoty.yaml bitnami / redmine

Questa riga è simile ad altre righe di installazione di helm che abbiamo used in precedenza, ma questa volta forniamo un values.yaml personalizzato. Questo è il modo per personalizzare qualsiasi applicazione Helm.

Dobbiamo ancora avere un po' di pazienza, poiché la creazione dell'applicazione richiede del tempo. Požadavek na příkaz k ověření stavu kontejneru aplikace:

kubectl get lusky - hodinky

Il comando restituirà qualcosa di simile a questo:

NOME PRONTO STATO RIACCESSIONI ETA'

. . .

redmine-999c68dd9-x7h2k 1/1 V esecuzione 0 6m40s

redmine-postgresql-0 1/1 V esecuzione 0 6m40s

Devi aspettare finché lo stato di entrambi i container non diventa In esecuzione e tutti sono pronti 1/1, che nel mio caso ha richiesto circa 6 minuti.

Toto je nyní k dispozici za duben v prohlížeči a ve všech nových distribucích:

Redmine je rychle


závěr

Kubernetes je jedním z nástrojů, které jsou kompletní pro distribuci aplikací, abbiamo navigato attraverso questa complessità con l'aiuto di Helm (senza giochi di parole) a abbiamo distribuito un'installazione affidabile di Redmine.

Puoi trovare un riassunto di questo how to in the seguente repository git: https://github.com/lcofre/redmine-on-k8s. Sentiti libero di confrontare i tuoi file se ti blocchi.

Abbiamo lasciato fuori alcuni concetti dalla diskuse perché erano complessi o la spiegazione era specifica del cloud. Tra di essi ci sono la Liveness and la Readiness della tua applicazione, la configuration delle e-mail in arrivo and la scalebilità per gestire un carico maggiore. Per favore, facci sapere qui sotto cosa ti interessa di più in modo da poterlo discutere in un futuro how-to.

L'aggiornamento definitivo di Redmine? Snadno.

Ottieni tutti gli instrumenti potenci on a pianificazione, gestione and controllo del progetto perfetti in un unico software.

Prova Easy Redmine zdarma za 30 giorni

Funzionalita kompletní, ochrana SSL, záložní giornalieri, další geolocalizzazione