Nine Kubernetes Engine
Nine Kubernetes Engine, oder NKE, ist ein komplett gemanagtes Kubernetes-Angebot mit Betrieb in Nine Datacentern in der Schweiz, ergänzt von zusätzlichen Services, damit du dich ganz auf die Entwicklung deiner Applikation konzentrieren kannst.
Erste Schritte
Um NKE einzurichten, logge dich bitte über unser Cockpit ein. Wähle dann Managed Kubernetes aus unserer Produkt-Übersicht aus und erstelle deinen Cluster über Add Cluster. Bei der Erstellung kann es einige Minuten dauern, bis alle Services deployed sind. Für den Zugriff auf deinen Cluster schau dir bitte unseren Artikel zum Cluster Login an.
Standorte
NKE ist an folgenden Standorten verfügbar:
| API / Cockpit Name | Name | Standort | Notizen |
|---|---|---|---|
| nine-es34 | NTT Zürich 1 | Rümlang | |
| nine-cz41 | ColoZüri 4.1 | Altstetten, Zürich | Neue Ressourcen können nicht mehr in diesem Standort erstellt werden. |
Subnetze an jedem Standort
Alle nine Kubernetes Engine Cluster Nodes besitzen standardmässig öffentliche IPs. Jeder Pod benutzt die öffentliche IP Adresse des Nodes auf welchem er läuft, wenn Verbindungen zu externen System (ausserhalb des Clusters) initiiert werden (Kubernetes Standard Netzwerk-Model.) Die verwendeten IP-Subnetze hängen vom Standort des Nine Kubernetes Engine-Clusters ab. Du kannst eine aktuelle Liste der Subnetze im JSON-Format über unseren insight service beziehen:
| Location | API Endpoint |
|---|---|
| alle Subnetze | https://insight.nineapis.ch/subnets |
| nine-es34 | https://insight.nineapis.ch/subnets/nine-es34 |
| nine-cz41 | https://insight.nineapis.ch/subnets/nine-cz41 |
Bitte beachte, dass neue Subnetze jederzeit hinzugefügt werden können.
Beispiel
Mit dem Kommandozeilentool curl kannst du eine aktuelle Liste aller Subnetze anfordern:
curl https://insight.nineapis.ch/subnets
{"data":{"nine-cz41":["94.230.211.128/26"],"nine-es34":["178.209.59.64/26","185.88.237.64/26","5.148.184.0/26"]}}
Node Pools
Wie viele andere Kubernetes-Angebote auch werden Nodes bei NKE in Pools angelegt. Ein Pool wird über den Namen und Maschinentyp, die Harddisk-Grösse sowie die Anzahl an Nodes definiert. Node-Pools ermöglichen eine vereinfachte Isolierung verschiedener Workloads voneinander auf der Node-Ebene. Sie können ausserdem individuell erweitert oder verkleinert werden.
NKE verwendet drei nine-standard-2 als Control plane Nodes. Je nach den konfigurierten Services und der Nutzung des Clusters kann es erforderlich sein, den Machinentyp dieser Nodes anzupassen. Sollte dies notwendig sein, werden wir proaktiv mit dir Kontakt aufnehmen.
Maschinentypen
NKE bietet die folgenden Maschinentypen:
| Name | vCPU | RAM (GiB) | Monatliche Kosten |
|---|---|---|---|
| nine-standard-1 | 1 | 4 | |
| nine-standard-2 | 2 | 8 | |
| nine-standard-4 | 4 | 16 | |
| nine-highmem-2 | 2 | 16 | |
| nine-highmem-4 | 4 | 32 | |
| nine-highcpu-2 | 2 | 4 | |
| nine-highcpu-4 | 4 | 8 | |
| nine-highcpu-8 | 8 | 16 |
Benutzerdefinierte Maschinentypen
Falls du einen Maschinentyp benötigst, der hier noch nicht definiert ist,
kannst du das Format nine-custom-<vcpu>-<ram(MB)> verwenden. Zum Beispiel
gibt der Typ nine-custom-12-32768 einen Maschinentyp mit 12 vCPUs und 32 GiB
RAM, was gleichzeitig die maximale Konfiguration darstellt. Das maximale
Verhältnis von RAM (GiB) zu vCPU beträgt 8, das minimale 2. Wenn du grössere
Maschinentypen benötigst, zögere nicht, uns zu kontaktieren.
Die daraus resultierenden monatlichen Kosten können im Preiskalkulator oder in der untenstehenden Tabelle berechnet werden.
| zusätzliche Ressourcen | Monatliche Kosten |
|---|---|
| Pro vCPU | |
| Pro 1 GiB RAM | |
| Pro 10 GiB Speicherplatz |
Load Balancing
NKE unterstützt standardmässig Services des Typs Load Balancer. Nachdem dein Service erstellt ist, wird ihm für seine Betriebsdauer eine öffentliche IPv4-Adresse zugewiesen.
Folge einfach den Anweisungen in der Kubernetes Dokumentation, um einen neuen Load Balancer zu erstellen.
In den meisten Anwendungsfällen stellt ein Ingress die einfachere Alternative dar, wenn du nur HTTP(S) Requests in deinen Cluster leitest. Schau dir dazu unsere Ingress Dokumentation an.
Persistent Storage
Persistent Storage kann durch einen PersistentVolumeClaim angefordert werden. Unser Controller kümmert sich um die Erstellung des PersistentVolume und fügt es zu deinem Pod hinzu.
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: example
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
storageClassName: standard
Unser Controller unterstützt die Online-Expansion des PVC. Bearbeite dazu einfach den entsprechenden PVC und erhöhe die Speicheranforderungen nach Belieben. Alle Volumes sind durch Data Encryption at Rest (DARE) gesichert und verwenden AES-256-Verschlüsselung, um gespeicherte Daten vor unbefugtem Zugriff zu schützen.
Read Write Many (RWX)
⚠ Hinweis: RWX ist aktuell nur im Standort nine-es34 verfügbar.
Sofern du einen Anwendungsfall für RWX Speicher hast, kannst du ein Volume mit der files Storage Class erstellen. Im Hintergrund wird ein NFS Volume erstellt, welches von mehreren Pods gleichzeitig gemounted werden kann. In den meisten Fällen raten wir aber von RWX ab und empfehlen wenn möglich object
storage zu verwenden.
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: example
namespace: example
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 5Gi
storageClassName: files
Unser Controller unterstützt die Online-Expansion des PVC. Bearbeite dazu einfach den entsprechenden PVC und erhöhe die Speicheranforderungen nach Belieben.
Datensicherung
Alle NKE Cluster werden standardmässig gesichert. Weitere Informationen dazu findest du in unserem Artikel zur Datensicherung.
Wartungsfenster
Sicherheits- und Softwareupdates werden in der Regel während des NKE Wartungsfensters durchgeführt.
Daher kann es während dieses Wartungsfensters zu kurzen Serviceunterbrechungen kommen, ohne dass dies vorher angekündigt wird.
Einschränkungen
NKE-Cluster verfügen über eingeschränkte Cluster-Admin-Berechtigungen, um die Stabilität und Sicherheit der verwalteten Komponenten zu gewährleisten. Weitere Einzelheiten zu diesen Einschränkungen und deren Auswirkungen auf Custom Resource Definitions (CRDs) findest du auf der Seite Sicherheitskonzepte.
Zusätzliche Services
Wir bieten eine ganze Reihe an ergänzenden Services zu NKE an, um eine vollumfängliche Applikations-Plattform zu bieten. Alle verfügbaren Services findest du im Cockpit, die Preise kannst du auf unserer Website einsehen und weitere Details kannst du anderen Support-Artikeln entnehmen.
Weitere Informationen
Für weiterführende Informationen wende dich bitte an info@nine.ch und für Support-Anfragen kontaktiere uns.