Tüm Ürünler
Search
Belge Merkezi

Elastic Container Instance:Mount a cloud disk volume to an ECI instance

Son Güncelleme:Oct 06, 2026

Varsayılan olarak konteyner depolaması geçicidir; konteyner yeniden başlatıldığında içine yazılan veriler kaybolur. Disk birimi bağlamak, verilerin yeniden başlatmalar arasında kalıcı olmasını sağlar. Bu konu, CreateContainerGroup API'sini kullanarak esnek konteyner örneği oluştururken diskin birim olarak nasıl bağlanacağını açıklar.

Ön koşullar

Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:

  • Hedef kullanılabilirlik alanında bir esnek konteyner örneği

  • Örnek ile aynı kullanılabilirlik alanında kullandıkça öde bir disk (statik sağlama için)

Sınırlamalar

  • Yalnızca kullandıkça öde diskler bağlanabilir. Bkz. Blok depolama faturalaması.

  • Bir disk aynı anda yalnızca tek bir esnek konteyner örneğine bağlanabilir; diskler paylaşılamaz.

  • Her esnek konteyner örneği en fazla altı disk birimini destekler.

  • Disk, esnek konteyner örneği ile aynı kullanılabilirlik alanında olmalıdır. Alanlar arası bağlama desteklenmez. Bağlamadan önce diski hedef alanda oluşturun.

  • Çoklu bağlama özelliği etkinleştirilmiş NVMe diskleri (NVMe paylaşımlı diskler) bağlanamaz.

  • Bölümleri olan diskler bağlanamaz. Diski oluşturmak için anlık görüntü kullanırsanız ve anlık görüntü tabanlı diskte bölümler varsa, bu disk de bağlanamaz.

Nasıl çalışır

Disk birimleri, alicloud/disk sürücüsüyle FlexVolume eklentisini kullanır. CreateContainerGroup çağrısı yaptığınızda şunları yaparsınız:

  1. Volume.N.* parametrelerini kullanarak bir birim bildirin; disk kaynağını (mevcut disk veya yeni disk) belirtin.

  2. Bildirdiğiniz birimi, Container.N.VolumeMount.N.* parametrelerini kullanarak bir konteynere bağlayın; bağlama yolunu ve davranışını belirtin.

İki sağlama modu, diskin kaynağının alınma biçimine göre farklılık gösterir:

Mod Ne zaman kullanılır Anahtar parametre
Statik sağlama Zaten iliştireceğiniz bir disk var volumeId içinde FlexVolume.Options
Dinamik sağlama ECI, başlatma sırasında yeni bir disk oluşturur volumeSize içinde FlexVolume.Options

Birim bildirme

Disk birimi bildirmek için aşağıdaki Volume.N.* parametrelerini ayarlayın.

Parametre Tür Örnek Açıklama
Volume.N.Name Dize disk-demo Birimin adı. Bağlama sırasında Container.N.VolumeMount.N.Name tarafından referans alınır.
Volume.N.Type Dize FlexVolume FlexVolume eklentisini kullanmak için FlexVolume olarak ayarlayın.
Volume.N.FlexVolume.Driver Dize alicloud/disk Alibaba Cloud diskini bağlamak için alicloud/disk olarak ayarlayın.
Volume.N.FlexVolume.FsType Dize ext4 Dosya sistemi türü. Geçerli değerler: ext4, ext3, xfs, vfat. Varsayılan: ext4.
Volume.N.FlexVolume.Options Dize {"volumeId":"d-bp1****"} Disk yapılandırmasını içeren JSON dizesi. Kullanılabilir anahtarlar için aşağıdaki bölümlere bakın.

Statik sağlama — mevcut disk kullanma

Mevcut bir diski iliştirmek için FlexVolume.Options içinde volumeId sağlayın. Disk Pending durumunda ve örnek ile aynı kullanılabilirlik alanında olmalıdır. volumeId belirtildiğinde diğer tüm disk niteliği parametreleri (volumeSize, performanceLevel vb.) yoksayılır. volumeId belirtmezseniz volumeSize belirtmeniz gerekir.

Seçenek anahtarı Açıklama
volumeId İliştirilecek diskin kimliği.

Dinamik sağlama — yeni disk oluşturma

ECI'nin başlatma sırasında yeni bir disk oluşturması için volumeId değerini atlayın ve volumeSize sağlayın. Sistem otomatik olarak geliştirilmiş SSD (ESSD) kullanır; disk kategorisini belirtemezsiniz.

Seçenek anahtarı Gerekli Açıklama
volumeSize Evet GiB cinsinden disk boyutu. Geçerli değerler: 20–32768. Ayrıca snapshotId belirtirseniz gerçek disk boyutu, volumeSize ile anlık görüntü tabanlı diskin boyutundan büyük olanıdır.
performanceLevel Hayır ESSD'nin performans düzeyi (PL). Bkz. ESSD'ler.
deleteWithInstance Hayır Örnek serbest bırakıldığında diskin de serbest bırakılıp bırakılmayacağı. Varsayılan: true.
encrypted Hayır Diske şifreleme uygulanıp uygulanmayacağı. Varsayılan: false. Bkz. Şifrelemeye genel bakış.
kmsKeyId Hayır Disk şifrelemesi için kullanılan Key Management Service (KMS) anahtarının kimliği.
snapshotId Hayır Disk oluşturulurken kullanılacak anlık görüntünün kimliği. Bkz. Genel bakış.
tags Hayır Disk iliştirilecek etiketler. En fazla 20 etiket. Biçim: "tagkey1:tagvalue1,tagkey2:tagvalue2".

Birimi konteynere bağlama

Bir birim bildirdikten sonra, bunu bir konteynere bağlamak için Container.N.VolumeMount.N.* parametrelerini kullanın.

Parametre Tür Örnek Açıklama
Container.N.VolumeMount.N.Name Dize disk-demo Bağlanacak birimin adı. Bir Volume.N.Name değeriyle eşleşmelidir.
Container.N.VolumeMount.N.MountPath Dize /data Birimin konteyner içinde bağlandığı yol. Bu yoldaki mevcut veriler birim tarafından gizlenir.
Container.N.VolumeMount.N.SubPath Dize /logs Bağlanacak birimin alt dizini. Aynı birimin farklı alt dizinlerini farklı konteynerlere bağlamak için bunu kullanın.
Container.N.VolumeMount.N.ReadOnly Boole false Bağlama yolunun salt okunur olup olmadığı. Varsayılan: false.
Container.N.VolumeMount.N.MountPropagation Dize None Bağlamaların konteynerler ve ana bilgisayar arasında paylaşılıp paylaşılmayacağını kontrol eder. Varsayılan: None. Aşağıdaki tabloya bakın.

Bağlama yayılımı modları

Değer Konteyner ne görür Ana bilgisayar ne görür
None Yalnızca ilişkilendirme sırasında mevcut olan bağlamalar; bu birime veya alt dizinlerine yapılan sonraki bağlamalar görünmez. Konteyner içinde oluşturulan hiçbir bağlama ana bilgisayarda görünmez.
HostToContainer Ana bilgisayarda bu birime veya alt dizinlerine yapılan tüm sonraki bağlamalar konteyner içinde görünür. Konteyner içinde oluşturulan hiçbir bağlama ana bilgisayarda görünmez.
Bidirectional Ana bilgisayarda bu birime veya alt dizinlerine yapılan tüm sonraki bağlamalar konteyner içinde görünür. Konteyner içinde oluşturulan tüm bağlamalar ana bilgisayara ve aynı birimi kullanan tüm esnek konteyner örneklerinin tüm konteynerlerine yayılır.
Birimleri init konteynerlere bağlamak için, Container yerine InitContainer ile aynı parametreleri kullanın.

Örnekler

Aşağıdaki örneklerde CreateContainerGroup öğesine geçirilecek anahtar parametreler gösterilmektedir.

Örnek 1: Statik sağlama (mevcut disk)

ContainerGroupName=test-disk1
SecurityGroupId=sg-bp1daxpbz9lzpvvc****
VSwitchId=vsw-bp1gds63lmlm7ib05****

# Declare the volume
Volume.1.Name=disk-demo
Volume.1.Type=FlexVolume
Volume.1.FlexVolume.Driver=alicloud/disk
Volume.1.FlexVolume.FsType=ext4
Volume.1.FlexVolume.Options={"volumeId":"d-2zebuamrpar7xnj****"}

# Mount the volume to the container
Container.1.Name=nginx
Container.1.Image=registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:1.14.2
Container.1.VolumeMount.1.Name=disk-demo
Container.1.VolumeMount.1.MountPath=/data
Önemli

Bu işlemi çalıştırmadan önce disk Pending durumunda ve örnek ile aynı kullanılabilirlik alanında olmalıdır.

Örnek 2: Dinamik sağlama (yeni disk)

ContainerGroupName=test-disk2

# Declare the volume
Volume.1.Name=disk-demo
Volume.1.Type=FlexVolume
Volume.1.FlexVolume.Driver=alicloud/disk
Volume.1.FlexVolume.FsType=ext4
Volume.1.FlexVolume.Options={"volumeSize":"50","tags":"test:eci"}

# Mount the volume to the container
Container.1.Name=nginx
Container.1.Image=registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:1.14.2
Container.1.VolumeMount.1.Name=disk-demo
Container.1.VolumeMount.1.MountPath=/data

Örnek başlatıldığında otomatik olarak 50 GiB'lik bir ESSD oluşturulur. Disk varsayılan olarak örnek ile birlikte serbest bırakılır (deleteWithInstance: true).

Sonraki adımlar