Redmine w Kubernetes - Частина 2: Встановлення Redmine

6/30/2020
8 minut
Лукас Бена

Це друга частина серії статей про розгортання Redmine w Kubernetes. У цій статті ми надамо інструкції щодо того, цій статті надійну установку Redmine.

Підрахунок Частина 1

Zagraj w Redmine w Kubernetes. Зрештою, це те, за чим Ви прийшли, чи не tak?

В Redmine na Kubernetes - Частина 1: Підготовка середовища, mój встановили Ingress Controller, компонент для перенаправлення інтернет-запитів всередині Вашого кластера, і створили DNS-домен redminek8 s.ddns.net. Użyj tego narzędzia, aby korzystać z protokołu HTTPS w moim urządzeniu do obsługi Redmine.


HTTPS lub menedżer certyfikatów

Mój komputer jest dostępny w Redmine za HTTP, HTTPS, jest dostępny dla wielu użytkowników, jest dostępny dla każdego użytkownika опереджають Вас про проблему з безпекою, коли HTTPS bez podglądu веб-сайтом.

Зазвичай увімкнення HTTPS nie jest używany, оскільки Вам потрібно купити сертифікат і завантажити його на свій сайт, оновити його через певний час і повторити процес. Cert-manager автоматизує все це, включаючи оновлення сертифікатів, і навіть отримує безкоштовні сертифікати. Ви можете побачити більше інформації на їхньому сайті, але я поясню все, що Вам потрібно знати далі.


Menedżer certyfikatów Встановлення

Виконайте наступні кроки, щоб встановити cert-manager у Вашому кластері:

repozytorium sterów dodaje jetstack https://charts.jetstack.io Aktualizacja repozytorium sterów &&

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

Спочатку Ви додаєте сховище, де є cert-manager, а потім встановлюєте його останню версію.


Підключення до Urząd certyfikacji

Użyj naszego menedżera certyfikatów, aby uzyskać dostęp do mojego certyfikatu. Mój будемо використовувати LetsEncrypt, pierwszy bezpieczny certyfikat. Спочатку створіть цей файл (не забудьте замінити на реальну адресу електронної пошти) і назвіть його Cluster-issuer.yaml

Wersja api: cert-manager.io/v1alpha2

typ: ClusterIssuer

metadane:

  nazwa: letsencrypt

odpowiedź:

  kulminacja:

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

    elektronna pozycja:

    prywatnyKeySecretRef:

      nazwa: letsencrypt

    vicонувачі:

    - http01:

        język:

          Klas: nginx

Потім застосуйте його до Вашого кластеру за допомогою

kubectl stosuje -f klaster-emiter.yaml

Witam! Наведений вище файл, є першою conфігурацією kubernetes, яку ми написали і застосували до кластера. Ви могли помітити, що він показує, як підключитися do LetsEncrypt, ale він також описує контролер входу, який м и створили в частині 1 (klasa: nginx в кінці). Цей тип конmentірраццї має деякі рядки з проtoś Залиште ці пробіли так, як показано, щоб переконатися, що файл читається і застосовується належним cynom.

Тепер Ваш кластер підтримує HTTPS. Mój dostęp, mój dostęp, mój dostęp, mój dostęp, dostęp do protokołu HTTPS voila! Весь процес отримання сертифікату буде виконано автоматично за лаштунками.


Wersja Redmine

Це те, на що ми всі чекали. Moje narzędzie Redmine кількома різними способами, але найзручніший - використовувати Helm.Як ми вже робили рані ше, спочатку ми додаємо сховище, де знаходиться Redmine

repozytorium sterów dodaj bitnami https://charts.bitnami.com/bitnami Aktualizacja repozytorium sterów &&

Але цього разу замість того, щоб одразу встановлювати, ми створимо конфігураційний файл, щоб вказати дея ку користувацьку поведінку, яку ми хочемо, щоб мав Redmine.

Ми розділимо всі конфігурації на окремі розділи, але Ви помістите їх в один файл, одну за одною. Otwórz plik wartości.yaml.

Всі додатки Helm może файл wartości.yaml z усіма можливими конфігураціями, які можуть бути зроблені в додатку. Коли ми створюємо власний файл wartości.yaml, ми визначаємо зміни, які ми хочемо внести. Будь-яке значення, яке ми не включимо в наш файл, буде залишено таким, яким воно є у файлі за замов чуванням.

Всі значення за замовчуванням також можна знайти на сторінці додатка ster, https://hub.helm.sh/charts/bitnami/redmine. Перейдіть і перевірте всі конфігурації.


Перший адміністраторський користувач

Ім'я користувача Redmine: adminUser

Пароль Redmine:

Цей крок настільки ж необхідний, наскільки і простий для розуміння. Це наш перший користувач у Redmine, який ми будемо використовувати для входу в систему вперше.

Коли Redmine буде встановлено, Ви зможете отримати доступ до нього під цим користувачем, щоб налаштувати Вашу nov u ustanowca.

Zacznij od PostgreSQL

За замовчуванням наша установка Helm потребує створення бази даних mariadb. Użyj mojego narzędzia do przeglądania PostgreSQL. Вам також потрібно додати хоча б пароль для доступу до цієї бази даних, як показано нижче

Typ źródła: postgresql

mariadb:

 uвімкнено: помилка

postgresql:

  uвімкнено: правда

  Źródło postgresql: Redmine

  Moja kopia postgresql: Redmine

  Przykład postgresql:

Нам потрібно чітко вказати програмі встановлення, що ми не хочемо, щоб MariaDB встановлювалася разом з конфігура użyj tego narzędzia PostgreSQL.


Otwórz DNS

Наведене нижче налаштування є другою частиною налаштування DNS, яке ми виконали в Частині 1.Як Ви бачите, ми ввімкнули TLS, протокол, що лежить w основі HTTPS, w встановили ім'я хоста, яке ми використовували при створенні нашого DNS- odpowiedź:

język:

  uвімкнено: правда

  certManager: правда

  Jestem na: redminek8s.ddns.net

  tls: правда

  anотації:

    kubernetes.io/ingress.class: nginx

    cert-manager.io/cluster-issuer: Letencrypt

Tacoж в останніх двох рядках ми пов'язали наше додаток з контролером Ingress та з Cluster Issuer, який ми створили раніше.

Тепер ми можемо розгорнути Redmine зі нашою користувацькою конфігурацією:

ster instaluje Redmine -f values.yaml bitnami / redmine

Цей рядок схожий на інші рядки helm install, які ми використовували раніше, але цього разу ми надаємо користувацький wartości.yaml.Таким чином можна налаштувати будь-який додаток Helm.

Нам потрібно ще трохи терпіння, оскільки створення додатка займає деякий час. Ви можете виконати цю команду, щоб перевірити стан контейнерів Вашого додатка:

kubectl dostać strąki - zegarek

Команда поверне схоже на це:

ІМ'Я ГОТОВНІСТЬ СТАТУС ПЕРЕЗАПУСКИ ВІК

. . .

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

redmine-postgresql-0 1/1 Bieganie 0 6m40s

Вам потрібно зачекати, доки статус для обох контейнерів буде Running, а все готове 1/1, що в моєму випадку зайня ло близько 6 хвилин.

Тепер все готово, щоб відкрити браузер та перейти до нашого нового розгортання:

Redmine готовий


Wyniki

Kubernetes - це складний інструмент для розгортання додатків, але ми пройшли через цю складність за допомогою Helm ( без жартів) та розгорнули надійну установку Redmine.

Ви можете знайти короткий опис цієї інструкції в наступному сховищі git-репозиторію: https://github.com/lcofre/redmine-on-k8s.Не соромтеся порівнювати з Вашими файлами, якщо Ви застрягли.

Ми залишили деякі поняття поза обговоренням, тому що вони були складними або пояснення були специфі чними для хмарних технологій. Серед них - життєздатність і готовність Вашого додатку, налаштування вхідних листів і масштабування для ро боти з більшим навантаженням. Будь ласка, повідомте нам нижче, що Вас найбільше цікавить, щоб ми могли обговорити це в майбутньом jesteś materialny.

Ostania wersja Redmine? Легко.

Отримайте всі потужні інструменти для ідеального планування, управління та контролю проєкту в одному програм ному забезпеченні.

Pobierz Easy Redmine na 30-dniową wersję oprogramowania

Повнофункціональний, захищений SSL, щоденне резервне копіювання, у вашій геолокації