Auf dieser Seite wird gezeigt, wie Sie bestimmen, wie viel CPU und Arbeitsspeicher auf einem Knoten verfügbar sind, um Ihre Arbeitslasten in Google Distributed Cloud auszuführen.
Reservierte Ressourcen
Auf jedem Clusterknoten reserviert Google Distributed Cloud die folgenden Ressourcen für Betriebssystemkomponenten und Kubernetes-Kernkomponenten:
- 80 Millicore + 1 % der CPU-Kapazität
- 330 MiB + 5 % der Arbeitsspeicherkapazität
Angenommen, ein Knoten hat die Standardkapazität von 4 CPU-Kernen und 8 GiB Arbeitsspeicher. Dann reserviert Google Distributed Cloud Folgendes:
- 80 Millicore + 1 % von 4 Kernen = 120 Millicore
- 330 MiB + 5 % von 8 GiB = 730 MiB
Das Betriebssystem und die Kubernetes-Kernkomponenten werden nicht als Pods, sondern als gewöhnliche Prozesse ausgeführt. Die Ressourcen, die über diese reservierten Ressourcen hinaus verbleiben, sind für Pods verfügbar.
Schwellenwert für die Bereinigung
Wenn Sie ermitteln möchten, wie viel Speicherplatz für Pods verfügbar ist, müssen Sie auch den Schwellenwert für die Bereinigung berücksichtigen.
Google Distributed Cloud legt einen Bereinigungsschwellenwert von 100 MiB fest. Wenn also der verfügbare Arbeitsspeicher auf einem Knoten unter 100 MiB liegt, kann das kubelet
einen oder mehrere Pods entfernen.
Zuweisbare Ressourcen
Die Ressourcen auf einem Knoten, die für Pods verfügbar sind, werden als zuweisbare Ressourcen bezeichnet. So berechnen Sie die zuweisbaren Ressourcen:
Allocatable CPU = CPU Capacity - Reserved CPU
Allocatable Memory = Memory Capacity - Reserved Memory - Eviction Threshold
Angenommen, ein Knoten hat eine Arbeitsspeicherkapazität von 8 GiB, 680 MiB reservierten Arbeitsspeicher und einen Bereinigungsschwellenwert von 100 MiB. Der zuweisbare Arbeitsspeicher beträgt dann:
8 GiB - 680 MiB - 100 MiB = 7220 MiB
Für Ihre Arbeitslasten verfügbare Ressourcen
Die zuweisbaren Ressourcen eines Knotens sind die für Pods verfügbaren Ressourcen. Dazu gehören die Pods, auf denen Ihre Arbeitslasten ausgeführt werden, sowie die Pods, auf denen Google Distributed Cloud-Add-ons ausgeführt werden. Add-ons umfassen den Controller für eingehenden Traffic, den Dienst für eingehenden Traffic, den Connect Agent, Netzwerkkomponenten, Logging-Komponenten und mehr.
Um auf einem bestimmten Knoten die für Ihre Arbeitslasten verfügbaren Ressourcen zu ermitteln, beginnen Sie mit den zuweisbaren Ressourcen und subtrahieren dann die von Add-ons verwendeten Ressourcen.
Die Herausforderung besteht darin, dass Add-ons nicht gleichmäßig auf die Knoten eines Google Distributed Cloud-Clusters verteilt sind. Ein Knoten kann drei Add-ons und ein anderer zehn Add-ons haben. Außerdem benötigen die verschiedenen Add-ons unterschiedliche CPU- und Arbeitsspeichermengen.
Als allgemeine Regel erfordern die auf einem Knoten ausgeführten Add-ons Folgendes:
- 200 Millicore CPU
- 100 MiB Arbeitsspeicher
Jetzt können Sie die auf einem Knoten verfügbaren Ressourcen für Ihre Arbeitslasten berechnen:
Allocatable CPU - 200 millicores
Allocatable memory - 100 MiB
Bei bestimmten Knoten sind mehr Ressourcen für Add-ons erforderlich, als die obige allgemeine Regel angibt. Ein Knoten kann beispielsweise ein Prometheus-Add-on ausführen, das 2 GiB Arbeitsspeicher erfordert. Wenn Ihr Cluster jedoch mehr als ein paar Knoten umfasst, wird davon ausgegangen, dass die allgemeine Regel für die meisten Knoten zutrifft.
Nächste Schritte
Mehr zum Konzept der zuweisbaren Ressourcen finden Sie in der Dokumentation zu GKE on Google Cloud unter Zuweisbare Ressourcen.