Skalierung, hohe Verfügbarkeit und Datenverkehrsmanagement
Wenn Ihre App in Code Engine bereitgestellt wird, ist sie für Tests und sogar für die Produktion zugänglich und verfügbar. Da Code Engine eine serverunabhängige Plattform für containerisierte Workloads bereitstellt, werden die meisten Laufzeitdetails automatisch von Code Engineverwaltet. Sie können jedoch viele der Details steuern.
App skalieren
Wenn Sie mit Cloud Foundryarbeiten, haben Sie möglicherweise das Feature für automatische Skalierung eingerichtet, mit dem Sie abhängig von Leistungsmetriken oder Datum und Uhrzeit App-Instanzen automatisch hinzufügen oder entfernen können. Im Gegensatz dazu skaliert Code Engine Ihre Anwendung standardmäßig automatisch. Code Engine skaliert eine App bis zu 10 Laufzeitinstanzen (standardmäßig) und bis zu null (d. h., die App verbraucht keine Ressourcen, wenn sie nicht verwendet wird).
Sie können diese Einstellungen innerhalb der Grenzwerte und Kontingente für Code Engine bearbeiten. Eine maximale Skalierung von 0 (null) skaliert Ihre Anwendung auf das maximal
mögliche Maß, falls erforderlich, während eine minimale Skalierung von 1 mindestens eine Instanz Ihrer Anwendung aktiv hält. Durch die Anpassung des Zeitlimits für gemeinsamen Zugriff und Anforderungen können Sie den Autoscaler
an Ihre Anforderungen anpassen. Weitere Informationen finden Sie unter Anwendungsskalierung konfigurieren.
Hochverfügbarkeit (HA)
In Bezug auf Aspekte der Hochverfügbarkeit (und der Notfallwiederherstellung) ähneln sich Cloud Foundry und Code Engine.
- Befolgen Sie die bewährten Verfahren für die Verarbeitung gleichzeitig ablaufender Anforderungen.
- Stellen Sie sicher, dass mindestens zwei oder sogar drei Instanzen der App betriebsbereit sind.
- Führen Sie App-Instanzen in den verfügbaren Zonen einer Region mit mehreren Zonen aus.
- Verwenden Sie die Globale Lastausgleichsfunktion (GLB) vor App-Instanzen, die in mehreren MZRs bereitgestellt werden, um eine hohe Verfügbarkeit auf globaler Ebene zu erzielen.
Datenverkehrsmanagement und fortlaufende Aktualisierungen
Um Ihre Anwendung verfügbar zu halten, wenn Sie eine neue Version auf Cloud Foundry bereitstellen, verwenden Sie spezielle CLI-Befehlsoptionen für rollende Updates oder Zero-Downtime-Bereitstellungen. Bei Code Engine werden die fortlaufenden Aktualisierungen automatisch ausgeführt. Sobald die neue App-Revision bereit ist, wird der Datenverkehr von der alten App in die neue Revision verschoben.
Die Durchführung von blau-grünen Bereitstellungen und die schrittweise Verlagerung des Datenverkehrs von der alten App auf die neue Revision erforderten einige manuelle Eingriffe in Cloud Foundry. Mit Code Engine können Sie die Funktionalität nutzen, die in die zugrunde liegenden Kubernetes- und Knative-Ebenen integriert ist. Der Blog-Beitrag, Blue-green deployment with IBM Cloud Code Engine and Knative, zeigt, wie der Knative CLI-Befehl die App aktualisiert, so dass der Datenverkehr so konfiguriert ist, dass er zwischen den Revisionen aufgeteilt
wird. Bei einer Anwendung mit dem Namen bluegreen und zwei Revisionen rev-old und rev-new teilt der folgende Befehl den Datenverkehr zu 80/20 zwischen ihnen auf.
kn service update bluegreen --traffic rev-old=80 --traffic rev-new=20
Durch die Anpassung der zugewiesenen Prozentsätze können Sie zuerst die neue Codeversion mit einem gewissen Datenverkehr testen und, wenn Ihr Code bereit ist, die Revision in der Produktion ausführen.
Nächste Schritte
- Haben Sie gerade erst mit der Migration begonnen? Lesen Sie den Abschnitt Erste Schritte.
- Vergleichen Sie Cloud Foundry-Terminologie mit Code Engine.
- Testen Sie das Lernprogramm zu Code Engine mit einem lokalem Build.
- Verwendet Ihre Anwendung Servicebindungen? Dann informieren Sie sich über die Migration Ihrer Servicebindungen.
- Skalierung, Hochverfügbarkeit und Datenverkehrsmanagement (aktuelle Seite)
- Suchen Sie Code Engine-Äquivalente zu Cloud Foundry-Befehlen.
- Sie haben noch Fragen? Lesen Sie Häufig gestellte Fragen zur Migration von Cloud Foundry-Anwendungen zu Code Engine.
Weitere Informationen
- Informieren Sie sich über die Code Engine-Preisstruktur.
- Testen Sie andere Code Engine-Lernprogramme.
- Erkunden Sie weitere Themen zu Code Engine.