Indem Sie die Rate der Aufrufe an API-Dienste begrenzen, können Sie die Zuverlässigkeit von Vorgängen erhöhen und das Vorhandensein von verwaisten Objekten bei hoher Auslastung reduzieren.
Wenn ein Client diesen Grenzwert überschreitet, erhält er eine HTTP-Antwort vom Typ 429 Zu viele Anfragen. Im Retry-After
-Header der Antwort wird der Zeitraum angegeben, den der Client bis zum Durchführen weiterer Aufrufe warten muss.
Sie können Ratengrenzwerte pro Dienst aktivieren. Sie sollten beispielsweise Nova-API-Dienstaufrufe mehr als Neutron-API-Dienstaufrufe drosseln.
Prozedur
Begrenzen von Aufrufen an die öffentliche Neutron-API
Mit der folgenden Konfiguration werden Aufrufe an die öffentliche Neutron-API begrenzt. Wenn eine einzelne IP-Quelladresse innerhalb von 10 Sekunden mehr als 50 Anfragen an die öffentliche Neutron-API sendet, geben die Lastausgleichsdienste HTTP 429-Fehler an alle nachfolgenden Anfragen von dieser Quelladresse für einen Zeitraum von 60 Sekunden zurück. Nach Ablauf von 60 Sekunden kann die Quelladresse mit dem Senden von Anfragen an die öffentliche Neutron-API fortfahren.
haproxy_throttle_period: 60 haproxy_neutron_max_requests: 50 haproxy_neutron_request_period: 10