Panduan memulai: Mengakses bucket Cloud Storage dengan driver CSI FUSE
Dalam panduan memulai ini, Anda akan mempelajari cara mengakses bucket Cloud Storage dari dalam aplikasi Google Kubernetes Engine (GKE) seolah-olah bucket tersebut adalah sistem file lokal. Panduan memulai cepat ini menyediakan contoh manifes Kubernetes untuk membuat Pod yang me-mount bucket, dan menunjukkan cara berinteraksi dengan konten bucket menggunakan sistem file Pod.
Halaman ini ditujukan untuk Developer, spesialis Penyimpanan, dan siapa pun yang ingin menyediakan dan mengelola resource cloud, serta men-deploy workload. Untuk mempelajari peran umum lebih lanjut, lihat Peran dan tugas pengguna GKE umum.
Sebelum membaca halaman ini, pastikan Anda sudah memahami Kubernetes dan driver CSI FUSE Cloud Storage.
Panduan memulai ini menggunakan mode GKE Autopilot. Jika Anda ingin menggunakan mode Standard, lihat Menyiapkan driver CSI Cloud Storage FUSE untuk GKE.
Sebelum memulai
-
In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Cloud de Confiance project.
Enable the GKE and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Pastikan Anda memiliki peran berikut di project: Admin Kubernetes Engine, Admin Storage, Pengguna Akun Layanan
Memeriksa peran
-
Di konsol Cloud de Confiance , buka halaman IAM.
Buka IAM - Pilih project.
-
Di kolom Akun utama, temukan semua baris yang mengidentifikasi Anda atau grup yang Anda ikuti. Untuk mengetahui grup mana saja yang Anda ikuti, hubungi administrator Anda.
- Untuk semua baris yang menentukan atau menyertakan Anda, periksa kolom Peran untuk melihat apakah daftar peran menyertakan peran yang diperlukan.
Memberikan peran
-
Di konsol Cloud de Confiance , buka halaman IAM.
Buka IAM - Pilih project.
- Klik Grant access.
-
Di kolom New principals, masukkan ID pengguna Anda. Biasanya, ini adalah ID untuk pengguna dalam workforce identity pool. Untuk mengetahui detailnya, baca bagian Merepresentasikan pengguna workforce pool dalam kebijakan IAM, atau hubungi administrator Anda.
- Klik Pilih peran, lalu telusuri peran.
- Untuk memberikan peran tambahan, klik Add another role, lalu tambahkan tiap peran tambahan.
- Klik Simpan.
-
Membuat cluster GKE Autopilot
Di konsol Cloud de Confiance , buka halaman Create an Autopilot cluster.
Di bagian Dasar-dasar cluster, lakukan hal berikut:
Di kolom Name, masukkan nama untuk cluster.
Pertahankan nilai default untuk setelan lainnya.
Untuk membuat cluster, klik Buat.
Membuat bucket Cloud Storage
- Di konsol Cloud de Confiance , buka halaman Buckets Cloud Storage.
Klik Create.
Di halaman Buat bucket, di bagian Mulai, lakukan hal berikut:
Masukkan nama yang unik secara global untuk bucket Anda yang memenuhi persyaratan penamaan bucket.
Pertahankan nilai default untuk setelan lainnya.
Untuk membuat bucket, klik Buat.
Mengupload objek ke bucket Cloud Storage Anda
- Di konsol Cloud de Confiance , buka halaman Buckets Cloud Storage.
Pada daftar bucket, klik nama bucket yang baru saja Anda buat.
Di tab Objek untuk bucket, lakukan salah satu hal berikut:
Tarik file dari desktop atau pengelola file Anda ke panel utama di konsol Cloud de Confiance .
Klik tombol Upload File. Dalam dialog yang muncul, pilih file yang ingin Anda upload, lalu klik Buka.
Mengonfigurasi akses ke bucket Cloud Storage
Untuk memastikan bucket Cloud Storage Anda dapat diakses oleh cluster GKE, ikuti langkah-langkah di Mengonfigurasi akses ke bucket Cloud Storage.
Menyiapkan Cloud Shell
Di konsol Cloud de Confiance , aktifkan Cloud Shell.
Sesi Cloud Shell akan dimulai dan menampilkan perintah command line. Diperlukan waktu beberapa detik untuk melakukan inisialisasi pada sesi.
Deploy Pod untuk mengakses bucket Cloud Storage Anda menggunakan FUSE
Tetapkan project default tempat Anda ingin men-deploy Pod:
gcloud config set project PROJECT_IDGanti
PROJECT_IDdengan project ID Anda.Buat dan terapkan manifes Pod dengan konten berikut:
cat << EOF | kubectl apply -f - apiVersion: v1 kind: Pod metadata: name: gcsfuse-test namespace: default annotations: gke-gcsfuse/volumes: "true" spec: terminationGracePeriodSeconds: 60 containers: - image: busybox name: busybox command: ["sleep"] args: ["infinity"] volumeMounts: - name: gcsfuse-test mountPath: /data readOnly: true serviceAccountName: default volumes: - name: gcsfuse-test csi: driver: gcsfuse.csi.storage.gke.io volumeAttributes: bucketName: BUCKET_NAME mountOptions: "implicit-dirs" EOF- Ganti
BUCKET_NAMEdengan nama bucket Cloud Storage Anda. - Jika Anda menggunakan namespace atau akun layanan yang berbeda, ganti kolom
namespacedanserviceAccountNamedengan tepat.
Konten manifes ini memulai Pod bernama
gcsfuse-testyang memasang bucket di jalur/data-nya.- Ganti
Verifikasi bahwa Pod sedang berjalan:
kubectl get pod gcsfuse-testOutputnya mirip dengan hal berikut ini:
NAME READY STATUS RESTARTS AGE gcsfuse-test 2/2 Running 0 12sDriver CSI Cloud Storage FUSE melampirkan container sidecar di Pod Anda untuk mengelola interaksi dengan Cloud Storage.
Jika Pod tidak berjalan, Anda dapat mengambil log peristiwa untuk membantu mendiagnosis masalah dengan menjalankan perintah
kubectl describe pod gcsfuse-test. Untuk mengetahui informasi selengkapnya, lihat Pemecahan masalah di GitHub.Setelah Pod berjalan, Anda dapat menjelajahi sistem filenya:
kubectl exec -it gcsfuse-test -- find /data
Pembersihan
Agar tidak menimbulkan biaya pada akun Cloud de Confiance by S3NS Anda untuk resource yang Anda gunakan dalam tutorial ini, hapus Pod:
kubectl delete pod gcsfuse-test