Redmine Kubernetes-ben - 2. rész: Redmine telepítése
Ez a második része a Redmine telepítéséről Kubernetes-be szóló sorozatnak. Ebben a cikkben utasításokat adunk arra vonatkozóan, hogyan telepítsünk megbízhatóan Redmine-t.
Elbeszélés rész 1
Már biztosan várja, hogy telepítsük a Redmine-t a Kubernetes-re. Végül is erre jött, ugye;
A Redmine a Kubernetes-en - 1. rész: Környezet előkészítése című cikkünkben telepítettük az Ingress Controller-t, egy olyan komponenst, amely az internetes kéréseket a klaszteren belülre irányítja, είναι létrehoztuk ένας τομέας DNS-t, ένας redminek8s.dns. Το μεγαλύτερο μέρος είναι κελλ állítanunk az HTTPS-t, és készen állunk a Redmine telepítésére.
Το HTTPS είναι ένα πρόγραμμα διαχείρισης πιστοποιητικών
Bár a Redmine-t HTTP-ként is használhatnánk, az HTTPS a weboldalak szabványossá vált, annyira, hogy a legtöbb böngésző figyelmeztetést ad ki, ha egy weboldal nem használ.
Az HTTPS engedélyezése általában nem triviális feladat, mivel tanúsítványt kell vásárolni és feltölteni az oldalra, majd bizonyos idő után meg kell újítani, majd megismétételi a fold. Ένας πιστοποιημένος διαχειριστής είναι αυτοματοποιημένος, ελέγχεται και μεγιστοποιημένος έλεγχος, καθώς και ένας λογιστικός διαχειριστής. További információkat találhat α webhelyükön, de az alábbiakban mindent elmagyarázok, amire szüksége van.
Τηλεπιτεία πιστοποιημένου μάνατζερ
Βεβαιωθείτε ότι ο διαχειριστής είναι πιστοποιημένος με τηλεφωνήματα:
τιμόνι repo προσθέστε jetstack https://charts.jetstack.io && helm repo ενημέρωση
helm install cert-manager jetstack / cert-manager - set installCRDs = true
Először hozzáadja a cert-manager helyét, majd telepíti και legfrissebb verzióját.
Kapcsolódás a tanúsítványkibocsátóhoz
Τα περισσότερα azt kell utasítanunk a cert-managernek, hogy csatlakozzon a választott tanúsítvány-szolgáltatóhoz. Az ingyenes tanúsítványkibocsátó, ένα LetsEncrypt használatára fogunk összpontosítani. Először hozza létre ezt a fájlt (ne felejtse el a helyére valódi e-mail címet írni), és nevezze el cluster-issuer.yaml-nak:
apiVersion: cert-manager.io/v1alpha2
είδος: ClusterIssuer
μεταδεδομένα:
όνομα: letsencrypt
προδιαγραφή:
ακμή:
υπηρέτης: https://acme-v02.api.letsencrypt.org/directory
ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ:
privateKeySecretRef:
όνομα: letsencrypt
επιλυτές:
- http01:
είσοδος:
τάξη: nginx
Ezután alkalmazza a klaszterre a következő paranccsal:
kubectl apply -f cluster -issuer.yaml
Gratulálok! Az előbbi fájl az első kubernetes konfiguráció, amelyet írunk és alkalmazunk a klaszterre. Észreveheti, hogy bemutatja, hogyan kell csatlakozni a LetsEncrypt-hez, de leírja az első részben létrehozott Ingress Controller-t is (A class: nginx végén). Ez a konfigurációtípus néhány sorral rendelkezik szóközökkel, hogy a tulajdonságok függőségét másoktól jelezze. Tartsa meg ezeket a szóközöket, ahogy azok meg vannak mutatva, hogy biztosítsa a fájl helyes olvasását és alkalmazását.
Τα περισσότερα πλήκτρα HTTPS-képes. Amikor telepítünk egy alkalmazást, utasíthatjuk, hogy HTTPS-ként működjön, és voilà! Az egész tanúsítvány megszerzési folyamat αυτόματηusan lezajlik a háttérben.
Redmine telepítése
Ez az, amire mindannyian vártunk. Ένα Redmine telepítésének tobbféle módja van, de messze a legkényelmesebb a Helm használata. Ahogy korábban már tettük, először hozzáadjuk a repository-t, ahol a Redmine található
helm repo προσθέστε bitnami https://charts.bitnami.com/bitnami && helm repo ενημέρωση
Από την εκάστοτε αζωνική τηλεφωνία, τη διαμόρφωση των μοντέλων του hozunk létre, το hogy megadja και το Redmine-nek a kívánt testreszabott viselkedést.
Az összes konfigurációt saját szakaszukba szétválasztjuk, de ugyanabba a fájlba helyezzük őket, egymás után. A fájlt nevezze el values.yaml-nak.
Minden Helm alkalmazásnak van egy values.yaml fájlja, amely tartalmazza az alkalmazáshoz lehetséges összes konfigurációt. Amikor saját values.yaml fájlt hozunk létre, meghatározzuk a kívánt változásokat. Az összes olyan érték, amelyet nem tartalmazunk a fájlunkban, az alapértelmezett fájlban marad.
Az összes alapértelmezett érték megtalálható a τιμόνι alkalmazás oldalán, https://hub.helm.sh/charts/bitnami/redmine. Menjen előre és ellenőrizze az összes konfigurációt.
Első adminisztrátori felhasználó
Redmine felhasználónév: adminUser
Redmine jelszó:
Ez a lépés annyira szükséges, μέντα könnyen érthető. Ez az első felhasználónk a Redmine-ban, amelyet az első bejelentkezéshez fogunk használni.
Amikor a Redmine telepítve van, ezzel a felhasználóval hozzáférhet hozzá, hogy konfigurálja az új telepítést.
PostgreSQL adatbázis
Alapértelmezés szerint a Helm telepítésünknek létre kell hoznia egy mariadb adatbázist. Ehelyett ρυθμίστε μια τηλεπικοινωνιακή εγκατάσταση μιας PostgreSQL έχει εγκατασταθεί. Legalább egy jelszót is hozzá kell adnia az adatbázis eléréséhez, ahogy az alább látható
adatbázis típusa: postgresql
mariadb:
engedélyezve: χαμίς
postgresql:
engedélyezve: igaz
postgresql adatbázis: Redmine
postgresql felhasználónév: Redmine
postgresql jelszó:
Kifejezetten meg kell mondani a telepítésünknek, hogy nem akarjuk, hogy a MariaDB telepítve legyen a PostgreSQL adatbázis konfigurációjával együtt.
Ρύθμιση νέου DNS
Az alábbi konfiguráció a DNS konfiguráció másik oldala, amit az 1. részben csináltunk. Ahogy látható, engedélyezzük a TLS-t, ami az HTTPS mögötti protokoll, és beállítjuk a hosztnevet, amit használtunk a DNS regord létrehozásakor:
είσοδος:
ενεργοποιημένο: true
certManager: αλήθεια
όνομα κεντρικού υπολογιστή: redminek8s.ddns.net
tls: αλήθεια
σχολιασμοί:
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: letsencrypt
Az utolsó két sorban összekapcsoljuk az alkalmazásunkat az Ingress Controllerrel είναι ένα korábban létrehozott Cluster Issuerrel.
Οι περισσότερες ρυθμίσεις ρύθμισης ενός Redmine-t a saját:
helm εγκαταστήστε Redmine -f Values.yaml bitnami / redmine
Ez a sor hasonló a korábban használt τιμόνι εγκατάστασης sorokhoz, de ezúttal egyéni values.yaml-t adunk meg. Ez a módja annak, hogy testreszabjunk bármilyen Helm alkalmazást.
Még türelemre van szükségünk, mivel az alkalmazás létrehozása néhány időt vesz igénybe. Ezt a parancsot futtathatjuk, hogy ellenőrizzük az alkalmazás konténereinek állapotát:
kubectl πάρτε λοβό - ρολόι
A parancs hasonlót fog visszaadni, mint ez:
ΟΝΟΜΑ ΕΤΟΙΜΟΙ ΚΑΤΑΣΤΑΣΕΙΣ ΕΠΑΝΑΦΟΡΑ ΗΛΙΚΙΑΣ
. . .
redmine-999c68dd9-x7h2k 1/1 Running 0 6m40s
redmine-postgresql-0 1/1 Τρέξιμο 0 6m40s
Várni kell, amíg mindkét konténer állapota Running és mindkettő készen áll 1/1, ami az én esetemben kb. 6 percet vett igénybe.
Τα περισσότερα minden készen áll arra, hogy megnyissuk a böngészőt és elérjük az új telepítésünket:
Ένα Redmine Készen áll
Περίληψη
A Kubernetes egy összetett eszköz az alkalmazások telepítéséhez, de a Helm (nem szó szerint) segítségével navigáltunk ebben a bonyolultságban és megbízható ajtáminkést.
Az ebben a how-to-ban összefoglaltakat megtalálja a következő git repo-ban: https://github.com/lcofre/redmine-on-k8s. Ha elakad, szabadon összehasonlíthatja a saját fájljaival.
Azért hagytunk ki néhány fogalmat a vitából, mert bonyolultak voltak vagy a magyarázat felhőspecifikus volt. Köztük szerepelnek az alkalmazás Liveness és Readiness-je, a bejövő levelek konfigurációja és a skálázás a nagyobb terhelés kezelésére. Kérjük, jelezze nekünk az alábbiakban, hogy mi érdekli a legjobban, hogy a jövőben megvitassuk.
Az utolsó Redmine frissítés; Egyszerű.
Szerezd meg az összes erőteljes eszközt a tökéletes projekttervezéshez, -kezeléshez és -irányításhoz egyetlen szoftverben.