Redmine i Kubernetes - Del 2: Installera Redmine

6/30/2020
דקות 8
Lukáš Beňa
זה חלק אחר של הסדרה על הפצת Redmine i Kubernetes. I den här artikeln kommer vi att ge הוראות כיצד להפיץ את האדם בהתקנה אוטומטית של Redmine.

Återberättelse Del 1

Vid det här laget ser du כנראה ההתקנה של Redmine på Kubernetes. Det är ju trots allt det du kom hit för, eller hur?

I Redmine på Kubernetes - Del 1: Förbereda miljön מותקן את בקר ה-Ingress, אשר מרכיבים את ה-Internetförfrågningar לכלול את הכלים, ויוצרים ב-DNS-domän, redminek8s.ddns.net. אתה צריך רק להגדיר HTTPS ואנחנו חוזרים על הפצת Redmine.


HTTPS med cert-manager

גם אם אנחנו יכולים לשמור את Redmine ב-HTTP יש HTTPS הפכו סטנדרטיים לאתרים, כך הרבה שרוב הרשתות ניתנות להגנה על סיכון ביטחוני בעת שימוש ב-HTTPS באתר.

כדי להפעיל את HTTPS הוא עניין כלל איננו טריוויאלי, אתה צריך לקנות אישור או לטעון את זה עד לאתר שלך, רק לאחר זמן ותהליכים חוזרים. מנהל האישורים האוטומטיים הכל, כולל תעודת אישור או תעודה. Du kan se mer information på האתר שלהם, men jag kommer att forklare allt du צריך veta härnäst.


Installera cert-manager

בצע את השלב הבא להתקנת מנהל האישורים באוסף:

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

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

כדי להירשם, יש אישור מנהל זמין או מתקין סדאן בגרסה האחרונה.


Anslut till Certificatautor

עכשיו צריך להיות ב-cert-manager כדי להתחבר ל-Certifikat. אנחנו באים להשתמש ב- LetsEncrypt, ללא אישור סמכות. צור först את זה fil (זכור att ersätta med en riktig e-mailadres) och döp den till cluster-issuer.yaml

apiVersion: cert-manager.io/v1alpha2

סוג: ClusterIssuer

מטא נתונים:

  שם: letsencrypt - -

מפרט:

  שִׂיא:

    שרת: https://acme-v02.api.letsencrypt.org/directory

    אימייל:

    privateKeySecretRef:

      שם: letsencrypt - -

    פתרונות:

    - http01:

        חודר:

          כיתה: nginx

Tillämpa sedan den på ditt kluster med

להחיל kubectl -f אשכול-מנפיק. yaml

גראטיס! Filen ovan är den första Kubernetes-konfigurationen vi כותבים ויישום על klustret. אתה אולי מתחבר ל-LetsEncrypt, אבל מתאר גם Ingress Controller שיוצר ב-Del 1 (קטן: nginx i סוף). Den här typen av konfiguration יש כמה ראדר עם בין-slag för att ange beroende av מאפיינים מסוימים עד אחרים. בוחנים את האישורים האלה כדי לקבל את האישור של הקבצים הבאים.

אתה מופעל עבור HTTPS. כאשר אנחנו מתקנים ואפליקציה, אפשר לפעול ב-HTTPS och Voila! תהליך זה יקבל תעודה אוטומטית ברקע.


התקנה של Redmine

This är vad vi alla har waitt på. אני יכול להתקין את Redmine בכמה שיטות שונות, אבל זה הכי נוח שיטה שנועד להשתמש בהלם. Precis som vi gjorde tidigare, först lägger vi till lagret där Redmine finns

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

אנחנו מתכננים את ההתקנה ישירות, אנחנו רוצים ליצור ולהתקין את ההגדרות של כמה התנהגות מותאמות כמו Redmine ska ha.

Vi kommer att separera alla konfigurationer i egna fragment men du lager dem alla i samma fil, en efter den andra. Döp file till values.yaml.

Alla Helm-applikationer יש en values.yaml-fil עם כל קונפרנציונליות אפשריים שיכולים לעשות עבור יישומים. כאשר אנו יוצרים את הערכים שלנו.yaml מגדירים את השינויים ב-ha. Alla värden som vi inte כולל את הקובץ שלנו כדי להיות אופרנדראדי ב-standardfilen.

כל הסטנדרטים יכולים למצוא גם על דף היישומים של הלם, https://hub.helm.sh/charts/bitnami/redmine. המשך ובדוק את כל ההגדרות.


Första administratörsanvändaren

RedmineAnvändarnamn: adminUser

RedmineLösenord:

זה שלב הוא כמו שצריך קצת להבין. זה אנחנו משתמשים ראשונים ב-Redmine, אז אנחנו רוצים להשתמש בכניסה בפעם הראשונה.

כאשר Redmine מתקין אתה יכול להגיע למשתמש הזה כדי להגדיר את ההתקנה החדשה.


מסדי נתונים של PostgreSQL

ההתקנה הסטנדרטית שלנו תדרוש את היצירה של mariadb-databas. מיקום זמין כדי להגדיר את ההתקנה שלנו באמצעות PostgreSQL. אתה צריך גם להוסיף למינימום את הסיסמה עבור הנתונים האלה

מסד נתונים: postgresql

מריאדב:

  מופעל: שקר

postgresql:

  מופעל: נכון

  postgresql בסיס נתונים: Redmine

  postgresql שם משתמש: Redmine

  postgresqlPassword:

אנחנו חייבים לדבר בצורה ברורה על ההתקנה שלנו כדי להתקין את MariaDB ביחד עם בסיס נתונים של PostgreSQL.


הגדרת שמות DNS

ההגדרות שלהלן הן אחרות של הגדרות DNS ב-DNS 1. אם אתה יכול להפעיל את ה-TLS, פרוטוקול מאחורי HTTPS, ו-ställer in värdnamnet ושימושי בעת יצירת ה-DNS-post שלנו:

חודר:

  מופעל: נכון

  certManager: נכון

  שם מארח: redminek8s.ddns.net

  tls: נכון

  הערות:

    kubernetes.io/ingress.class: nginx

    cert-manager.io/cluster-issuer: letsencrypt

אוקס אז על שני הקישור האחרון של האפליקציה שלנו עם בקר Ingress או עם מנפיק אשכולות שיוצר בעבר.

עכשיו אפשר להפיץ את Redmine עם ההגדרות המותאמות שלנו:

מתקין helm Redmine -f values.yaml bitnami/redmine

Den raden liknar andra helm installer rader vi בשימוש בעבר, men den här פעם מספקer vi en customd values.yaml. זה שיטת התאמה אישית של יישום הלמה.

אני צריך קצת יותר לטבול בכל מקרה, כיוון שיישום היישום הזה זמין. Du kan köra det här kommandot כדי לבדוק את הסטטוסים של האפליקציות מכילות:

kubectl få pods --watch

הפקודה מגיעה להחזיר משהו דומה:

NAMN KLAR STATUS OMSTART ÅLDER

. . .

redmine-999c68dd9-x7h2k    1/1     Kör   0          6m40s

redmine-postgresql-0 1/1 Kör 0 6m40s

אתה צריך להמתין עד לסטטוס של שתי התוכן הוא Kör och alla är redo 1/1, וזה אני מסתובב בערך 6 דקות.

זה הכל ברור בשביל לפתוח את הרשתות וההפצה שלנו:

Redmine är redo


סיכום

Kubernetes הוא הכלי המורכב עבור הפצת יישומים, אבל אנחנו יכולים לנווט את הגנום המורכבים עם העזרה של Helm (ingen ordlek avsedd) ו-Distributed ו-installation onlitlig av Redmine.

אתה יכול למצוא את המדריך הזה ב-git-repo הבא: https://github.com/lcofre/redmine-on-k8s. Känn dig fri att jämföra med dina filer om du fastnar.

Vi lämnade några begrepp utanför diskussionen eftersom de var komplexa eller förklaringen var molnspecific. ישנן תכונות של Liveness ו-Readiness עבור יישום, הגדרה של e-post בואכה ותקשורת לניהול מאמץ. אפשר לדעת מה יהיה מעוניין במדריך הזה.

Den ultimata Redmine-uppgraderingen? פשוט.

ניתן לקבל כלים מלאים לתכנון פרויקטים מושלם, ניהול ושליטה ב-End Software.

Prova Easy Redmine ב-30 ימים בחינם

תכונות מלאות, SSL-הגנה, תקצירים יומיים, ומקומות מרחביים