設定縮放至零¶
警告
只有在使用 KnativePodAutoscaler (KPA) 時才能啟用縮放至零,且只能進行全域設定。如需更多關於使用 KPA 或全域設定的資訊,請參閱支援的自動調整器類型文件。
啟用縮放至零¶
縮放至零的值控制 Knative 是否允許複本縮放至零(若設為 true
),或在 1 個複本時停止(若設為 false
)。
注意
如需更多關於每個修訂版本的縮放界限設定的資訊,請參閱設定縮放界限文件。
- 全域金鑰:
enable-scale-to-zero
- 每個修訂版本註解金鑰:無每個修訂版本設定。
- 可能值:布林值
- 預設值:
true
範例
apiVersion: v1
kind: ConfigMap
metadata:
name: config-autoscaler
namespace: knative-serving
data:
enable-scale-to-zero: "false"
apiVersion: operator.knative.dev/v1alpha1
kind: KnativeServing
metadata:
name: knative-serving
spec:
config:
autoscaler:
enable-scale-to-zero: "false"
縮放至零寬限期¶
此設定指定系統在內部等待縮放自零機制就位後,才移除最後一個複本的最長時間限制。
警告
這是一個控制內部網路程式設計允許耗時多久的值,只有在修訂版本縮放至零個複本時發生請求被丟棄的問題時,才應調整此值。
此設定不會調整流量結束後,最後一個複本將保留多久的時間,也不保證複本實際上會保留此整個持續時間。
- 全域金鑰:
scale-to-zero-grace-period
- 每個修訂版本註解金鑰:不適用
- 可能值:持續時間
- 預設值:
30s
範例
apiVersion: v1
kind: ConfigMap
metadata:
name: config-autoscaler
namespace: knative-serving
data:
scale-to-zero-grace-period: "40s"
apiVersion: operator.knative.dev/v1alpha1
kind: KnativeServing
metadata:
name: knative-serving
spec:
config:
autoscaler:
scale-to-zero-grace-period: "40s"
縮放至零最後一個 Pod 保留時間¶
scale-to-zero-pod-retention-period
旗標決定在自動調整器決定將 Pod 縮放至零後,最後一個 Pod 將保持活動的最小時間量。
這與 scale-to-zero-grace-period
旗標形成對比,後者決定在自動調整器決定將 Pod 縮放至零後,最後一個 Pod 將保持活動的最大時間量。
- 全域金鑰:
scale-to-zero-pod-retention-period
- 每個修訂版本註解金鑰:
autoscaling.knative.dev/scale-to-zero-pod-retention-period
- 可能值:非負持續時間字串
- 預設值:
0s
範例
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: helloworld-go
namespace: default
spec:
template:
metadata:
annotations:
autoscaling.knative.dev/scale-to-zero-pod-retention-period: "1m5s"
spec:
containers:
- image: ghcr.io/knative/helloworld-go:latest
apiVersion: v1
kind: ConfigMap
metadata:
name: config-autoscaler
namespace: knative-serving
data:
scale-to-zero-pod-retention-period: "42s"
apiVersion: operator.knative.dev/v1alpha1
kind: KnativeServing
metadata:
name: knative-serving
spec:
config:
autoscaler:
scale-to-zero-pod-retention-period: "42s"