Mengonfigurasi pemeriksaan kesiapan Kubernetes (Opsional)

Halaman ini menjelaskan cara menggunakan Cloud Service Mesh dengan infrastruktur pemeriksaan status Google Cloud untuk mengonfigurasi probe dan gate kesiapan Kubernetes.

Prasyarat

Sebagai titik awal, panduan ini mengasumsikan bahwa Anda telah:

Pemeriksaan Kesehatan Transparan dengan CSM

Cloud Service Mesh Gateway API kini menawarkan pemeriksaan kesehatan Transparan, yaitu Universal HealthChecks yang terintegrasi dengan data status kesiapan Kubernetes untuk memungkinkan aliran traffic ke Pod yang ditandai siap. Kemampuan ini tersedia untuk layanan HTTP dan gRPC.

Cloud Service Mesh mengekspos status Pod Kubernetes Anda langsung ke infrastruktur health check Google, sehingga konfigurasi yang sama yang Anda gunakan untuk readinessProbes Pod akan diteruskan secara transparan ke infrastruktur health check load balancing Google dan status health check akan selaras dengan status readiness probe. Hal ini dilakukan menggunakan komponen, yang disebut Transparent Health Checker, yang berjalan di setiap node yang akan menampilkan status kondisi Pod.

Cloud Service Mesh mengonfigurasi traffic Health check yang dikirim dari rentang sumber infrastruktur health check untuk dikirim ke port yang dicadangkan (7877). Traffic ini dialihkan ke server health check transparan secara lokal di node. Server merespons dengan status kondisi yang cocok dengan status kesiapan Pod Kubernetes saat ini. Aliran traffic ke Pod Kubernetes dikontrol berdasarkan status Siap yang ditetapkan di setiap Pod. Secara opsional, Anda dapat mengontrol status "Siap" dengan nilai probe kesiapan dan gate kesiapan. Pemeriksaan kesehatan transparan akan melaporkan status berdasarkan operator logika DAN dari semua kondisi Kubernetes.

Anda dapat mengonfigurasi probe Kubernetes, gate kesiapan, dan pemeriksaan lainnya yang memengaruhi status kesiapan Pod Kubernetes.

Mengonfigurasi pemeriksaan kesiapan untuk layanan HTTP (Opsional)

Secara opsional, Anda dapat menambahkan bagian ini ke Deployment untuk Penyiapan Layanan HTTP layanan whereami.

...
spec:
      containers:
      - name: whereami
        image: gcr.io/google-samples/whereami:v1.2.20
        ports:
        - containerPort: 8080
        readinessProbe:
          initialDelaySeconds: 1
          periodSeconds: 2
          timeoutSeconds: 1
          successThreshold: 1
          failureThreshold: 1
          httpGet:
            host:
            scheme: HTTP
            path: /
            port: 8080
          initialDelaySeconds: 5
          periodSeconds: 5

Mengonfigurasi pemeriksaan kesiapan untuk layanan gRPC (Opsional)

Anda dapat menambahkan bagian ini secara opsional ke Deployment untuk penyiapan layanan gRPC psm-grpc-server.

...
spec:
      containers:
      - name: psm-grpc-server
        image: ${IMAGE_NAME}
        imagePullPolicy: Always
        args:
          ${ARGS}
        ports:
          - containerPort: 50051
        readinessProbe:
          initialDelaySeconds: 1
          periodSeconds: 2
          timeoutSeconds: 1
          successThreshold: 1
          failureThreshold: 1
          grpc:
            port: 50051