Bu konuda, Alibaba Cloud Linux örnek alınarak Cloud Parallel File Storage (CPFS) dosya sisteminin nasıl oluşturulacağı ve bir CPFS-POSIX istemcisi kullanılarak nasıl bağlanacağı gösterilmektedir. CPFS-POSIX istemcisi aynı anda birden çok veri düğümüne bağlanır ve uygulamalar için standart POSIX ile MPI-IO arabirimleri sunarak hem yüksek performans hem de uygulama uyumluluğu sağlar.
CPFS-POSIX istemcisi, CPFS-NFS istemcisine göre daha yüksek G/Ç performansı sunar. Bir POSIX bağlantı noktası oluşturduğunuzda sistem, CPFS-POSIX istemci kümesini yönetmek üzere Alibaba Cloud hesabınızda otomatik olarak üç kullandıkça öde Elastic Compute Service (ECS) örneği oluşturur. Örnek türü ecs.g*.large (g6 veya üzeri) olup ücretlendirme, bölge için geçerli standart ECS fiyatlandırmasına göre yapılır. Alibaba Cloud hesabınızın hedef alanda bu örnek türünü satın alma iznine sahip olduğundan emin olun. Fiyatlandırma ayrıntıları için bkz. ECS Fiyatlandırması.
Yüksek performans kritik bir gereksinim değilse CPFS dosya sistemine erişmek için CPFS-NFS istemcisi kullanmanızı öneririz. Bu yöntem ek üç ECS örneği gerektirmez. Protokol hizmetleri hakkında daha fazla bilgi için bkz. Protokol hizmetleri.
Ön Koşullar
Başlamadan önce aşağıdaki gereksinimlerin karşılandığından emin olun:
CPFS hizmetini etkinleştirin: CPFS konsolu ilk kez oturum açtığınızda ekrandaki talimatları izleyerek hizmeti etkinleştirin.
-
ECS örneği: CPFS-POSIX istemcisi tarafından desteklenen bir işletim sistemi çalıştıran bir ECS örneği. Desteklenen işletim sistemleri ve örnek gereksinimleri hakkında bilgi için bkz. ECS örneği oluşturma.
İşletim sistemi türü
Dağıtım
Kernel sürümü
Alibaba Cloud Linux
Alibaba Cloud Linux 2.1903 64-bit
4.19.91-27.4.al7.x86_64 ve önceki sürümler
RHEL veya CentOS
8.4
4.18.0-305.19.1.el8_4
8.3
4.18.0-240.22.1.el8_3
8.2
4.18.0-193.28.1.el8_2
8.1
4.18.0-147.8.1.el8_1
8.0
4.18.0-80.11.2.el8_0
7.9
3.10.0-1160.42.2.el7
7.8
3.10.0-1127.19.1.el7
7.7
3.10.0-1062.18.1.el7
7.6
3.10.0-957.54.1.el7
7.5
3.10.0-862.14.4.el7
7.4
3.10.0-693.2.2.el7
7.3
3.10.0-514.26.2.el7
7.2
3.10.0-514.26.2.el7
Ubuntu
20.04.3 LTS
5.4.0-86-generic
NotCPFS-POSIX istemcisi en az 2 CPU çekirdeği ve 4 GiB bellek gerektirir.
İşletim sistemi kernel sürümünüz CPFS-POSIX istemcisi tarafından desteklenmiyorsa CPFS'e erişmek için CPFS-NFS istemcisini kullanın.
CentOS kullanıcıları için: Resmi CentOS Projesi, CentOS Linux için kullanım ömrü sonu (EOL) planını duyurmuştur. Alibaba Cloud'daki genel CentOS Linux görüntüleri resmi CentOS dağıtımından alınmıştır. CentOS Linux EOL durumuna ulaştığında Alibaba Cloud artık destek sağlamayacaktır. Kesintileri önlemek için desteklenen bir işletim sistemine geçiş yapın. Daha fazla bilgi için bkz. İşletim sistemi geçişi.
Bu konuda aşağıdaki yapılandırmaya sahip bir ECS örneği kullanılmaktadır:
İşletim sistemi: Alibaba Cloud Linux 2.1903 LTS 64-bit
Kernel sürümü: 4.19.91-27.4.al7.x86_64
vCPU: 2 vCPU
Bellek: 8 GiB
Bölge: Çin (Şanghay)
Alan: Şanghay Alan B
Dahili IP adresi: 192.168.1.249
Yordam
Dağıtım süreci beş aşamadan oluşur:
CPFS dosya sistemi oluşturun: Dosya sistemini hedef bölge ve alanda oluşturun.
POSIX bağlantı noktası ekleyin ve quorum düğümü güvenlik grubuna katılın: Bağlantı noktasını oluşturun ve istemcinin kontrol düzlemine bağlanabilmesini sağlamak için ECS örneğini quorum düğümü güvenlik grubuna ekleyin.
CPFS-POSIX istemcisini yükleyin: Parolasız oturum açmayı yapılandırın ve uzak yükleme betiğini çalıştırın.
Dosya sistemini bağlayın: ECS örneğinde mount komutunu çalıştırın.
-
Bağlantıyı doğrulayın: Dosya sisteminin erişilebilir olduğunu onaylayın.
Adım 1: Dosya sistemi oluşturma
CPFS konsolu üzerinde oturum açın.
Overview sayfasının alt kısmında Create CPFS File System seçeneğine tıklayın.
-
CPFS Uluslararası Site (Kullandıkça Öde) sayfasında aşağıdaki tabloda açıklandığı gibi gerekli parametreleri belirtin. Diğer parametreleri iş ihtiyaçlarınıza göre yapılandırın veya varsayılan ayarları koruyun. Daha fazla bilgi için bkz. Dosya sistemi oluşturma.
Parametre
Açıklama
Bölge
Açılan listeden China (Shanghai) seçeneğini belirleyin.
Alan
Shanghai Zone B seçeneğini belirleyin. ECS örneği ile aynı alanı seçin.
Tür
100 MB/s/TiB Baseline seçeneğini belirleyin.
CPFS kapasitesi
Dosya sisteminin depolama kapasitesini belirtin. Bu örnekte 3.600 GiB seçeneğini belirleyin.
Sanal özel cloud
Oluşturduğunuz sanal özel cloud (VPC) seçeneğini belirleyin.
vSwitch
VPC'de oluşturduğunuz bir vSwitch seçeneğini belirleyin. Buy Now seçeneğine tıklayın. Satın alma işlemini tamamlamak için ekrandaki talimatları izleyin.
Adım 2: Bağlantı noktası ekleme ve güvenlik grubuna katılma
Sol gezinme bölmesinde şuraya gidin: Dosya Sistemleri > Dosya Sistemi Listesi ve oluşturduğunuz dosya sisteminin adına tıklayın.
Dosya sistemi ayrıntıları sayfasında Mount Targets sekmesine tıklayın.
-
Bir POSIX istemci bağlantı noktası ekleyin.
-
Add Mount Target for POSIX Client seçeneğine tıklayın ve gerekli parametreleri belirtin. Diğer parametreler için varsayılan değerleri kullanın veya ihtiyacınıza göre yapılandırın.
Parametre
Açıklama
vSwitch
ECS örneğinizle aynı VPC'de bulunan vSwitch'i seçin. OK seçeneğine tıklayın.
-
-
Quorum düğümlerinin güvenlik grubu bilgilerini edinin.
İstemci Yönetim Düğümleri bölümünde listedeki ilk ECS örneğine tıklayın.
ECS örneğinin ayrıntılar sayfasında Güvenlik Grupları sekmesine tıklayın ve güvenlik grubu bilgilerini not edin.
-
Hedef ECS örneğini quorum düğümü güvenlik grubuna ekleyin.
Sol gezinme bölmesinde şuraya gidin: Örnekler ve Görüntüler > Örnekler.
CPFS dosya sistemini bağlamak istediğiniz ECS örneğinin ID değerine tıklayın.
Güvenlik Grupları sekmesine tıklayın ve Güvenlik Grubuna Katıl seçeneğine tıklayın. Daha önce not ettiğiniz quorum düğümü güvenlik grubunu (<FSID>-<GENID>-qr-sg) seçin ve Tamam'a tıklayın.
Adım 3: CPFS-POSIX istemcisini yükleme
Sol gezinme bölmesinde şuraya gidin: Örnekler ve Görüntüler > Örnekler.
-
Yönetim düğümü (cpfs-****-000001-qr-001 benzeri ada sahip bir ECS örneği) için Operation sütununda Connect seçeneğine tıklayın. Bir örneğe nasıl bağlanılacağı hakkında bilgi için bkz. Örneğe bağlanma.
İlk istemci yönetim düğümü için oturum açma parolasını bulmak üzere NAS konsolunda dosya sisteminizin Mount Targets sayfasına gidin. İstemci Yönetim Düğümleri bölümünde İlk Parola sütunundaki değeri not edin.
-
Yönetim düğümünden hedef ECS örneğine parola gerektirmeyen oturum açmayı yapılandırın.
NotBirden çok ECS örneği için parola gerektirmeyen oturum açmayı yapılandırmadan önce tüm hedef ECS örnekleri için aynı oturum açma parolasını ayarlamanızı öneririz. Aksi takdirde her örnek için ayrı bir client.list dosyası oluşturmanız ve 6. ila 8. Adımlar içindeki işlemleri tekrarlamanız gerekir.
-
Bir
client.listdosyası oluşturun ve hedef ECS örneğinin dahili IP adresini ekleyin.-
client.listdosyasını oluşturun.touch client.list -
client.listdosyasını açın ve hedef ECS örneğinin dahili IP adresini ekleyin.192.168.1.249NotBirden çok ECS örneği eklemek için her dahili IP adresini yeni bir satıra girin.
Dosyayı kaydedin ve kapatın.
-
-
Bir
qr.listdosyası oluşturun ve quorum düğümü IP adreslerini ekleyin.-
qr.listdosyasını oluşturun.touch qr.list -
qr.listdosyasını açın ve quorum düğümü IP adreslerini ekleyin. Aşağıda bir örnek verilmiştir:192.168.*.*** 192.168.*.*** 192.168.*.***Quorum düğümlerinin IP adreslerini konsoldaki Client Management node bölümünde bulabilirsiniz.
Dosyayı kaydedin ve kapatın.
-
-
auto_ssh.shbetiğini oluşturun ve yapılandırın.-
auto_ssh.shdosyasını oluşturun.touch auto_ssh.sh -
auto_ssh.shdosyasını açın ve aşağıdaki içeriği ekleyin.#!/usr/bin/expect set timeout 10 set username [lindex $argv 0] set password [lindex $argv 1] set hostname [lindex $argv 2] spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $username@$hostname expect { #first connect, no public key in ~/.ssh/known_hosts "Are you sure you want to continue connecting (yes/no)?" { send "yes\r" expect "password:" send "$password\r" } #already has public key in ~/.ssh/known_hosts "password:" { send "$password\r" } "Now try logging into the machine" { #it has authorized, do nothing! } "already exist on the remote" { #it has authorized, do nothing! } } expect eof Dosyayı kaydedin ve kapatın.
-
-
-
auto_ssh.shbetiğini çalıştırılabilir yapın.chmod +x auto_ssh.sh -
Hedef ECS örneği için parola değişkenini ayarlayın.
PASSWD='<your_ecs_instance_password>'NotECS örneklerinin farklı oturum açma parolaları varsa her örnek için bir client.list dosyası oluşturmanız ve 6. Adım ile 8. Adım arasındaki adımları tekrar etmeniz gerekir.
-
İstemci düğümleri için parola gerektirmeyen oturum açmayı yapılandırın.
cat client.list | xargs -I {} ./auto_ssh.sh root $PASSWD {} -
client.list içindeki ECS örneklerinde CPFS istemcisini uzaktan yükleyin. Dönen
Complete!mesajı yükleme işleminin başarılı olduğunu gösterir.region_id=`curl http://100.100.100.200/latest/meta-data/region-id`; wget https://cpfs-${region_id}-pre.oss-${region_id}-internal.aliyuncs.com/cpfs/CPFS2.3.4-CentOS.tar.gz -O /root/CPFS2.3.4-CentOS.tar.gz; cat client.list | xargs -I {} scp /root/CPFS2.3.4-CentOS.tar.gz {}:/root/ pssh -ih client.list "tar xzvf /root/CPFS2.3.4-CentOS.tar.gz" pssh -ih client.list "cd /root/CPFS2.3.4-CentOS/CentOS7;yum install -y gpfs.adv-*.x86_64.rpm gpfs.base-*.x86_64.rpm gpfs.docs-*.noarch.rpm gpfs.gpl-*.noarch.rpm gpfs.gskit-*.x86_64.rpm gpfs.gss.pmsensors-*.x86_64.rpm gpfs.license.dm-*.x86_64.rpm gpfs.msg.en_US-*.noarch.rpm" -
client.listdosyasında listelenen ECS örneklerinde kernel uzantısını uzaktan derleyin.pssh -ih client.list "/usr/bin/yum -y install cpp gcc-c++ elfutils-libelf-devel" pssh -ih client.list "export LINUX_DISTRIBUTION=KERNEL_ORG_LINUX; /usr/lpp/mmfs/bin/mmbuildgpl"Ortam yapılandırıldıktan sonra örnekten özel bir görüntü oluşturabilirsiniz. Bu sayede yapılandırmayı tekrarlamadan görüntüden yeni ECS örnekleri oluşturabilirsiniz. Özel görüntü oluşturma hakkında daha fazla bilgi için bkz. Özel görüntülere genel bakış.
Adım 4: CPFS dosya sistemini bağlama
-
Yönetim düğümünde ve hedef ECS örneklerinde hosts dosyasını güncellemek için aşağıdaki komutu çalıştırın.
pssh -ih client.list "hostname;ifconfig eth0 | grep -v inet6 | grep inet | awk '{print \$2}'" | grep -v SUCC | sed 'N;s/\n/ /' > /tmp/ip-host-client.list pssh -ih qr.list "hostname;ifconfig eth0 | grep -v inet6 | grep inet | awk '{print \$2}'" | grep -v SUCC | sed 'N;s/\n/ /' > /tmp/ip-host-qr.list cat /tmp/ip-host-client.list | awk '{print $2,$1,$1"t_MAGICTAG"}' > /etc/client-hosts.append cat /tmp/ip-host-qr.list | awk '{print $2,$1,$1"t_MAGICTAG"}' > /etc/qr-hosts.append pssh -ih client.list "cp /etc/hosts hosts.bak" pssh -ih qr.list "cp /etc/hosts hosts.bak" cat client.list | xargs -I {} scp /etc/client-hosts.append {}:/etc/ cat client.list | xargs -I {} scp /etc/qr-hosts.append {}:/etc/ cat qr.list | xargs -I {} scp /etc/client-hosts.append {}:/etc/ pssh -ih client.list "cat /etc/client-hosts.append >> /etc/hosts" pssh -ih client.list "cat /etc/qr-hosts.append >> /etc/hosts" pssh -ih qr.list "cat /etc/client-hosts.append >> /etc/hosts" -
Hedef ECS örneklerini CPFS kümesine eklemek için aşağıdaki komutu çalıştırın.
-
Komut
mmaddnode -N client.list mmchlicense client --accept -N client.list mmchnode --perfmon -N client.list mmstartup -N client.list mmgetstate -a -
Örnek yanıt
Düğüm durumu
activeolarak değiştiğinde hedef ECS örneği CPFS kümesine başarıyla eklenmiş olur.Node number Node name GPFS state --------------------------------------------------------------- 1 cpfs-2989198****323d3-000001-qr-001 active 2 cpfs-2989198****323d3-000001-qr-002 active 3 cpfs-2989198****323d3-000001-qr-003 active 4 iZ0jl91t3p5kehvr6i5**** active
-
-
Düğüm listesinin hedef ECS örneklerini içerdiğini doğrulamak için aşağıdaki komutu çalıştırın.
-
Komut
mmlscluster -
Örnek yanıt
Node Daemon node name IP address Admin node name Designation ----------------------------------------------------------------------------------------------------------- 1 cpfs-2989198****323d3-000001-qr-001 192.168.3.57 cpfs-2989198****323d3-000001-qr-001 quorum-manager-perfmon 2 cpfs-2989198****323d3-000001-qr-002 192.168.3.58 cpfs-2989198****323d3-000001-qr-002 quorum-manager-perfmon 3 cpfs-2989198****323d3-000001-qr-003 192.168.3.56 cpfs-2989198****323d3-000001-qr-003 quorum-manager-perfmon 4 iZ0jl91t3p5kehvr6i5**** 192.168.3.59 iZ0jl91t3p5kehvr6i5**** perfmon
-
Adım 5: Bağlantıyı doğrulama
Dosya sistemi bağlandıktan sonra ECS örneğinde standart bir dizin olarak çalışır ve dosya okuma/yazma işlemleri gerçekleştirebilirsiniz.
Hedef ECS örneğine bağlanın. Daha fazla bilgi için bkz. ECS örneğine bağlanma.
-
Bağlantı noktasının listelendiğini doğrulamak için aşağıdaki komutu çalıştırın.
df -hÖrnek çıktı:
Filesystem Size Used Avail Use% Mounted on devtmpfs 7.6G 0 7.6G 0% /dev tmpfs 7.6G 0 7.6G 0% /dev/shm tmpfs 7.6G 512K 7.6G 1% /run tmpfs 7.6G 0 7.6G 0% /sys/fs/cgroup /dev/vda1 40G 3.4G 37G 9% / tmpfs 1.6G 0 1.6G 0% /run/user/0 01a392bac3****-000001 3.6T 432M 3.6T 1% /cpfs/01a392bac3****-000001Çıktıda /cpfs/01a392bac3****-000001 bağlantı noktasıdır.
-
CPFS dosya sistemi dizinine geçmek için aşağıdaki komutu çalıştırın.
cd <mount_target>CPFS dosya sistemini başka herhangi bir dizin gibi kullanabilirsiniz.