Beban kerja Anda mungkin perlu menyimpan informasi sensitif seperti nama pengguna, kata sandi, dan sertifikat untuk terhubung ke database backend atau mengotentikasi permintaan klien. Anda dapat menggunakan rahasia dalam kluster Alibaba Cloud Container Compute Service (ACS) untuk mengelola informasi ini dan mencegahnya terpapar. Topik ini menjelaskan cara membuat rahasia di Konsol ACS dan menggunakannya sebagai volume atau variabel lingkungan.
Prasyarat
Pod dan rahasia harus berada dalam kluster dan namespace yang sama.
Klien kubectl terhubung ke kluster. Lihat Dapatkan file kubeconfig kluster dan gunakan kubectl untuk terhubung ke kluster.
Buat rahasia
Contoh ini menunjukkan cara membuat rahasia bernama secret-test.
Masuk ke Konsol ACS. Di panel navigasi sebelah kiri, klik Clusters.
Di halaman Clusters, temukan kluster yang ingin Anda kelola dan klik ID-nya. Di panel navigasi sebelah kiri halaman detail kluster, pilih .
Di halaman Deployments, klik Create From YAML.
Pilih template contoh atau pilih Kustom. Kemudian, salin konten YAML dan klik Create.
Template YAML sampel berikut menunjukkan cara membuat rahasia.
apiVersion: v1 kind: Secret metadata: name: secret-test type: Opaque data: username: YWRtaW4= # Nilai Base64 dari admin. password: MTIzNDU= # Nilai Base64 dari 12345.
Anda juga dapat membuat rahasia di Konsol ACS. Untuk informasi lebih lanjut, lihat Buat rahasia.
Gunakan rahasia sebagai volume
Gunakan kubectl
Anda dapat menggunakan rahasia sebagai file dalam pod. Dalam contoh ini, kunci username dan password dari rahasia secret-test disimpan sebagai file di direktori /srt.
Buat file bernama example0.yaml dan salin konten berikut ke dalamnya.
apiVersion: v1 kind: Pod metadata: name: pod0 spec: containers: - name: redis image: redis volumeMounts: - name: srt mountPath: "/srt" readOnly: true volumes: - name: srt secret: secretName: secret-testBuat pod.
kubectl apply -f example0.yamlVerifikasi bahwa rahasia telah dimount.
kubectl describe pod pod0 | grep -A 4 VolumesOutput yang diharapkan:
Volumes: srt: Type: Secret (a volume populated by a Secret) SecretName: secret-test Optional: false
Gunakan Konsol
Masuk ke Konsol ACS. Di panel navigasi sebelah kiri, klik Clusters.
Di halaman Clusters, temukan kluster yang ingin Anda kelola dan klik ID-nya. Di panel navigasi sebelah kiri halaman detail kluster, pilih .
Di halaman Deployments, klik Create From Image.
CatatanUntuk informasi lebih lanjut tentang parameter, lihat Buat aplikasi tanpa status (Penyebaran).
Di tab Basic Information, konfigurasikan parameter dan klik Next.
Di tab Container Configuration, di bagian Volumes, klik Add Local Storage. Setel Tipe Volume ke Secret. Untuk Sumber Mount, pilih rahasia yang Anda buat di bagian Buat rahasia. Untuk Path Kontainer, tentukan path akses di dalam kontainer. Setelah Anda mengonfigurasi parameter, klik Next.
Gambar berikut menunjukkan contoh konfigurasi.

Di tab Advanced Configuration, konfigurasikan parameter dan klik Create.
Gunakan rahasia sebagai variabel lingkungan
Anda dapat menggunakan salah satu dari metode berikut.
Gunakan kubectl
Contoh ini menetapkan kunci username dan password dari rahasia secret-test sebagai variabel lingkungan untuk pod.
Buat file bernama example1.yaml dan salin konten berikut ke dalamnya.
apiVersion: v1 kind: Pod metadata: name: pod1 spec: containers: - name: redis image: redis env: - name: USERNAME valueFrom: secretKeyRef: name: secret-test key: username - name: PASSWORD valueFrom: secretKeyRef: name: secret-test key: passwordBuat pod.
kubectl apply -f example1.yamlVerifikasi bahwa variabel lingkungan telah dikonfigurasi.
kubectl describe pod pod1 | grep -A 2 EnvironmentOutput yang diharapkan:
Environment: USERNAME: <set to the key 'username' in secret 'secret-test'> Optional: false PASSWORD: <set to the key 'password' in secret 'secret-test'> Optional: false
Gunakan Konsol
Masuk ke Konsol ACS. Di panel navigasi sebelah kiri, klik Clusters.
Di halaman Clusters, temukan kluster yang ingin Anda kelola dan klik ID-nya. Di panel navigasi sebelah kiri halaman detail kluster, pilih .
Di halaman Deployments, klik Create From Image.
CatatanUntuk informasi lebih lanjut, lihat Buat aplikasi tanpa status (Penyebaran).
Di tab Basic Information, konfigurasikan parameter dan klik Next.
Di tab Container Configuration, di bagian Environment Variables, klik Add. Setel Tipe ke Secret. Untuk Variabel/Referensi, pilih rahasia yang Anda buat di bagian Buat rahasia. Kemudian, pilih kunci untuk direferensikan dan masukkan nama untuk variabel tersebut.