Menggunakan volume agen Filestore dengan workload GKE yang dikelola sendiri

Jika menjalankan benchmark agen AI standar, lingkungan developer, atau workload pipeline otomatis di Google Kubernetes Engine (GKE), Anda dapat menggunakan resource PersistentVolumeClaim (PVC) dan Deployment Kubernetes standar secara langsung dengan volume agen Filestore.

Pola ini menggunakan definisi resource Kubernetes yang sudah dikenal tanpa memerlukan pengontrol sandbox kustom atau resource DaemonSet.

Sebelum memulai

Selesaikan penyiapan cluster dan driver CSI di Menyiapkan lingkungan GKE untuk volume agen Filestore.

Membuat PersistentVolumeClaim

Buat manifes bernama agent-pvc.yaml yang meminta penyimpanan dari volume-pool-sc StorageClass yang Anda buat sebelumnya:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: agent-workspace-pvc
  namespace: default
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: volume-pool-sc
  resources:
    requests:
      storage: 1Gi

Terapkan manifes:

kubectl apply -f agent-pvc.yaml

Pastikan PVC bertransisi ke Bound:

kubectl get pvc agent-workspace-pvc

Outputnya mirip dengan hal berikut ini:

NAME                  STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS     AGE
agent-workspace-pvc   Bound    pvc-12345678-abcd-ef01-2345-6789abcdef01   1Gi        RWX            volume-pool-sc   5s

Driver CSI Filestore menyediakan volume baru dalam kumpulan volume Anda dalam waktu kurang dari satu detik dan mengikat PVC.

Men-deploy workload agen

Buat manifes Deployment bernama agent-deployment.yaml yang me-mount PVC terikat:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: agent-worker
  namespace: default
  labels:
    app: agent-worker
spec:
  replicas: 1
  selector:
    matchLabels:
      app: agent-worker
  template:
    metadata:
      labels:
        app: agent-worker
    spec:
      containers:
        - name: worker
          image: busybox:latest
          command: ["/bin/sh", "-c"]
          args:
            - |
              echo "Agent worker started. Workspace mounted at /workspace:"
              ls -la /workspace
              echo "Writing benchmark results..."
              date > /workspace/run-status.txt
              cat /workspace/run-status.txt
              sleep infinity
          resources:
            requests:
              cpu: "250m"
              memory: "256Mi"
            limits:
              cpu: "500m"
              memory: "512Mi"
          volumeMounts:
            - name: workspace-storage
              mountPath: /workspace
      volumes:
        - name: workspace-storage
          persistentVolumeClaim:
            claimName: agent-workspace-pvc

Terapkan manifes:

kubectl apply -f agent-deployment.yaml

Memverifikasi deployment dan akses file

  1. Periksa apakah pod deployment sedang berjalan:

    kubectl get pods -l app=agent-worker
    

    Outputnya mirip dengan hal berikut ini:

    NAME                            READY   STATUS    RESTARTS   AGE
    agent-worker-6789bcdef-ghijk    1/1     Running   0          30s
    
  2. Periksa log penampung untuk mengonfirmasi keberhasilan operasi file:

    kubectl logs -l app=agent-worker -c worker
    

    Outputnya mirip dengan hal berikut ini:

    Agent worker started. Workspace mounted at /workspace:
    total 8
    drwxr-xr-x    2 root     root          4096 Sep 14 12:00 .
    drwxr-xr-x    1 root     root          4096 Sep 14 12:00 ..
    Writing benchmark results...
    Mon Sep 14 12:00:05 UTC 2026
    

Karena volume agen Filestore mendukung akses ReadWriteMany (RWX), beberapa replika atau pod yang berbeda dapat memasang PVC yang sama secara bersamaan untuk alur kerja agen kolaboratif.

Langkah berikutnya