NAS; Alibaba Cloud tarafından sunulan, paylaşımlı, ölçeklenebilir, son derece güvenilir ve yüksek performanslı bir dağıtık dosya sistemidir. Bu konuda, bir Elastic Container Instance (ECI) örneğine NAS biriminin nasıl bağlanacağı açıklanmaktadır.
Önemli notlar
NAS, kullanıma göre faturalandırılır ve kullandıkça öde, kaynak planları ile SCU faturalandırma yöntemlerini destekler. Daha fazla bilgi için bkz. NAS Faturalandırmasına genel bakış.
NAS dosya sistemi, örnek ile aynı VPC içinde bulunmalıdır.
NAS paylaşımlı depolama alanı sağlar. Tek bir NAS dosya sistemi birden fazla örneğe bağlanabilir. Birden fazla örnek aynı veriyi eş zamanlı olarak değiştirirse uygulamanızın veri senkronizasyonunu yönetmesi gerekir.
NAS birimini bağlantısını kaldırmadan önce NAS bağlantı noktasını silmeyin. Aksi takdirde işletim sistemi yanıt vermeyebilir.
Hazırlıklar
Alibaba Cloud File Storage NAS'i bir birim olarak kullanmadan önce bir NAS dosya sistemi ve bir bağlantı noktası oluşturun. Daha fazla bilgi için bkz. Dosya sistemi oluşturma ve Bağlantı noktalarını yönetme.
Yapılandırma ayrıntıları (OpenAPI)
CreateContainerGroup API işlemini çağırarak esnek bir kapsayıcı örneği oluştururken Volume ile ilgili parametreleri kullanarak birimleri belirtebilir, ardından Container.VolumeMount ile ilgili parametreleri kullanarak bu birimleri kapsayıcılara bağlayabilirsiniz. İlgili parametreler aşağıda açıklanmıştır. Daha fazla bilgi için bkz. CreateContainerGroup.
Birim bildirme
Volume ile ilgili parametreleri kullanarak birimleri belirtirken öncelikle birimlerin türlerini ve adlarını belirtmeniz gerekir. Ardından, Volume.N.Type parametresinin değerine bağlı olarak diğer Volume ile ilgili parametreleri yapılandırmanız gerekir.
Bir NAS birimini iki yoldan biriyle bildirebilirsiniz:
-
NFS türünde bir birim bağlama
Ad
Tür
Örnek değer
Açıklama
Volume.N.Name
String
nas-demo
Birim adı.
Volume.N.Type
String
NFSVolume
NFS türünde bir birim oluşturmak için NFSVolume olarak ayarlayın.
Volume.N.NFSVolume.Server
String
3f9cd4**-na*.cn-shanghai.nas.aliyuncs.com
NFS sunucu adresi.
Alibaba Cloud File Storage NAS kullanıyorsanız bu, NAS dosya sisteminin bağlantı noktası adresidir.
Volume.N.NFSVolume.Path
String
/share
NFS birim yolu.
Volume.N.NFSVolume.ReadOnly
Boolean
false
NFS birimi için okuma izni. Geçerli değerler:
-
true: salt okunur
-
false: okuma ve yazma
Varsayılan değer: false.
-
-
FlexVolume eklentisini kullanarak bir birim bağlama
Ad
Tür
Örnek değer
Açıklama
Volume.N.Name
String
nas-demo
Birim adı.
Volume.N.Type
String
FlexVolume
FlexVolume eklentisini kullanarak bir birim bağlamak için FlexVolume olarak ayarlayın.
Volume.N.FlexVolume.Driver
String
alicloud/nas
FlexVolume eklentisini kullanarak bir birim bağlarken sürücü türü. Alibaba Cloud File Storage NAS'i bağlamak için
alicloud/nasolarak ayarlayın.Volume.N.FlexVolume.Options
String
{"server":"3f9cd4**-na*.cn-shanghai.nas.aliyuncs.com","path": "/share","vers":"3","options":"nolock,tcp,noresvport"}
JSON dizesi olarak iletilen FlexVolume nesnesi için anahtar-değer seçenekleri.
FlexVolume kullanarak NAS bağlarken Options parametresi NAS birimi yapılandırma parametrelerini belirtir. Aşağıdaki parametreleri yapılandırabilirsiniz:
-
server: NAS dosya sisteminin bağlantı noktası adresi.
-
path:
/ile başlayan NAS dosya sistemi yolundaki alt dizin.-
NAS dosya sisteminde var olan bir alt dizin girin. Alt dizin kök dizin altında yoksa bağlamadan önce oluşturulur.
-
Extreme NAS dosya sistemleri için alt dizin
/shareile başlamalıdır. -
Bu parametre isteğe bağlıdır. Belirtilmezse varsayılan olarak NAS dosya sisteminin kök dizini bağlanır.
-
-
vers: NAS dosya sistemini bağlamak için kullanılan NFS protokolü sürümü. v3 kullanılması önerilir. Extreme NAS yalnızca v3'ü destekler.
-
options: "xxx,xxx,xxx" biçiminde biçimlendirilen NAS için özel bağlama seçenekleri, örneğin
nolock,tcp,noresvport.
-
Birimleri bağlama
Birimleri belirttiğinizde VolumeMount ile ilgili parametreleri kullanarak bu birimleri kapsayıcılara bağlayabilirsiniz.
Parametre | Tür | Örnek | Açıklama |
Container.N.VolumeMount.N.Name | String | test-volume | N kapsayıcısına bağlanacak N biriminin adı. Bu değer, Volume.N.Name değeridir. |
Container.N.VolumeMount.N.MountPath | String | /usr/share | Birimin kapsayıcı içinde bağlanacağı yol. Bu dizindeki veriler, birimdeki veriler tarafından gizlenir. |
Container.N.VolumeMount.N.SubPath | String | /usr/sub | Birim alt dizini. Bu parametre, örneğin aynı birimin farklı alt dizinlerini kapsayıcıların farklı alt dizinlerine bağlamasını sağlar. |
Container.N.VolumeMount.N.ReadOnly | Boolean | false | Bağlama dizininin salt okunur olup olmadığını belirtir. Varsayılan değer: false. |
Container.N.VolumeMount.N.MountPropagation | String | None | N birimi için bağlama yayılımı ayarı. Bağlama yayılımı, bir kapsayıcıya bağlanan birimlerin aynı esnek kapsayıcı örneğindeki diğer kapsayıcılara veya hatta aynı ana bilgisayardaki diğer esnek kapsayıcı örneklerine paylaşılmasını sağlar. Geçerli değerler:
Varsayılan değer: None. |
Birimler init kapsayıcılarına da bağlanabilir. Gerekli parametreler yukarıdaki tablodakilere benzerdir. Yalnızca Container ifadesini InitContainer olarak değiştirmeniz yeterlidir.
Yapılandırma ayrıntıları (konsol)
Elastic Container Instance satın alma sayfasında bir esnek kapsayıcı örneği oluştururken Container Group Configurations bölümünde birimleri belirtebilir ve ardından Container Configurations bölümünde bu birimleri kapsayıcılara bağlayabilirsiniz.
Birim bildirme
Container group configuration bölümünde Advanced Configuration öğesini genişletin.
Storage altında NAS persistent storage sekmesini seçin ve Add düğmesine tıklayın.
-
NAS birimi parametrelerini yapılandırın.
Name: NAS biriminin adı.
Mount target: NAS dosya sisteminin bağlantı noktası.
Path: Bağlanacak NAS dosya sistemindeki yol.
Read-only: Veri okuma izni. Varsayılan olarak okuma ve yazma etkinleştirilmiştir. Gerektiğinde salt okunur seçeneğini işaretleyin.
Birimi bağlama
Container configuration bölümünde bir kapsayıcı seçin ve gelişmiş yapılandırmasını genişletin.
-
Storage geçiş anahtarını açın ve Add düğmesine tıklayın.
Kullanılabilir birimler, kapsayıcı grubu yapılandırması sırasında bildirilen birimlerdir.
Select storage alanında bildirilen birimi (örneğin, nas-demo) seçin. Depolama türünü NAS persistent storage olarak ayarlayın. Mount path in container için
/datave Subdirectory için/testgirin. Gerektiğinde Read-only seçeneğini işaretleyin.
Birimleri birden çok kapsayıcıya bağlamak istiyorsanız daha fazla kapsayıcı seçin ve önceki işlemleri tekrarlayın.
Yapılandırma örneği
-
ECI örneği A oluşturun ve buna bir NAS birimi bağlayın.
Aşağıdaki örnekte, A örneğini oluşturmak için CreateContainerGroup işlemi çağrılırken kullanılan parametreler gösterilmektedir. Daha fazla bilgi için bkz. CreateContainerGroup.
ContainerGroupName=test-nas-a SecurityGroupId=sg-bp1daxpbz9lzpvvc**** VSwitchId=vsw-bp1gds63lmlm7ib05**** # Declare a volume Volume.1.Name=nas-demo Volume.1.Type=NFSVolume Volume.1.NFSVolume.Server=3f9cd4****-na***.cn-shanghai.nas.aliyuncs.com Volume.1.NFSVolume.Path=/share # Mount the volume to a 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=nas-demo Container.1.VolumeMount.1.MountPath=/data-a -
A örneğine bağlanın ve bağlama dizininde bir dosya oluşturun.
Bir ECI örneğine bağlanma hakkında bilgi için bkz. Workbench kullanarak bir ECI örneğine bağlanma.
root@test-nas-a:/# cd data-a root@test-nas-a:/data-a# ls root@test-nas-a:/data-a# echo "hello" >test root@test-nas-a:/data-a# ls test root@test-nas-a:/data-a# cat test hello A örneğini silin.
-
ECI örneği B oluşturun ve aynı NAS birimini buna bağlayın.
ContainerGroupName=test-nas-b SecurityGroupId=sg-bp1daxpbz9lzpvvc**** VSwitchId=vsw-bp1gds63lmlm7ib05**** # Declare a volume Volume.1.Name=nas-demo Volume.1.Type=FlexVolume Volume.1.FlexVolume.Driver=alicloud/nas Volume.1.FlexVolume.Options={"server":"3f9cd4****-na***.cn-shanghai.nas.aliyuncs.com","path": "/share"} # Mount the volume to a 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=nas-demo Container.1.VolumeMount.1.MountPath=/data-b -
B örneğine bağlanın ve bağlama dizinindeki dosyayı doğrulayın.
Hem A örneği hem de B örneği aynı NAS birimini bağladığından ve NAS kalıcı depolama sağladığından, A örneği silindikten sonra A örneği tarafından oluşturulan dosyaya B örneği üzerinden erişilebilir.
root@test-nas-b:/# cd data-b root@test-nas-b:/data-b# ls test root@test-nas-b:/data-b# cat test hello