Grenzwerte und Kontingente für Code Engine
Die folgenden Abschnitte enthalten technische Details zu den Einstellungen von IBM Cloud® Code Engine für Begrenzungen und Kontingente.
Wie wirkt sich meine Ressourcenzuweisung auf meine Projektkontingente und die Abrechnung aus?
In der Konsole können Sie Informationen zu Ihrer aktuellen Code Engine-Ressourcenzuordnung von der Seite mit Ihrer Projektübersicht aus anzeigen. Wenn Sie Informationen zum zugewiesenen Speicher und zu den Werten von „ vCPU “ anzeigen möchten,
die auf Ihren Konfigurationen für die jeweilige Anwendung oder den jeweiligen Auftrag basieren, sehen Sie sich die Auflistung Ihrer Anwendungen oder Aufträge in Ihrem Projekt an. In der Befehlszeilenschnittstelle können Sie mit dem Befehl
project get außerdem Informationen zu Ihrer aktuellen Ressourcenzuordnungsnutzung für das Projekt abrufen.
Bei „ Code Engine “ zahlen Sie nur für die Ressourcen, die Sie tatsächlich nutzen – basierend auf dem konfigurierten Arbeitsspeicher und den von Ihren Workloads verbrauchten „ vCPU “ sowie allen eingehenden „ HTTP “-Anrufen. Wenn Ihre App auf null skaliert wird oder Ihr Job bzw. Ihr Build nicht ausgeführt wird, verbrauchen Sie keine Ressourcen und es fallen daher keine Kosten an. Um alle Anwendungen und Jobs zu hosten, stellt Code Engine die erforderliche Infrastruktur für Sie bereit und verwaltet sie. Diese Infrastruktur wird Ihnen zwar nicht in Rechnung gestellt, trägt jedoch zum Projektkontingent bei. Weitere Informationen zu Quoten finden Sie in den folgenden Tabellen.
Die Verwendung von Kurzzeitspeichern ist jetzt durch den Speicher begrenzt. Der ephemere Speicher in Code Engine kann den Standardwert von 0.4 GB (400 MB) oder den konfigurierten Wert für den Speicher nicht überschreiten. Wenn Sie mehr als den Standardspeicher für die Kurzzeitspeicherung benötigen, müssen Sie den Speicher entsprechend den gültigen Kombinationen von vCPU und Speicher erhöhen.
Weitere Informationen über die Beziehung zwischen ephemerem Speicher und Speicher finden Sie unter Unterstützte Speicher- und CPU-Kombinationen.
Anwendungsstandardwerte und -grenzwerte
In der folgenden Tabelle werden die Grenzwerte für Anwendungen aufgelistet.
| Kategorie | Standard | Maximalwert | Sie müssen das Maximum erhöhen? |
|---|---|---|---|
| CPU | 1.0 | 12.0 | Wenden Sie sich an den IBM Support. |
| Flüchtiger Speicher | 400 M | 48 G (begrenzt durch den Speicher) |
Wenden Sie sich an den IBM Support. |
| Max. Skalierung | 10 | 250 | Wenden Sie sich an den IBM Support. |
| Hauptspeicher | 4 G | 48 G | Wenden Sie sich an den IBM Support. |
| Min. Skalierung | 0 | 250 | Wenden Sie sich an den IBM Support. |
| Nebenläufigkeit | 100 | 1000 | Wenden Sie sich an den IBM Support. |
| Zeitlimit | 300 Sekunden | 600 Sekunden | Wenden Sie sich an den IBM Support. |
Weitere Informationen zu unterstützten CPU-und Speicherkombinationen finden Sie unter Unterstützte Speicher-und CPU-Kombinationen.
Code Engine hat Grenzwerte für Apps innerhalb eines Projekts.
- Pro Projekt sind maximal 40 Apps zulässig.
- Pro Projekt sind insgesamt maximal 120 Überarbeitungen für alle Apps zulässig.
Code Engine unterstützt keine Überbelegung für Anwendungsressourcen. Wenn Sie also eine Anwendung mithilfe der API oder mit kubectl apply -f <yaml>erstellen, müssen die Werte für Resource.Requests und Resource.Limits für CPU, Memoryund Ephemeral Storage angegeben werden und identisch sein.
Jobstandardwerte und -grenzwerte
In der folgenden Tabelle werden die Grenzwerte für Jobs aufgelistet.
| Kategorie | Standard | Maximalwert | Sie müssen das Maximum erhöhen? |
|---|---|---|---|
| Array-Indizes | 0 | 9999999 | Wenden Sie sich an den IBM Support. |
| Array-Größe | 1 | 1000 | Nicht zutreffend |
| CPU | 1.0 | 12.0 | Wenden Sie sich an den IBM Support. |
| Flüchtiger Speicher | 400 M | 48 G (begrenzt durch den Speicher) |
Wenden Sie sich an den IBM Support. |
| Hauptspeicher | 4 G | 48 G | Wenden Sie sich an den IBM Support. |
| Retries | 3 | 5 | Wenden Sie sich an den IBM Support. |
| Zeitlimit | 7200 Sekunden (2 Stunden) | 86400 Sekunden (24 Stunden) | Wenden Sie sich an den IBM Support. |
Array-Indizes sind durch Kommas getrennte Listen oder durch Bindestriche getrennte Indexbereiche, die die auszuführenden Job-Instanzen angeben; zum Beispiel 1,3,6,9 oder 1-5,7-8,10.
Die Array-Größe gibt die Anzahl der Job-Instanzen an, die parallel ausgeführt werden sollen.
Weitere Informationen zu unterstützten CPU-und Speicherkombinationen finden Sie unter Unterstützte Speicher-und CPU-Kombinationen.
Code Engine ist auf 100 Jobs pro Projekt begrenzt. Nachdem 100 Jobläufe gestartet wurden, sollten Sie ältere Jobläufe unbedingt bereinigen, bevor Sie neue Jobläufe starten.
Grenzwert für Jobgröße
In Code Engine gilt ein maximaler Grenzwert für die Jobgröße und Jobausführungen von 10 KiB. Bei der Erstellung oder Aktualisierung von Jobs und Jobausführungen über die Konsole, die Befehlszeilenschnittstelle (CLI) oder die Anwendungsprogrammierschnittstelle (API) überprüft Code Engine die jeweilige Größe des Jobs oder der Jobausführung. Überschreitet die Operation den Grenzwert, wird eine Fehlernachricht aufgrund der überschrittenen Größenbeschränkung ausgegeben. Wenn diese Fehlermeldung angezeigt wird, versuchen Sie, den Umfang Ihres Auftrags oder Ihrer Auftragsausführung auf eine der folgenden Weisen zu reduzieren.
-
Wenn Sie Befehle und Argumente verwenden: Versuchen Sie, die Verwendung dieser Optionen zu reduzieren, verkürzen Sie sie oder verschieben Sie sie in das Container-Image, das vom Job bzw. von der Jobausführung verwendet wird.
-
Wenn Sie Umgebungsvariablen verwenden: Versuchen Sie, weniger Umgebungsvariablen zu verwenden, oder verkürzen Sie sie. Sie können geheime Schlüssel oder Konfigurationszuordnungen für die Definition von Umgebungsvariablen verwenden und diese mit der Option
--env-from-secretbzw.--env-from-configmapder Befehlejob create,job update,jobrun submitundjobrun resubmitin den Job importieren.
Weitere Informationen zur Fehlerbehebung bei Jobs finden Sie unter „ Fehlerbehebung – Warum kann ich keinen Job einreichen? “.
Funktionsgrenzen
In der folgenden Tabelle sind die Grenzwerte für die Funktionen aufgeführt.
| Kategorie | Maximum |
|---|---|
| Länge der Laufzeit | 120 Sekunden |
| Hauptspeicher | 48.000 MB |
| Größe des Anfrage- und des Antwortkörpers | 5 MB |
| Codegröße (inline) | 100 KB, einschließlich base64 Overhead |
| Codegröße (lokale Quelle) | 200 MB komprimiert |
| Codegröße (API) | 100 KB, einschließlich base64 Overhead |
Grenzwerte für Abonnements des periodischen Zeitgebers (Cron)
In der folgenden Tabelle sind die Grenzwerte für das periodische Timer-Abonnement aufgeführt.
| Kategorie | Maximum | Sie müssen das Maximum erhöhen? |
|---|---|---|
| Größe der Daten | 4096 Bytes | Wenden Sie sich an den IBM Support. |
Code Engine begrenzt die Größe der Daten für Ereignisse des periodischen Zeitgebers (Cron) auf maximal 4096 Byte. Wenn Sie Ereignisse des periodischen Zeitgebers (Cron) erstellen oder aktualisieren, überprüft Code Engine die Größe der Cron-Ereignisdaten. Falls die Ereignisdaten des periodischen Zeitgebers (Cron) den Grenzwert überschreiten, wird ein Fehler aufgrund einer überschrittenen Größenbegrenzung ausgegeben. Wenn Sie diese Fehlermeldung erhalten, versuchen Sie, die Größe der Cron-Ereignisdaten auf weniger als 4096 Bytes zu reduzieren.
Weitere Informationen zur Fehlerbehebung für Subskriptionen finden Sie unter Debugging-Subskriptionen.
Projektgrenzwerte
In der folgenden Tabelle sind die Obergrenzen für Projekte aufgeführt.
| Kategorie | Maximum | Sie müssen das Maximum erhöhen? |
|---|---|---|
| Projekt pro Region | 20 | Wenden Sie sich an den IBM Support. |
Die maximale Anzahl von Projekten umfasst Projekte, die aktiv sind, und Projekte, die nicht dauerhaft gelöscht werden. Wenn Sie ein Projekt löschen, wird es vorläufig gelöscht und kann innerhalb von 7 Tagen wiederhergestellt werden, bevor es endgültig gelöscht wird. Verwenden Sie die Konsole oder die Befehlszeilenschnittstelle (CLI), um soft gelöschte Projekte anzuzeigen. Weitere Informationen finden Sie im Thema Projekt löschen.
Projektkontingente
In der folgenden Tabelle sind die Kontingente für Projekte aufgeführt.
Beachten Sie, dass die Grenzen innerhalb eines Projekts unabhängig voneinander gelten. Wenn eine Grenze erreicht wird, z. B. die Grenze von 512 GB Arbeitsspeicher, kann sich diese Kontingentgrenze auf die Fähigkeit auswirken, eine Arbeitslast auszuführen, selbst wenn eine andere Grenze noch nicht erreicht ist, z. B. 250 Instanzen von Anwendungen oder Aufträgen.
| Kategorie | Beschreibung |
|---|---|
| Apps | Pro Projekt sind maximal 40 Apps zulässig. |
| Anwendungsrevisionen | Pro Projekt sind insgesamt maximal 120 Überarbeitungen für alle Apps zulässig. |
| Builds | Die Anzahl ist auf 100 Buildkonfigurationen pro Projekt begrenzt. |
| Buildausführungen | Die Anzahl ist auf 100 Buildausführungen pro Projekt begrenzt. Danach müssen alte Buildausführungen entfernt oder bereinigt werden. |
| Konfigurationszuordnungen | Die Anzahl ist auf 100 Konfigurationszuordnungen pro Projekt begrenzt. |
| CPU | Die Gesamtkombination für alle App-Instanzen, laufenden Job-Instanzen und laufenden Build-Instanzen darf 128 vCPU nicht überschreiten. |
| Bereichszuordnungen (benutzerdefiniert) | Sie sind auf 80 benutzerdefinierte Domänenzuordnungen pro Projekt beschränkt. |
| Flüchtiger Speicher | Die Gesamtkombination für alle Anwendungsinstanzen, laufenden Auftragsinstanzen und laufenden Build-Instanzen darf 512 G ephemeren Speicher nicht überschreiten. |
| Flotten | Pro Projekt sind maximal 1000 Flotten zulässig. |
| Funktionen | Pro Projekt sind maximal 20 Funktionen zulässig. |
| Instanzen (aktiv) | Die Anzahl der App-Instanzen, Funktionsinstanzen, laufenden Job-Instanzen und laufenden Build-Instanzen darf 250 nicht überschreiten. |
| Instanzen (gesamt) | Die Anzahl aktiver Instanzen und die Anzahl abgeschlossener Job- und Buildinstanzen darf 2500 nicht überschreiten. |
| Jobs | Die Anzahl ist auf 100 Jobs pro Projekt begrenzt. |
| Jobausführungen | Die Anzahl ist auf 100 Jobausführungen pro Projekt begrenzt. Danach müssen alte Buildausführungen entfernt oder bereinigt werden. |
| Hauptspeicher | Die Gesamtkombination für alle Anwendungsinstanzen, laufenden Auftragsinstanzen und laufenden Build-Instanzen darf 512 G Arbeitsspeicher nicht überschreiten. |
| Geheime Schlüssel | Die Anzahl ist auf 100 geheime Schlüssel pro Projekt begrenzt. |
| Abonnements (IBM Cloud Object Storage) | Die Anzahl ist auf 100 Abonnements (Object Storage) pro Projekt begrenzt. |
| Subnetzpools | Sie sind auf 1000 Subnetz-Pools pro Projekt beschränkt. |
| Abonnements ( Kafka / IBM® Event Streams for IBM Cloud® ) | Pro Projekt sind maximal 100 Abonnements für „ Kafka “ zulässig. |
| Abonnements (Periodischer Zeitgeber (Cron)) | Pro Projekt sind Sie sind auf 100 Abonnements des periodischen Zeitgebers (Cron) beschränkt. |
Zum Beispiel sind Sie auf 128 vCPU oder 250 aktive Instanzen einer Anwendung oder eines Auftrags beschränkt. Da jedes Limit unabhängig von anderen Limits gilt, nehmen wir an, Sie wollen eine Anwendung auf 250 Instanzen mit 0.125 VCPU skalieren. Diese Werte ergeben etwa 32 vCPU,, was weniger als das Maximum von 128 vCPU ist. Es ist jedoch nicht möglich, 512 Instanzen mit 0.125 vCPU, zu verwenden, wodurch zwar die Höchstzahl von 128 vCPU, erreicht, aber die Höchstzahl von 250 Instanzen überschritten würde.
Grenzwerte erhöhen
Die Grenzwerte sind festgelegt, können aber erhöht werden, indem Sie den IBM Support kontaktieren und einen Supportfall erstellen.