Redmine Kubernetesissa - Osa 2: Redminen asentaminen
Kertomus osa 1
Nyt sinun täytyy odottaa Redminen asennusta Kubernetesiin. Loppujen lopuksi siihenhän tulit, eikö niin;
Redmine Kubernetesissa - Osa 1: Ympäristön valmistelu -Artikkelissa asensimme Ingress Controllerin, συνιστώσα, όχι μόνο στο internet-pyynnöt klusterin sisällä, ja loimme DNS-verkkotunnuksen, redminek8s.ddns.net. Δεν μπορείτε να δημιουργήσετε ένα HTTPS και να δημιουργήσετε ένα νέο πρόγραμμα στο Redminen.
HTTPS cert-managerin avilla
Vaikka voisimme pitää Redminen HTTP-protokollalla, HTTPS στο tullut standardiksi verkkosivustoille. Useimmat selaimet varoittavat turvallisuusongelmasta, kun HTTPS-protokollaa ei käytetä.
HTTPS:n käyttöönotto ei yleensä ole triviaali tehtävä, sillä sinun täytyy ostaa sertifikaatti ja ladata se sivustollesi, uusia se tietyn ajan kuluttua ja toistaa prosessi. Cert-manager automatisoi kaiken tämän, mukaan lukien sertifikaattien uusimisen, ja hankkii jopa ilmaisia sertifikaatteja. Voit lukea lisää heidän sivustoltaan, mutta selitän seuraavaksi kaiken, mitä sinun tarvitsee tietää.
Asenna cert-manager
Suorita seuraavat vaiheet cert-managerin asentamiseksi klusteriisi:
τιμόνι repo προσθέστε jetstack https://charts.jetstack.io && helm repo ενημέρωση
helm install cert-manager jetstack / cert-manager - set installCRDs = true
Lisää ensin repository, jossa cert-manager sijaitsee, ja sitten asenna sen uusin versio.
Yhdistä sertifikaattiviranomaiseen
Nyt meidän täytyy ohjeistaa cert-manager yhdistämään valitsemaamme sertifikaattitarjoajaan. Käytämme LetsEncryptiä, ilmaista sertifikaattiviranomaista. Luo ensin tämä tiedosto (muista korvata oikealla sähköpostiosoitteella) ja nimeä se cluster-issuer.yaml:
apiVersion: cert-manager.io/v1alpha2
είδος: ClusterIssuer
μεταδεδομένα:
όνομα: letsencrypt
προδιαγραφή:
ακμή:
υπηρέτης: https://acme-v02.api.letsencrypt.org/directory
ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ:
privateKeySecretRef:
όνομα: letsencrypt
επιλυτές:
- http01:
είσοδος:
τάξη: nginx
Sitten soveltaa sitä klusteriisi komennolla
kubectl apply -f cluster -issuer.yaml
Οννέξι ολκούν! Yllä oleva tiedosto on ensimmäinen Kubernetes-konfiguraatio, jonka kirjoitamme ja sovellamme klusteriin. Huomaat ehkä, että se näyttää, miten yhdistetään LetsEncryptiin, mutta se kuvaa myös Ingress Controllerin, jonka loimme Osa 1:ssä (κλάση: nginx lopussa). Tällaisessa konfiguraatiossa on joitain rivejä välilyöntejä, jotka osoittavat, että jotkin ominaisuudet riippuvat toisista ominaisuuksista. Pidä nämä välilyönnit samoina kuin esimerkissä, jotta tiedosto luetaan ja sovelletaan oikein.
Τη συμπερίληψη tukee HTTPS:ää. Aina kun asennamme sovelluksen, voimme ohjeistaa sen toimimaan HTTPS:n kanssa ja voilà! Koko sertifikaatin hankintaprosessi tapahtuu automaattisesti taustalla.
Redminen ασενταμίνη
Tätä me kaikki odotimme. Voimme asentaa Redminen muutamalla eri tavalla, mutta ehdottomasti kätevin tapa on käyttää Helm-ohjelmaa. Kuten aiemmin teimme, ensin lisäämme Redminen repositoryn
helm repo προσθέστε bitnami https://charts.bitnami.com/bitnami && helm repo ενημέρωση
Mutta tällä kertaa emme asenna heti, vaan luomme konfiguraatiotiedoston, jolla voimme määrittää haluamamme Redminen mukautetun käyttäytymisen.
Erottamme kaikki konfiguraatiot omiin osioihinsa, mutta laitamme ne kaikki samaan tiedostoon, peräkkäin. Nimeä tiedosto αξίες.yaml.
Kaikilla Helm-sovelluksilla στο values.yaml-tiedosto, jossa στο kaikki sovellukseen mahdollisesti tehtävät konfiguraatiot. Kun luomme oman values.yaml-tiedoston, määrittelemme haluamamme muutokset. Kaikki arvot, joita emme sisällytä tiedostoomme, jäävät sellaisiksi kuin ne ovat oletustiedostossa.
Kaikki oletusarvot löytyvät myös Helm-sovelluksen sivulta, https://hub.helm.sh/charts/bitnami/redmine. Mene eteenpäin και tarkista kaikki konfiguraatiot.
Ensimmäinen pääkäyttäjä
Redmine-käyttäjänimi: adminUser
Redmine-salasana:
Tämä vaihe on yhtä välttämätön kuin helppo ymmärtää. Tämä on ensimmäinen käyttäjä Redminessä, jota käytämme ensimmäistä kertaa kirjautumiseen.
Kun Redmine στο asennettu, voit käyttää tätä käyttäjää uuden asennuksesi määrittämiseen.
PostgreSQL-tietokanta
Oletuksena Helm-asennuksemme vaatii mariadb-tietokannan luomista. Sen sijaan määritämme asennuksemme käyttämään PostgreSQL:ää. Sinun täytyy myös lisätä vähintään salasana tälle tietokannalle, kuten alla näet
Τύπος βάσης δεδομένων: postgresql
mariadb:
ενεργοποιημένο: false
postgresql:
ενεργοποιημένο: true
postgresql Βάση δεδομένων: Redmine
postgresql Όνομα χρήστη: Redmine
postgresqlPassword:
Meidän täytyy nimenomaisesti kertoa asennuksellemme, ettemme halua MariaDB:n asentuvan PostgreSQL-tietokannan konfiguraation kanssa.
DNS-αντιμετωπίζουν τις δυνατότητες
Alla oleva määritys on DNS-määrityksen toinen puoli, jonka teimme osassa 1. Kuten näet, otamme käyttöön TLS:n, HTTPS:n taustalla olevan protokollan, ja asetamme käyttämämämänime loNS,n
είσοδος:
ενεργοποιημένο: true
certManager: αλήθεια
όνομα κεντρικού υπολογιστή: redminek8s.ddns.net
tls: αλήθεια
σχολιασμοί:
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: letsencrypt
Viimeiissä kahdessa rivissä linkitämme sovelluksemme Ingress Controlleriin και aiemmin luomaamme Cluster Issueriin.
Nyt voimme asentaa Redminen mukautetulla määärityksellämme:
helm εγκαταστήστε Redmine -f Values.yaml bitnami / redmine
Tuo rivi on samankaltainen kuin muut τιμόνι εγκατάσταση -rivit, joita käytimme aiemmin, mutta tällä kertaa annamme mukautetun values.yaml-tiedoston. Tämä on tapa mukauttaa mitä tahansa Helm-sovellusta.
Tarvitsemme vielä hieman kärsivällisyyttä, koska sovelluksen luominen vie jonkin aikaa. Voit suorittaa tämän komennon tarkistaaksesi sovelluksesi konttien tilan:
kubectl πάρτε λοβό - ρολόι
Σχόλια παλαουτταά όχι μόνο:
ΟΝΟΜΑ ΕΤΟΙΜΟΙ ΚΑΤΑΣΤΑΣΕΙΣ ΕΠΑΝΑΦΟΡΑ ΗΛΙΚΙΑΣ
. . .
redmine-999c68dd9-x7h2k 1/1 Running 0 6m40s
redmine-postgresql-0 1/1 Τρέξιμο 0 6m40s
Sinun on odotettava, kunnes molempien konttien tila on Running ja kaikki ovat valmiita 1/1, mikä minun tapauksessani kesti noin 6 minuuttia.
Nyt kaikki on valmista avata selain ja siirtyä uuteen asennukseemme:
Redmine στο valmis
Περίληψη
Kubernetes on monimutkainen työkalu sovellusten käyttöönottoon, mutta navigoimme tuon monimutkaisuuden läpi Helmin (ei tarkoituksellisesti) avulla ja asensimme luotettavan Redmine-asennuksen.
Voit löytää tämän ohjeen yhteenvedon seuraavasta git-reposta: https://github.com/lcofre/redmine-on-k8s. Voit vertailla omia tiedostoja, jos jäät jumiin.
Jätimme keskustelun ulkopuolelle joitain käsitteitä, koska ne olivat monimutkaisia tai selits oli pilviympäristökohtainen. Näihin kuuluvat sovelluksesi Liveness ja Readiness, saapuvien sähköpostien määritys ja skaalaaminen lisääntyneen kuorman käsittelemiseksi. Kerro meille alla, mikä kiinnostaa sinua eniten, jotta voimme keskustella siitä tulevassa ohjeessa.
Είδατε Redmine-päivitys; Helppoa.
Saat kaikki tehokkaat työkalut täydelliseen projectisuunnitteluun, hallintaan ja valvontaan yhdessä ohjelmistossa.