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

6/30/2020
8 minuter
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 várja, hogy telepítsük a Redmine-t a Kubernetes-re. Végül är 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 and klaszteren belülre inrányítja, és letrehoztuk a DNS-doain-t, a redminek8s.ddns.net-et. Det mesta kan vara kell állítanunk az HTTPS-t, észen állunk a Redmine telepítésére.


HTTPS en cert-manager segítségével

Bár a Redmine-t HTTP-ként är 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. En cert-manager mindezt automatizálja, beleértve a tanúsítványok megújítását, és még ingyenes tanúsítványokat is szerezhet. További információkat találhat a webhelyükön, de az alábbiakban mindent elmagyarázok, amire szüksége van.


En cert-manager telepítése

Végrehajtja and következő lépéseket and cert-manager telepítéséhez a klaszterben:

rodret repo lägg till jetstack https://charts.jetstack.io && helm repo-uppdatering

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

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


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

De flesta 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ó, 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

typ: ClusterIssuer

Metadata:

  namn: letsencrypt

spec:

  höjdpunkt:

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

    e-post:

    PrivateKeysCretref:

      namn: letsencrypt

    lösare:

    - http01:

        inträde:

          klass: nginx

Ezután alkalmazza a klaszterre och következő paranccsal:

kubectl applicera -f cluster-emittent.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-klass: 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.

De flesta på andra klassificerade HTTPS-filer. 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 automatikusan lezajlik a háttérben.


Redmine telepítése

Ez az, amire mindannyian vártunk. En 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ó

helm repo lägg till bitnami https://charts.bitnami.com/bitnami && helm repo-uppdatering

De ezúttal nem azonnal telepítjük, hanem konfigurációs fájlt hozunk létre, 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 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 helm 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:

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 en Redmine telepítve van, ezzel och 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 konfigurerar och telepítésünket och PostgreSQL használatára. Legalább egy jelszót är hozzá kell adnia az adatbázis eléréséhez, ahogy az alább látható

adatbázis típusa: postgresql

Mariadb:

  engedélyezve: hamis

PostgreSQL:

  engedélyezve: igaz

  postgresql adatbázis: Redmine

  postgresql felhasználónév: Redmine

  postgresql:

Kifejezetten mig 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 ny konfiguration

Az alábbi konfiguráció and 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 protokoll, és beállítjuk a hosztnevet, amit használtunk a DNS record letrehozásakor:

inträde:

  aktiverad: sant

  certManager: sant

  värdnamn: redminek8s.ddns.net

  tls: sant

  annoteringar:

    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.

De flesta telepíthetjük a Redmine-t a jat configurációnkkal:

helm installera Redmine -f Values.yaml bitnami / redmine

Ez a sor hasonló a korábban használt helm installera 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 få skidor - klocka

En parancs hasonlót fog visszaadni, mint ez:

NAMN KLAR STATUS ÅTERSTART Åldern

. . .

redmine-999c68dd9-x7h2k    1/1     Running   0          6m40s

redmine-postgresql-0 1/1 Running 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 procent vett igénybe.

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

En Redmine készen áll


Sammanfattning

En 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 szerint .

Om du vill förbjuda összefoglaltakat megatalálja och 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.

Är 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.

Försök till Easy Redmine-t 30 napos ingyenes próbaverzióban

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