Redmine w Kubernetes — część 2: Instalacja Redmine w Kubernetes

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

Ta druga część serii jest dystrybuowana przez Redmine w Kubernetes. In questo articolo, forniremo istruzioni su come distribuire un'installazione affidabile di Redmine.

Racconto Część 1

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

In Redmine w Kubernetes — część 1: Przygotowanie otoczenia, zainstalowanie kontrolera Ingress, komponent, który ma przywrócić dostęp do najbogatszego internetowego całego klastra internetowego, a także utworzyć dominację DNS, redminek8s.ddns.net. Możesz samodzielnie konfigurować HTTPS i korzystać z usług dla dystrybucji Redmine.


Menedżer koncertów HTTPS

Jeśli chcesz, aby Redmine działała zgodnie z HTTP, HTTPS, jest standardem dla tej witryny internetowej, która jest jedną z większych przeglądarek, aby zobaczyć problem, który jest dostępny dla tej witryny internetowej, która nie korzysta z HTTPS.

Porada, możliwość korzystania z HTTPS nie jest banalna, ale musisz zdobyć certyfikat i wysłać go na swoje miejsce, aby uzyskać pewność tempa i procesu. Cert-manager automatizza tutto questo, compreso il rinnovo dei certificati e persino l'ottenimento di certificati gratuiti. Puoi vedere ulteriori informazioni sul ich strona, ma spiegherò tutto ciò che devi sapere di seguito.


Zainstaluj menedżera certyfikatów

Należy wykonać następujące czynności, aby zainstalować menedżera certyfikatów w klastrze:

repozytorium sterów dodaje jetstack https://charts.jetstack.io Aktualizacja repozytorium sterów &&

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

Prima aggiungi il repozytorium dove si trova cert-manager, quindi installa la sua ultima versione.


Connettersi all'autorità di certificazione

Ora dobbiamo istruire cert-manager a connettersi al provider di certificati che abbiamo scelto. Utilizzeremo LetsEncrypt, autoryzacja bezpłatnej certyfikacji. Crea prima questo file (ricorda di sostituire z rzeczywistymi adresami e-mail) i chiamalo cluster-issuer.yaml

Wersja api: cert-manager.io/v1alpha2

rodzaj: ClusterIssuer

metadane:

  nazwa: letsencrypt

specyfikacja:

  kulminacja:

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

    e-mail:

    prywatnyKeySecretRef:

      nazwa: letsencrypt

    solwery:

    - http01:

        ingres:

          klasa: nginx

Quindi appicalo al tuo klaster con

kubectl stosuje -f klaster-emiter.yaml

Gratulacje! Ten plik jest prima configurazione di Kubernetes che scriviamo e applichiamo al cluster. Możesz zanotować, że większość z nich łączy się z LetsEncrypt, aby opisać również kontroler Ingress, który jest tworzony w części 1 (klasa: nginx alla fine). Questo tipo di configurazione ha alcune righe con spazi per indicare la dipendenza di alcune proprietà da altre. Mantieni quegli spazi come mostrato per garantire che il file venga letto e applicato correttamente.

Twój klaster jest dostępny dla HTTPS. Ogni volta che installiamo un'applicazione, possiamo isstruirla a funzionare con HTTPS e voilà! L'intero processo di ottenimento del certificato verrà eseguito automaticamente dietro le quinte.


Instalacja Redmine

Questo jest ciò che stavamo tutti aspettando. Możesz zainstalować Redmine w różnych modach, z dużymi możliwościami korzystania z Helm. Come abbiamo già fatto in precedenza, prima aggiungiamo il repozytorium in cui si trova Redmine

repozytorium sterów dodaj bitnami https://charts.bitnami.com/bitnami Aktualizacja repozytorium sterów &&

Możesz to zrobić, aby zainstalować subito, utworzyć plik konfiguracyjny do wskazania wszystkich poleceń osobistych, które możesz wykorzystać w Redmine Abbia.

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

Wszystkie aplikacje Helm hanno un file values.yaml zawierają wszystkie możliwe konfiguracje, które mogą być dostępne dla aplikacji. 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. Możesz uzyskać kontrolę nad wszystkimi konfiguracjami.


Primo utente amministratore

Redmine Nazwa użytkownika: adminUser

RedminePassword:

Questo passaggio è tanto necessario bardzo łatwo da capire. È il nostro primo utente su Redmine, quello che useremo per accedere per la prima volta.

Quando Redmine to instalacja, która umożliwia użytkownikowi skonfigurowanie nowej instalacji.


Baza danych PostgreSQL

Per impostazione predefinita, la nostra installazione di Helm richiederà la creazione di un database mariadb. Skonfiguruj tę instalację, aby użyć PostgreSQL. È necessario anche aggiungere almeno una password per accedere a questo database, come puoi vedere di seguito

DatabaseType: postgresql

mariadb:

  włączone: fałsz

postgresql:

  włączone: prawda

  postgresqlBaza danych: Redmine

  postgresqlNazwa użytkownika: Redmine

  postgresqlPassword:

Dobbiamo esplicitamente indicare alla nostra installazione che non vogliamo che MariaDB sia insieme alla configurazione per il database PostgreSQL.


Skonfiguruj nazwę DNS

Ta konfiguracja jest taka, jak chcesz, aby konfiguracja DNS była dostępna przez część 1. Przyjdź, aby zobaczyć, włączyć TLS, protokół dieto HTTPS, i umieścić nazwę hosta, której używasz do tworzenia rekordów DNS:

ingres:

  zdolność: prawda

  certManager: prawda

  nazwa hosta: redminek8s.ddns.net

  tls: prawda

  adnotacje:

    kubernetes.io/ingress.class: nginx

    cert-manager.io/cluster-issuer: Letencrypt

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

Możesz dystrybuować Redmine z własną konfiguracją personalizacyjną:

ster instaluje Redmine -f values.yaml bitnami / redmine

Ta ryga jest podobna do innej wysokiej instalacji, która jest używana wcześniej, ma tę możliwość, aby uzyskać spersonalizowane wartości.yaml. To jest sposób na personalizację jako qualsiasi applicazione Helm.

Dobbiamo ancora avere un po 'di pazienza, poiché la creazione dell'applicazione richiede del tempo. Puoi eseguire questo comando per verificare lo stato dei container dell'applicazione:

kubectl dostać strąki - zegarek

Il comando restituirà qualcosa di simile a questo:

NOME PRONTO STATO RIACCESSIONI ETA”

. . .

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

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

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

Możesz natychmiast pobrać przeglądarkę i używać wszystkich nowych dystrybucji:

Redmine jest pronto


wniosek

Kubernetes jest jednym z kompleksowych narzędzi do dystrybucji aplikacji, ma abbiamo navigato attraverso, w tym kompleksową pomoc z Helm (bez parole) i abbiamo distribuito un'installazione affidabile di Redmine.

Puoi trovare un riassunto di questo how-to nel seguente repozytorium git: https://github.com/lcofre/redmine-on-k8s. Bezpłatne Sentiti Libero di Confrontare i tuoi file se ti blocchi.

Abbiamo lasciato fuori alcuni concetti dalla distributione perché erano complessi lub la spiegazione era specifica del cloud. Tra di essi ci sono la Liveness e la Readiness della tua applicazione, la configurazione delle email in arrivo e la scalabilità per gestire un carico maggiore. Za przysługę, facci sapere qui sotto cosa ti interessa di più w modo da poterlo discutere w un futuro how-to.

Ostateczne poprawki do Redmine? Łatwy.

Ottieni wszystkie potężne instrumenty do pianistyki, gestów i kontroli perfekcyjnego projektu w jednym oprogramowaniu.

Bezpłatne Prova Easy Redmine za 30 giorni

Pełna funkcjonalność, ochrona SSL, giornalieri kopii zapasowych, lokalizacja geolokalna