正常性プローブをサービスに追加する

既定では、イングレス コントローラーでは、公開されているポッドに対して HTTP GET プローブをプロビジョニングします。 プローブ プロパティをカスタマイズするには、readiness または liveness probedeployment/pod の仕様に追加します。

readinessProbe または livenessProbe を使用する

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

Kubernetes API リファレンス:

Note

  • readinessProbelivenessProbe は、httpGet を利用して構成されている場合に、サポートされます。
  • ポッドに公開されているポート以外でのプローブは、現在サポートされていません。
  • HttpHeadersInitialDelaySecondsSuccessThreshold はサポートされていません。

readinessProbe または livenessProbe を使用しない

上記のプローブが指定されなかった場合、イングレス コントローラーでは、backend-path-prefix 注釈に対して指定された Path またはサービスの ingress 定義内に指定された path にサービスが到達できることを想定します。

正常性プローブの既定値

readiness/liveness probe によって推定できないプロパティにはすべて、既定値が設定されます。

Application Gateway プローブのプロパティ Default Value
Path /
Host localhost
Protocol HTTP
Timeout 30
Interval 30
UnhealthyThreshold 3