Hinzufügen von Integritätstests zu Ihren AKS-Pods
Standardmäßig stellt der Application Gateway-Eingangsdatencontroller(Application Gateway Ingress Controller, AGIC) einen HTTP-GET
-Test für verfügbar gemachte Azure Kubernetes Service -Pods (AKS) bereit. Sie können die Eigenschaften des Integritätstests anpassen, indem Sie Ihrer Bereitstellungs- oder Pod-Spezifikation einen Bereitschafts- oder Livetest hinzufügen.
Tipp
Ziehen Sie Application Gateway für Container für Ihre Kubernetes-Eingangslösung in Betracht. Weitere Informationen finden Sie unter Benutzerdefinierter Integritätstest für Application Gateway für Container.
Code zum Hinzufügen eines Bereitschafts- oder Livetests
apiVersion: networking.k8s.io/v1
kind: Deployment
metadata:
name: aspnetapp
spec:
replicas: 3
template:
metadata:
labels:
service: site
spec:
containers:
- name: aspnetapp
image: mcr.microsoft.com/dotnet/samples:aspnetapp
imagePullPolicy: IfNotPresent
ports:
- containerPort: 80
readinessProbe:
httpGet:
path: /
port: 80
periodSeconds: 3
timeoutSeconds: 1
Weitere Informationen finden Sie in der Kubernetes API-Referenz.
Hinweis
readinessProbe
undlivenessProbe
werden unterstützt, wenn sie mithttpGet
konfiguriert werden.- Das Testen an einem anderen Port als dem, der auf dem Pod verfügbar gemacht wird, wird zurzeit nicht unterstützt.
HttpHeaders
,InitialDelaySeconds
undSuccessThreshold
werden nicht unterstützt.
Wenn der Code keinen Bereitschafts- oder Livetest enthält, geht der Eingangsdatencontroller davon aus, dass der Dienst über beide erreichbar ist:
- Der für
backend-path-prefix
-Anmerkungen angegebenePath
-Wert - Der
path
Wert, der in deringress
-Definition für den Dienst angegeben ist
Standardwerte für den Integritätstest
Für jede Eigenschaft, die der Bereitschafts- oder Livetest nicht ableiten kann, werden die folgenden Standardwerte verwendet.
Application Gateway-Testeigenschaft | Standardwert |
---|---|
Path |
/ |
Host |
localhost |
Protocol |
HTTP |
Timeout |
30 |
Interval |
30 |
UnhealthyThreshold |
3 |