Dieser Beitrag gehört zu einer Serie!
Sollte dir der Beitrag gefallen haben schaue dir gerne noch die anderen Teile an.
So baust Du eine state of the art Infrastruktur mit Terraform! Part 1
Dieser Beitrag gehört zu einer Serie! Sollte dir der Beitrag gefallen haben schaue dir gerne noch die anderen Teile an. Table of Contents <h2>Was bedeutet

Github Actions & Google Cloud Run! Part 2
Dieser Beitrag gehört zu einer Serie! Sollte dir der Beitrag gefallen haben schaue dir gerne noch die anderen Teile an. Table of Contents <h2>Was ist

Skalierbarkeit, Microservices & DNS Einträge! Part 3
Dieser Beitrag gehört zu einer Serie! Sollte dir der Beitrag gefallen haben schaue dir gerne noch die anderen Teile an. Table of Contents Sollte alles
Table of Contents
Sollte alles wie gezeigt funktioniert haben, dann erstmal herzlichen Glückwunsch. Du hast gerade deine Applikation dockerisiert und mit den neuesten Cloud Technologien zum Laufen gebracht!
DNS Nameserver
Nun haben wir zwei Probleme
- deine Domain wird sehr whsl. nicht bei https://domains.google.com gehostet sein
- wir können keine direkte Subdomain vergeben
Ein DNS Server operiert in sogenannten Zonen. Diese kann man sich durch ein Beispiel einfach merken.
royalzsoftware.de ist unsere Domain. Sie stellt die erste Zone dar, die von den Nameservern unseres Domain Hoster Namecheap verwaltet wird.
app.royalzsoftware.de ist eine Sub-Domain, die einen anderen Nameserver hinterlegt hat. Die Verantwortlichkeit, einzelne Protokolle aufzulösen liegt nicht mehr bei Namecheap, sondern bei dem eigetragenen Server.
Wir wollen genau das. Wir wollen einen ganzen DNS Zonenbereich verwalten. Nun kann man entweder die Domain zu Google Domains migrieren und hat dann direkt “app.royalzsoftware.de” als Zieladresse ODER man bringt Namecheap bei, dass wir den Zonenbereich “app.royalzsoftware.de” von Google Cloud verwalten lassen möchten.

Wir haben nun zwei DNS Server. Einen für “royalzsoftware.de”, der erstmal alle externen Anfragen entgegen nimmt.
Der zweite ist die Google Cloud welcher nur für den Subdomainbereich “*.app.royalzsoftware.de” zuständig ist. Namecheap weiß also: alle anfragen die z.B. “giraffe123.app.royalzsoftware.de” muss ich an die Google Cloud weiterleiten und das kann unendlich so weiter geführt werden.
Der DNS Eintrag wird mittels Terraform über die Pipeline erstellt:
resource "google_dns_record_set" "a" { count = var.requires_load_balancer ? 1 : 0 name = "${var.env_tag}.app.${var.domain}." managed_zone = "${var.project_name}-app" type = "A" ttl = 300 rrdatas = [module.lb-http[0].external_ip] }
Skalierbarkeit
Skalierbarkeit ist ein zentrales Thema im IT Umfeld. Trends wie Microservices, bei dem eine große Anwendung in viele kleine geteilt wird, die jeder für sich eine Aufgabe bearbeiten, tragen positiv dazu bei.
Ein Beispiel: Ich persönlich komme vom Land und jedes Jahr kommt wieder das Thema Holz bearbeiten auf. Hier werden die, auf ca. zwei bis drei Meter ausgeasteten Holzstämme zuerst gespalten, mit einer Kreissäge in Kaminförmige Stücke geschnitten und anschließend zu einem großen Stapel aufgeschichtet.
Stell dir vor, drei Personen sind für die gleichen drei Prozesse zuständig.
Jeder Spaltet das Holz selbst. Jeder schneidet es selbst und jeder nimmt sich dann sein selbst geschnittenes Holzbrettchen und schichtet es auf.
Dadurch gäbe es nicht extreme Verzögerungen weil jeder gleichzeitig an die Kreissäge müsste, sondern es wäre auch extrem Unproduktiv wenn jeder alles macht.
Deswegen teilt man den Prozess in drei Teile auf. Einer, der das Holz mit der Maschine spaltet, ein anderer, der nur die Kreissäge betätigt und der letzte, der alles aufschichtet.
Dadurch kommen sie sich nicht in die Quere, die Abhängigkeiten werden entkoppelt und der Prozess ist skalierbar: Sollte der Holzschlichter sehr schnell mit seiner Arbeit, das Spalten aber extrem Zeitaufwendig sein, kann ich einfach eine zweite “Holzspalterinstanz” bereitstellen.
Microservices sind Teile einer großen Applikation, die in kleinste Bestandteile aufgebrochen wurden. Sie funktionieren analog zu gerade genanntem Beispiel.
Wie wir diese Microservices bauen und Cloud ready machen erfährst du in den weiteren Blogartikeln von uns.
Fazit
Ich hoffe diese Serie hat dir gefallen und du konntest einiges lernen. Solltest du über Probleme gestolpert sein, oder dir wäre es lieber, gleich alles von Experten machen zu lassen, dann ruf uns jederzeit gerne an oder kontaktiere uns per Mail.