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

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

Tento problém se nachází na kopci Redmine a Kubernetes je velmi silný. 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 je 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, és létrehoztuk a DNS domain-t, a redminek8s.ddns.net-et. Většina má csak být kell állítanunk az HTTPS-t, és észen állunk a Redmine telepítésére.


HTTPS a správce certifikátů segítségével

Bár a Redmine-t HTTP-ként is használhatnánk, az HTTPS a weboldalak szabványossá valt, annyira, hogy a legtöbb böngésző figyelmeztetést ad ki, ha egy weboldal nem hasznal 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. A 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.


Certifikovaný manažer telepítése

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

kormidlo repo přidat jetstack https://charts.jetstack.io && Helm repo update

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 verzeóját.


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

Most 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

druh: ClusterIssuer

metadata:

  jméno: letsencrypt

spec:

  vrchol:

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

    e-mailem:

    privateKeySecretRef:

      jméno: letsencrypt

    řešitelé:

    - http01:

        vstup:

          třída: nginx

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

kubectl apply -f cluster-emiter.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 je (třída A: 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.

Většina már az Ön klasztere HTTPS-kopie. 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 vartunk. A 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ó

kormidlo repo přidat bitnami https://charts.bitnami.com/bitnami && Helm repo update

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 jelszó:

Ez a lépés annyira szükséges, máta könnyen érthető. Ez az első felhasználónk a Redmine-ban, amelyet az első bejelentkezéshez fogunk hasznalni.

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ázi

Alapértelmezés szerint a Helm telepítésünknek létre kell hoznia egy mariadb adatbázist. Proveďte konfiguraci a telepítés a 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ó

adatbázis typusa: postgresql

mariadb:

  engedélyezve: hamis

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 nová konfigurace

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, and beállítjuk a hosztnevet, amit hasznaltunk and DNS rekord létrehozásakor:

vstup:

  povoleno: true

  certManager: pravda

  název hostitele: redminek8s.ddns.net

  tls: pravda

  anotace:

    kubernetes.io/ingress.class: nginx

    cert-manager.io/cluster-issuer: letsencrypt

Az utolsó jako sorban összekapcsoljuk az alkalmazásunkat az Ingress Controllerrel a korábban létrehozott Cluster Issuerrel.

Většina telepíthetjük a Redmine-t a saját konfigurací:

helm install Redmine -f hodnoty.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:

kubectl get lusky - hodinky

A parancs hasonlót fog visszaadni, mint ez:

STAV JMÉNA PŘIPRAVENO VĚC RESTARTUJE

. . .

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

redmine-postgresql-0 1/1 Běh 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.

Nejvíce mysli na vše, co je dobré, mějte se na paměti a držte se dál:

Redmine készen áll


souhrn

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 hajtottunkne számára a.

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.

A co dělá Redmine frissíté? Egyszerű.

Szerezd meg az összes erőteljes eszközt a tökéletes projekttervezéshez, -kezeléshez és -irányításhoz egyetlen szoftverben.

Próbalja ki az Easy Redmine-t 30 napos ingyenes próbaverzióban

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