Tüm Ürünler
Search
Belge Merkezi

Container Service for Kubernetes:Change the disk category

Son Güncelleme:Oct 06, 2026

ACK, iş yükünüzü yeniden oluşturmadan bir birime ekli olan cloud disk'in kategorisini değiştirmenize olanak tanır. Örneğin, uygulamanızın depolama gereksinimleri artarsa daha yüksek IOPS elde etmek için standart SSD'yi Enterprise SSD (ESSD) ile değiştirebilirsiniz.

Ön koşullar

Başlamadan önce aşağıdaki koşulları sağladığınızdan emin olun:

  • Container Storage Interface (CSI) eklentisi yüklü, Kubernetes 1.20 veya üzeri sürümü çalışan bir kümeniz bulunmalıdır. Kümenizi yükseltmek için Kümeyi manuel olarak yükseltme konusuna bakın.

  • storage-operator bileşeninin 1.26.1-50a1499-aliyun veya üzeri bir sürümü yüklü olmalıdır. Varsayılan olarak storage-operator kümede yüklüdür. Sürümü doğrulamak için ACK konsolunda küme ayrıntıları sayfasına gidin, sol gezinme bölmesinde Operations > Add-ons seçeneğini belirleyin ve Storage sekmesine tıklayın. Daha fazla bilgi için storage-operator bileşenini yönetme konusuna bakın.

  • (Yalnızca ACK özel kümeler) Worker ve master RAM (Resource Access Management) rollerinin ModifyDiskSpec işlemini çağırma iznine sahip olması gerekir. Bu koşul ACK yönetilen kümeler için geçerli değildir. Detaylar için Özel ilke oluşturma konusuna bakın.

    İlke içeriğini görüntülemek için tıklayın

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "ecs:CreateSnapshot",
                    "ecs:DescribeSnapshot",
                    "ecs:DeleteSnapshot",
                    "ecs:ModifyDiskSpec",
                    "ecs:DescribeTaskAttribute"
                ],
                "Resource": "*"
            }
        ]
    }

Sınırlamalar

  • Temel diskler ve geçici diskler başka disk kategorilerine dönüştürülemez.

  • ESSD AutoPL diskler başka disk kategorilerine dönüştürülemez.

  • Yalnızca kullandıkça öde diskler birim olarak bağlanabilir.

  • Yeni disk kategorisinin, pod'unuzu barındıran düğümün ECS örnek türü tarafından desteklenmesi gerekir. Uyumluluk ayrıntıları için Örnek ailelerine genel bakış konusuna bakın.

  • Kategori değişikliği bölgesel bir ESSD'yi içeriyorsa, birimin afinite ayarları değiştirilemez. Diski kullanan pod'lar diğer alanlara yeniden planlanamaz.

Sınırlamaların tam listesi için Sınırlamalar bölümüne bakın.

Desteklenen disk kategorisi dönüşümleri

Aşağıdaki tabloda desteklenen yükseltme ve düşürme işlemleri özetlenmiştir.

Kaynak disk kategorisi Hedef disk kategorileri
Ultra disk Standart SSD, ESSD Entry, PL0/PL1/PL2/PL3 ESSD, ESSD AutoPL disk
Standart SSD PL1/PL2/PL3 ESSD, ESSD AutoPL disk
PL0 ESSD PL1/PL2/PL3 ESSD, ESSD AutoPL disk
PL1/PL2/PL3 ESSD (kullandıkça öde) PL1, PL2 ve PL3 arasında geçiş yapın veya ESSD AutoPL diske dönüştürün
PL1/PL2/PL3 ESSD (abonelik) Yalnızca yükseltme (düşükten yükseğe): PL1→PL2, PL1→PL3, PL2→PL3; PL1→ESSD AutoPL disk

Kullanım notları:

  • Yalnızca ESSD Entry diskler genel amaçlı örnek ailelerine ve e ekonomi örnek ailesine ait örneklere bağlanabilir.

  • Bir ESSD'nin yükseltilebileceği performans düzeyi disk kapasitesine bağlıdır. Daha yüksek bir performans düzeyi kullanılamıyorsa öncelikle diski genişletin, ardından performans düzeyini yükseltin.

  • Bir diski PL3 ESSD olarak değiştirdikten sonra en iyi performansı etkinleştirmek için diski bir örneğe bağlayın veya örneği yeniden başlatın. Bu süreçte veri güvenilirliği etkilenmez.

  • Disk kategorisi değişiminden sonra faturalama, yeni disk kategorisinin kurallarına göre yapılır.

  • ESSD AutoPL diske geçiş yaparken veya bu diskten geçiş yaparken: Değişiklik sonrası performans sağlama özelliğini etkinleştirebilir veya devre dışı bırakabilirsiniz (etkinleştirildiğinde ek ücret uygulanır — detaylar için ESSD AutoPL diskin sağlanan performansını değiştirme). Performans patlaması değişiklik sırasında yapılandırılamaz ancak işlem tamamlandıktan sonra etkinleştirilebilir veya devre dışı bırakılabilir — detaylar için ESSD AutoPL disk için performans patlamasını etkinleştirme veya devre dışı bırakma.

desiredDiskType parametre referansı

2. adımda özel kaynağı oluştururken desiredDiskType parametresi için aşağıdaki değerleri kullanın.

Değer Disk kategorisi
cloud_ssd Standart SSD
cloud_essd.PL0 PL0 ESSD
cloud_essd.PL1 PL1 ESSD
cloud_essd.PL2 PL2 ESSD
cloud_essd.PL3 PL3 ESSD
cloud_auto ESSD AutoPL disk

1. Adım: storage-operator'da disk kategorisi değişikliklerini etkinleştirin

storage-operator ConfigMap'ini güncellemek ve disk kategorisi değiştirme özelliğini etkinleştirmek için aşağıdaki komutu çalıştırın. Bu özellik storage-controller eklentisi tarafından uygulanır.

kubectl patch configmap/storage-operator \
  -n kube-system \
  --type merge \
  -p '{"data":{"storage-controller":"{\"imageRep\":\"acs/storage-controller\",\"imageTag\":\"\",\"install\":\"true\",\"template\":\"/acs/templates/storage-controller/install.yaml\",\"type\":\"deployment\"}"}}'

2. Adım: Disk kategorisini değiştirin

Önemli

İş yükleriniz üzerindeki etkiyi en aza indirmek için disk kategorisi değişikliklerini yoğun olmayan saatlerde gerçekleştirin.

1. StatefulSet oluşturun

Kümenizde zaten mount edilmiş bir cloud disk içeren bir StatefulSet varsa bu adımı atlayın.

Aşağıdaki şablonu kullanarak StatefulSet.yaml adlı bir dosya oluşturun. Bu işlem, 40 GiB boyutunda PL1 ESSD bağlanmış tek bir pod içeren bir StatefulSet oluşturur.

apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: nginx-diskspec
spec:
  selector:
    matchLabels:
      app: nginx
  replicas: 1
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6
        ports:
        - containerPort: 80
        volumeMounts:
        - name: pvc-disk
          mountPath: /data
      volumes:
        - name: pvc-disk
          persistentVolumeClaim:
            claimName: disk-pvc
  volumeClaimTemplates:
    - metadata:
        name: pvc-disk
        labels:
          app: nginx
      spec:
        accessModes: [ "ReadWriteOnce" ]
        storageClassName: "alicloud-disk-essd"
        resources:
          requests:
            storage: 40Gi

Manifesto dosyasını uygulayın ve pod'un çalıştığını doğrulayın:

kubectl create -f StatefulSet.yaml
kubectl get pod -l app=nginx

Beklenen çıktı:

NAME                 READY   STATUS    RESTARTS   AGE
nginx-diskspec-0     1/1     Running   0          4m4s

2. Değiştirilecek PersistentVolume (PV) öğesini belirleyin

StatefulSet tarafından kullanılan PersistentVolumeClaim (PVC) öğesini alın ve VOLUME sütunundaki bağlı PV adını not edin.

kubectl get pvc pvc-disk-nginx-diskspec-0

Beklenen çıktı:

NAME                           STATUS    VOLUME                   CAPACITY   ACCESS MODES   STORAGECLASS                VOLUMEATTRIBUTESCLASS   AGE
pvc-disk-nginx-diskspec-0      Bound     d-uf6ijdcp3aeoi82w****   40Gi       RWO            alicloud-disk-essd          <unset>                 5m6s

PV'nin mevcut disk kategorisini doğrulayın:

kubectl get pv d-uf6ijdcp3aeoi82w**** -o=jsonpath='{.metadata.labels}'

Beklenen çıktı — cloud_essd.PL1 değeri, PV'nin bir PL1 ESSD tarafından desteklendiğini gösterir:

{"csi.alibabacloud.com/disktype":"cloud_essd.PL1"}

3. Kategori değişikliğini tetiklemek için özel bir kaynak oluşturun

cr.yaml adlı bir dosya oluşturun. pvNames değerini önceki adımdaki PV adı ile değiştirin ve desiredDiskType değerini hedef disk kategorisine ayarlayın (yukarıdaki desiredDiskType parametre referansına bakın).

apiVersion: storage.alibabacloud.com/v1beta1
kind: ContainerStorageOperator
metadata:
  name: default
spec:
  operationType: DISKUPGRADE
  operationParams:
    pvNames: "d-uf6ijdcp3aeoi82w****"
    desiredDiskType: "cloud_auto"
Parametre Açıklama
operationType Disk yükseltme veya düşürme işlemleri için DISKUPGRADE olarak ayarlayın.
pvNames Değiştirilecek PV. Birden fazla PV'yi virgülle ayırın, örneğin: "disk-1,disk-2,disk-3***".
desiredDiskType Hedef disk kategorisi. Yukarıdaki desiredDiskType parametre referansına bakın.

Özel kaynağı uygulayın:

kubectl create -f cr.yaml

4. Disk kategorisi değişikliğini doğrulayın

Disk kategorisi değişikliğinin tamamlanıp tamamlanmadığını kontrol etmek için özel kaynak durumunu sorgulayın:

kubectl get ContainerStorageOperator default -o yaml

Değişiklik tamamlandığında beklenen çıktı:

  status:
    message: []
    process: 100%
    status: SUCCESS

PV etiketinin yeni disk kategorisini yansıttığını doğrulayın:

kubectl get pv d-uf6ijdcp3aeoi82w**** -o=jsonpath='{.metadata.labels}'

Beklenen çıktı:

{"csi.alibabacloud.com/disktype":"cloud_auto"}

Sonraki adımlar