Ketika menggunakan Container Storage Interface (CSI) untuk memasang volume Object Storage Service (OSS), komponen CSI meluncurkan ossfs untuk memasang Bucket OSS ke sistem file node. Versi v1.30.4-* dari komponen CSI, yang mencakup csi-plugin dan csi-provisioner, meningkatkan versi default ossfs dan mengoptimalkan proses pemasangan.
Perubahan dan solusi
Pemasangan volume OSS yang disediakan secara statis memerlukan komponen csi-provisioner
Sebelum versi v1.30.4-*, penggunaan volume OSS yang disediakan secara statis hanya bergantung pada komponen csi-plugin.
Setelah peningkatan, csi-provisioner harus diinstal untuk memasang volume OSS baru.
Layanan yang sudah ada di volume OSS yang sudah dipasang tidak terpengaruh oleh perubahan ini.
Peningkatan versi ossfs
Di v1.30.4-*, versi default ossfs yang digunakan oleh csi-plugin dan csi-provisioner ditingkatkan menjadi 1.91.3. Untuk informasi lebih lanjut tentang versi ossfs, lihat catatan rilis ossfs 1.0. Untuk informasi tentang versi ossfs 1.91 atau yang lebih baru, lihat Fitur baru ossfs 1.0 dan benchmark performa ossfs.
Jika Anda masih lebih memilih versi ossfs 1.88, ikuti langkah-langkah berikut:
Masuk ke Konsol ACK. Di panel navigasi di sebelah kiri, klik Clusters.
Di halaman Clusters, temukan cluster yang ingin Anda kelola dan klik namanya. Di panel navigasi di sebelah kiri, klik Add-ons.
Klik tab Storage, temukan komponen csi-plugin dan csi-provisioner, klik Configuration di kartu dua komponen tersebut masing-masing, dan konfigurasikan FeatureGate dari kedua komponen menjadi
UpdatedOssfsVersion=false.
Ganti namespace ossfs ke ack-csi-fuse
Pada versi sebelumnya, ketika memasang Bucket OSS, CSI secara otomatis membuat pod ossfs di bawah namespace kube-system. Sejak v1.30.4-*, namespace tempat pod ossfs milik telah dialihkan ke ack-csi-fuse.
Jika Anda menggunakan autentikasi RAM Roles for Service Accounts (RRSA) untuk volume OSS di versi sebelum 1.30.4-*, karena perubahan namespace pod, Anda harus memberikan izin ke Peran RAM sebelum melakukan upgrade ke v1.30.4-*. Jika tidak, pod yang memasang volume OSS baru akan gagal dimulai.
Ikuti langkah-langkah berikut untuk memodifikasi kebijakan kepercayaan:
Masuk ke Konsol RAM menggunakan akun Alibaba Cloud Anda.
Di panel navigasi di sebelah kiri, pilih .
Di halaman Roles, cari Peran RAM yang sesuai, klik nama peran, lalu klik tab Trust Policy. Edit kebijakan kepercayaan sesuai petunjuk.
Anda dapat merujuk pada contoh berikut untuk memodifikasi kebijakan kepercayaan. Contoh kode menambahkan ServiceAccount di namespace ack-csi-fuse pada
oidc:sub.Contoh kebijakan kepercayaan asli untuk peran:
{ "Statement": [ { "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "oidc:aud": [ "sts.aliyuncs.com" ], "oidc:iss": "https://oidc-ack-cn-beijing.oss-cn-beijing.aliyuncs.com/c747b09ddd6664d33ad3939**********", "oidc:sub": "system:serviceaccount:kube-system:csi-fuse-ossfs" } }, "Effect": "Allow", "Principal": { "Federated": [ "acs:ram::130155**********:oidc-provider/ack-rrsa-c747b09ddd6664d33ad3939**********" ] } } ], "Version": "1" }Kebijakan kepercayaan yang dimodifikasi:
{ "Statement": [ { "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "oidc:aud": [ "sts.aliyuncs.com" ], "oidc:iss": "https://oidc-ack-cn-beijing.oss-cn-beijing.aliyuncs.com/c747b09ddd6664d33ad3939**********", "oidc:sub": "system:serviceaccount:kube-system:csi-fuse-ossfs" } }, "Effect": "Allow", "Principal": { "Federated": [ "acs:ram::130155**********:oidc-provider/ack-rrsa-c747b09ddd6664d33ad3939**********" ] } }, { "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "oidc:aud": [ "sts.aliyuncs.com" ], "oidc:iss": "https://oidc-ack-cn-beijing.oss-cn-beijing.aliyuncs.com/c747b09ddd6664d33ad3939**********", "oidc:sub": "system:serviceaccount:ack-csi-fuse:csi-fuse-ossfs" } }, "Effect": "Allow", "Principal": { "Federated": [ "acs:ram::130155**********:oidc-provider/ack-rrsa-c747b09ddd6664d33ad3939**********" ] } } ], "Version": "1" }
Custom ossfs images tidak lagi didukung
CSI v1.30.4-* tidak lagi mendukung penyesuaian gambar ossfs dengan menggunakan ConfigMap dari csi-plugin.
Tindakan Pencegahan
Sebelum meningkatkan csi-plugin ke v1.30.4-* atau yang lebih baru, instal versi terbaru csi-provisioner, atau tingkatkan csi-provisioner (terkelola atau tidak terkelola) ke v1.30.4-* atau yang lebih baru.
Setelah meningkatkan csi-plugin ke v1.30.4-* atau yang lebih baru melalui halaman Add-ons di Konsol Container Service for Kubernetes (ACK), kluster secara otomatis menggunakan proses pemasangan baru. Pod yang ada tempat volume OSS dipasang tetap berjalan normal.
Referensi
Untuk catatan perubahan dan deskripsi komponen CSI, lihat csi-plugin dan csi-provisioner.