Redmine w Kubernetes – Deel 1: Voorbereiden van de omgeving

6/22/2020
6 minut
Łukasz Beňa.

W deze tweedelige serie zullen wdrażamy Redmine w Kubernetes. Możemy skorzystać z narzędzi i werkwijzen gebruiken metals doel het implementeren van een veerkrachtige instantie z Redmine za pośrednictwem HTTPS.

We hebben deze how-to in twee delen verdeeld om ons eerst te richten op het instalator narzędzi i komponentów die de Redmine-implementatie zal gebruiken. Maar maak je geen zorgen over complexiteit. Zelfs als je nieuw bent in Kubernetes, zal het een begrijpelijke uitleg zijn.

Deze handleiding to geschreven om agnostycyzm chmurowy te zijn, dus we hebben opzettelijk alle vermeldingen van de cloud die we hebben gebruikt weggelaten. Laat een reagują achter als je kunt raden welke cloud my hebben gebruikt en vertel ons welk szczegóły het verklapte. We raden je aan om de Kubernetes-service te gebruiken die je cloud biedt, omdat deze goed geïntegreerd is met andere Services die je cloud ook biedt.

Omgevingen zoals microk8s of minikube worden hier niet beschouwd omdat ze wat meer configuratie vereisen die buiten de Scoube van deze handleiding valt. In het bijzonder vereist onze Konfiguracja HTTPS Klaster danych z otwartym pakietem adresów IP.


Laten możemy Helm gebruiken

Kubernetes to złożone narzędzie do obsługi orkiestracja kontenerowa. Er zijn veel concepten die we moeten leren om aan de slag te gaan. Gelukkig jest naszym projektem genaamd Ster dat het Abstractieniveau biedt dat we nodig hebben. In hun eigen woorden "Als my de dingen goed deden, konden gebruikers Helm installeren en binnen enkele minuten produktieklare off-the-shelf-componenten installeren."

Los van de redenen voor hun namen (het vertelt allemaal het verhaal van een metafoor, Helm, Kubernetes en Containers) vereenvoudigt helm de installatie echt terwijl het ruimte biedt om het komponent aan onze behoeften aan te passen. We zullen Helm 3 gebruiken, hun nieuwste en nog eenvoudigere versie.

Als je de Cloud Shell van je cloudprovider gebruikt, is de kans groot dat Helm 3 al beschikbaar is, maar zo niet, dan kun je het installeren volgens de handleiding die de Helm-documentatie biedt, Helm.sh/docs/intro/install/. Jestem moet al toegang hebben tot je klaster vanaf de opdrachtregel die je gebruikt. Twój dostawca usług chmurowych może zająć się tym, co możesz zrobić.


Instalator kontrolera wejścia

Jest to pierwszy komponent, który możemy umieścić w klastrze zullen installeren, a który jest pierwszym modułem Kubernetes-concept, który możemy wykorzystać. Een Ingress-controller bevindt zich bij de ingang van uw klaster, ontvangt alle webverzoeken en stuurt ze drzwi naar het interne komponent dat verantwoordelijk is voor het beantwoorden van het verzoek. In eerste instantie zal er niemand klaar zijn om te antwoorden, maar wanneer we Redmine installeren, wordt het toegevoegd als een bestemming voor de verzoeken.

Kubernetes biedt de Sterownik Ingress NGINX die we zullen gebruiken. Hun documentatie legt uit hoe you het kunt installeren met behulp van Helm:

repozytorium sterów dodaje ingress-nginx https://kubernetes.github.io/ingress-nginx Aktualizacja repozytorium sterów &&

ster instaluje ingress-controller ingress-nginx / ingress-nginx

Pierwszy opdracht voegt het repozytorium aplikacji toe waar de Ingress-controller zich bevindt, terwijl de tweede deze installeert w uw klastrze. Wanneer het klaar is, zal de opdracht enkele informatie afdrukken om te Beginnen, inclusief motyka u Otwarte adresy IP danych kontrolera są toegewezen count verkrijgen:

kubectl uzyskać usługi - zegarek

Het wynikaat zal iets vergelijkbaars zijn:

NAZWA TYP KLASTER-IP PORT (y) ZEWNĘTRZNEGO IP WIEK

LoadBalancer 10.0.115.117 kontrolera nginx 89.68.23.33 80 / TCP, 443 / TCP 5m22s

Cluster-admission Controller ClusterIP 10.0.135.226 443 / TCP 5m22s

kubernetes ClusterIP 10.0.0.1 443 / TCP 44 godz

Niech op het EXTERNAL-IP, chcemy hebben het nodig in de volgende stap. Het kan gebeuren dat in plaats van een IP de waarde die u daar krijgt Jest. Het duurt nawet voordat de cloud Otwórz openbaar IP verkrijgt i toewijst aan uw klaster. Wacht gewoon nog een paar seconden en het IP zou beschikbaar moeten zijn.


Utwórz rekord A DNS

Nu je het IP hebt, kun je gewoon naar een przeglądarce gaan en zien hoe je klastra na ich reageert. Natuurlijk zal je klastra, omdater nog geen applicatie jest geïnstalleerd, antwoorden met een "404 Not Found" dla połączenia. Tworzymy domenę DNS, która pozwala na wykorzystanie adresu IP, Hopelijk gemakkelijker te onthouden dan een lijst met cijfers en punten.

Hoe je een internetdomein voor je Redmine kunt maken, Hangt sterk af je domeinprovider, maar in alle gevallen maak je uiteindelijk een DNS A-record aan dat een domeinnaam koppelt aan je IP. Zie de vogende schermafbeelding van de DNS-provider no-ip.com als referentie.

Utworzony rekord A DNS

De gegevens die je moet invullen, zijn zoals je zou verwachten, de DNS-naam en het IP. No-IP to precies, w którym mamy nodig hebben om de creatie van een domein te ilustreren, maar je hebt waarschijnlijk een andere DNS-dostawca gekozen z zult dat doen. Het proces to vrijwel hetzelfde bij allemaal.

Het duurt Even voordat het nieuwe record is verspreid, dus je kunt ping gebruiken om te controleren wanneer het IP poprawne słowot opgelost:

pinguj redminek8s.ddns.net


Następne kroki

Nu we een ingress-controller en een DNS-domein hebben, is het enige wat nog rest, Skonfiguruj HTTPS na swojej stronie i zainstaluj Redmine. Korzystamy z PostgreSQL jako jednej z baz danych, którą można utworzyć, a następnie można ją wykorzystać do wszystkich konfiguracji za pomocą Helma.

Blijf op de hoogte voor Redmine w Kubernetes Część 2: Instalowanie Redmine.

Ostatnia aktualizacja Redmine? Makkelijk.

Wszystkie narzędzia krachtige umożliwiające doskonałe planowanie projektów, -beheer en -controle w jednym oprogramowaniu.

Probeer Easy Redmine 30 dni za darmo

Pełne funkcje, SSL-beveiligd, kopie zapasowe dagelijkse, w uw geografische locatie