Container Service for Kubernetes (ACK) dapat menerbitkan file kubeconfig kepada akun Alibaba Cloud, Pengguna Manajemen Akses Sumber Daya (RAM), dan Peran RAM. File kubeconfig berisi informasi identitas yang digunakan untuk mengakses kluster ACK. Anda dapat menggunakan recycle bin kubeconfig untuk memulihkan file kubeconfig yang terhapus secara tidak sengaja atau versi historis dari file kubeconfig tersebut.
Catatan Penggunaan
Hanya akun Alibaba Cloud, pengguna RAM, atau peran RAM dengan izin yang diperlukan yang dapat menggunakan recycle bin kubeconfig.
Pastikan bahwa pengguna RAM atau peran RAM memiliki izin AliyunCSFullAccess dan AliyunRAMReadOnlyAccess.
Anda dapat menggunakan recycle bin kubeconfig untuk memulihkan hanya file kubeconfig yang dihapus dalam 30 hari terakhir. Untuk informasi lebih lanjut tentang cara menghapus file kubeconfig, lihat Hapus file kubeconfig.
Setiap akun Alibaba Cloud, pengguna RAM, atau peran RAM hanya dapat menggunakan satu file kubeconfig untuk mengakses kluster ACK. Jika file kubeconfig sudah digunakan oleh akun Alibaba Cloud, pengguna RAM, atau peran RAM untuk mengakses kluster ACK, Anda tidak dapat memulihkan versi historis dari file kubeconfig tersebut. Hal ini bertujuan untuk menghindari konflik file kubeconfig.
Skenario
Skenario 1: Pulihkan file kubeconfig yang terhapus secara tidak sengaja
Admin A secara tidak sengaja menghapus file kubeconfig yang digunakan oleh Pengguna RAM B untuk mengakses Kluster 1. Akibatnya, Pengguna RAM B tidak dapat mengakses Kluster 1. Dalam skenario ini, Pengguna RAM B dapat menghubungi Admin A untuk memulihkan file kubeconfig dari recycle bin.
Skenario 2: Pulihkan versi historis file kubeconfig untuk menggantikan yang saat ini
Admin A menghapus kubeconfig v1 yang digunakan oleh Pengguna RAM B untuk mengakses Kluster 1. Pengguna RAM B mendapatkan kubeconfig v2 di Konsol ACK dan menggunakan file tersebut untuk mengakses Kluster 1. Namun, beberapa aplikasi yang ada masih perlu menggunakan kubeconfig v1. Selain itu, kubeconfig v1 memberikan izin kontrol akses berbasis peran (RBAC). Oleh karena itu, Admin A ingin memulihkan kubeconfig v1.
Untuk melakukannya, Admin A harus menghapus kubeconfig v2, menemukan catatan kubeconfig v1 dan v2 di recycle bin, dan memulihkan kubeconfig v1.
Pulihkan file kubeconfig
Anda dapat memulihkan file kubeconfig secara batch beserta izin RBAC yang diberikan oleh file-file tersebut.
Masuk ke Konsol ACK. Di panel navigasi kiri, klik Authorizations.
Klik tab KubeConfig File Management, lalu klik KubeConfig File Recycle Bin di pojok kanan atas.
Recycle bin kubeconfig menampilkan catatan file kubeconfig yang dihapus dalam 30 hari terakhir. Tabel berikut menjelaskan parameter-parameter tersebut.
Parameter
Deskripsi
Username dan UID
Nama dan ID akun Alibaba Cloud, pengguna RAM, atau peran RAM yang menggunakan file kubeconfig.
Certificate CN
CommonName dari sertifikat klien untuk file kubeconfig. Untuk informasi lebih lanjut tentang CommonNames, lihat Referensi: CommonNames sertifikat klien.
Cluster Name dan Cluster ID
Nama dan ID kluster ACK yang diakses menggunakan file kubeconfig.
RBAC Permissions
Izin RBAC yang diberikan oleh file kubeconfig.
Recycled At
Waktu ketika file kubeconfig dihapus dan dipindahkan ke recycle bin kubeconfig.
Deletion Interval
Waktu ketika file kubeconfig akan dihapus secara permanen.
Anda dapat memulihkan file kubeconfig yang dihapus dan dipindahkan ke recycle bin dalam 30 hari terakhir. Recycle bin kubeconfig secara otomatis menghapus file kubeconfig yang masa retensinya melebihi 30 hari. Anda tidak dapat memulihkan file kubeconfig yang dihapus dari recycle bin kubeconfig.
Klik Restore di kolom Tindakan file kubeconfig untuk memulihkan file kubeconfig dan izin RBAC yang sesuai.
Anda juga dapat memilih beberapa file kubeconfig dan klik Pemulihan Batch. Saat memulihkan file kubeconfig secara batch, pastikan bahwa file kubeconfig tidak saling bertentangan.
Hapus catatan kubeconfig
Anda dapat menghapus catatan kubeconfig di recycle bin kubeconfig jika yakin bahwa file kubeconfig yang sesuai tidak lagi diperlukan. Setelah catatan kubeconfig dihapus, Anda tidak dapat lagi memulihkan file kubeconfig tersebut.
Masuk ke Konsol ACK. Di panel navigasi kiri, klik Authorizations.
Klik tab KubeConfig File Management, lalu klik KubeConfig File Recycle Bin di pojok kanan atas.
Konfirmasikan catatan kubeconfig yang ingin dihapus, klik Delete, lalu masukkan CommonName sertifikat klien.
Referensi: sertifikat klien CommonNames
CommonName sertifikat klien adalah identitas klien yang menggunakan file kubeconfig yang sesuai untuk mengakses kluster ACK. File kubeconfig yang berbeda memiliki CommonName sertifikat klien yang berbeda. Untuk informasi lebih lanjut, lihat kube-apiserver.
Di ACK, CommonName sertifikat klien menggunakan format {UserID}-{SuffixID}. UserID menunjukkan ID pengguna RAM atau peran RAM yang menggunakan file kubeconfig. SuffixID menunjukkan string acak, yang diperbarui setiap kali file kubeconfig dicabut atau dihapus. Ini memastikan bahwa versi historis file kubeconfig tidak dapat digunakan untuk mengakses kluster ACK.
FAQ
Mengapa pengguna RAM memiliki beberapa catatan kubeconfig untuk kluster ACK yang sama di recycle bin kubeconfig?
Karena pembaruan CommonName sertifikat klien, pengguna RAM mungkin memiliki beberapa catatan kubeconfig untuk kluster ACK yang sama di recycle bin kubeconfig.
Bagaimana cara memilih catatan kubeconfig yang ingin saya pulihkan dari beberapa catatan kubeconfig di recycle bin kubeconfig?
Anda dapat memeriksa izin RBAC yang diberikan oleh file kubeconfig asli atau CommonName sertifikat klien. Untuk menanyakan CommonName sertifikat klien dari file kubeconfig, jalankan perintah berikut. Kemudian, Anda dapat menggunakan CommonName sertifikat klien untuk menemukan catatan kubeconfig.
openssl x509 -in <(kubectl config view --kubeconfig {Nama file Kubeconfig} --raw --minify --output=jsonpath='{.users[0].user.client-certificate-data}'|base64 -d) -noout -subjectMengapa tombol Pulihkan di recycle bin kubeconfig redup?
Di kluster ACK, setiap pengguna RAM atau peran RAM hanya dapat menggunakan satu file kubeconfig. Jika file kubeconfig sudah digunakan oleh pengguna RAM atau peran RAM untuk mengakses kluster ACK, Anda tidak dapat memulihkan versi historis file kubeconfig. Ini membantu menghindari konflik kubeconfig.
Untuk memulihkan versi historis, Anda harus terlebih dahulu menghapus file kubeconfig yang sedang digunakan. Untuk informasi lebih lanjut tentang cara menghapus file kubeconfig, lihat Hapus file kubeconfig.
Apa saja kondisi yang dapat menyebabkan kegagalan pemulihan file kubeconfig?
Izin RBAC tidak mencukupi: Saat memulihkan file kubeconfig, izin RBAC yang diberikan oleh file kubeconfig juga dipulihkan. Jika Anda tidak memiliki izin RBAC yang sama di kluster ACK, pemulihan mungkin gagal. Untuk informasi lebih lanjut tentang cara memberikan izin RBAC, lihat Berikan izin RBAC kepada pengguna RAM atau peran RAM.
Status kluster ACK tidak normal: Jika kluster ACK berada dalam status tidak normal, kluster ACK menjadi tidak dapat diakses. Akibatnya, pemulihan gagal.
Konflik file kubeconfig: File kubeconfig lain sedang digunakan oleh pengguna RAM atau peran RAM untuk mengakses kluster ACK yang sama. Jika konflik file kubeconfig terjadi saat Anda memulihkan file kubeconfig secara batch, ACK secara otomatis memulihkan catatan kubeconfig paling baru. Catatan kubeconfig yang bertentangan lainnya tidak dipulihkan.
Referensi
Kami merekomendasikan agar Anda menghapus file kubeconfig yang diterbitkan kepada karyawan yang telah mengundurkan diri dan file kubeconfig yang mungkin menimbulkan risiko keamanan. Untuk informasi lebih lanjut, lihat Hapus file kubeconfig.
Saat file kubeconfig yang diterbitkan secara tidak sengaja terungkap, Anda harus mencabut file kubeconfig tersebut dan kemudian menghasilkan yang baru. Untuk informasi lebih lanjut, lihat Cabut file KubeConfig.