Redmine Kubernetes-ben - 2. rész: Redmine telepítése

6/30/2020
דקות 8
Lukáš Beňa -> Lukáš Beňa

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 varja, hogy telepítsük a Redmine-t a Kubernetes-re. Végül isre 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 componenst, amely az internetes kéréseket a klaszteren belülre inrányítja, es letrehoztuk a DNS-t domain-t, a redminek8s.ddns.net-et. רוב האפשרויות הבאות הן כאל טלפון עם HTTPS-t, es szen állunk ו-Redmine telepítésére.


HTTPS הוא מנהל אישורים

Bár a Redmine-t HTTP-ként הוא 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 HTTPS-t.

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ételni a folyamatot. מנהל תעודה מיושם אוטומטית, שומר על תקינותו, וזו הזדמנות טובה. További információkat találhat a webhelyükön, de az alábbiakban mindent elmagyarázok, amire szüksége van.


טלפונית למנהל תעודה

ותחזוקת הסמכה ומנהלת התעודות טלפונית ללימודים:

הגה ריפו להוסיף https://charts.jetstack.io & עדכון ריפו על ההגה

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

Először hozzáadja a cert-manager helyét, majd telepíti and legfrissebb verzióját.


Kapcsolódás a tanúsítványkibocsátóhoz

רוב אזט קל אוטאסיטנונק א cert-managernek, hogy csatlakozzon a választott tanúsítvány-szolgáltatóhoz. Az ingyenes tanúsítványkibocsátó, a 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 -f אשכול-מנפיק. 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 Voila! Az egész tanúsítvány megszerzési folyamat automatikusan lezajlik a háttérben.


Redmine telepítése

עז אז, אמירי מינדניאן וורטונק. Redmine telepítésének többfé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ó

הגה ריפו להוסיף ביטנמי https://charts.bitnami.com/bitnami & עדכון ריפו על ההגה

De ezúttal nem azonnal telepítjük, hanem konfigurációs fájlt hozunk letre, hogy megadja a 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 configurá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 megatalálható a helm alkalmazás oldalán, https://hub.helm.sh/charts/bitnami/redmine. Menjen előre és ellenőrizze az összes configurációt.


Első adminisztrátori felhasználó

Redmine felhasználónév: adminUser

Redmine jelszó:

Ez a lépés annyira szükséges, mint 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 configurálja az új telepítést.


Adatbázis של PostgreSQL

Alapértelmezés szerint a Helm telepítésünknek létre kell hoznia egy mariadb adatbázist. Ehelyett configuráljuk and telepítésünket and PostgreSQL használatára. Legalább egy jelszót is hozzá kell adnia az adatbázis eléréséhez, ahogy az alább látható

תכונת עדכון: postgresql

מריאדב:

  engedélyezve: חמיס

postgresql:

  engedélyezve: igaz

  postgresql adatbázis: Redmine

  postgresql felhasználónév: Redmine

  postgresql jlszó:

Kifejezetten meg kell mondani a telepítésünknek, hogy nem akarjuk, hogy a MariaDB telepítve legyen a PostgreSQL adatbázis configurációjával együtt.


DNS nv configuráció

Az alábbi configuráció a DNS configurá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 protocol, és beállítjuk and hostnevet, amit használtunk a DNS rekord letrehozásakor:

חודר:

  מופעל: נכון

  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 és a korábban létrehozott Cluster Issuerrel.

רוב מכשירי ה-Redmine-t aját configurációnkkal:

ההגה התקן Redmine -f Values.yaml bitnami / redmine

Ez a sor hasonló a korábban használt helm install 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:

קבל תרמילים - שעון

A parancs hasonlot 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 אחוז ודאי.

Most minden készen áll arra, hogy megnyissuk a böngészőt és elérjük az új telepítésünket:

A 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ó telepítést hajtottunk a Redáttunk szerint.

אז ebben a how-to-ban összefoglaltakat megatalá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őspecificus volt. Köztük szerepelnek az alkalmazás Liveness és Readiness-je, a bejövő levelek configurá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.

האם התוכנה 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.

פרובאלja ki az Easy Redmine-t 30 napos ingyenes próbaverzióban

Minden funkció elérhető | SSL tanúsítvány | Napi mentesek