Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: ✔️ Linux VM'leri ✔️ Esnek ölçek kümeleri
Bu makale, Linux sanal makinesi (VM) için genişleyen işletim sistemi (işletim sistemi) disklerini ve veri disklerini kapsar. Daha fazla depolama alanı sağlamak için veri diskleri ekleyebilir ve var olan bir veri disklerini de genişletebilirsiniz. İşletim sistemi için varsayılan sanal sabit disk boyutu, Azure'daki bir Linux VM'de genellikle 30 GB'tır. Bu makale, işletim sistemi disklerini veya veri disklerini genişletmeyi kapsar.
İşletim sistemi diskinin kapasitesi en fazla 4.095 GiB'dir. Ancak, birçok işletim sistemi varsayılan olarak ana önyükleme kaydı (MBR) ile bölümlenir. MBR, kullanılabilir boyutu 2 TiB ile sınırlar. 2 TiB'den fazlasına ihtiyacınız varsa, veri depolama için veri diskleri eklemeyi göz önünde bulundurun. İşletim sistemi diskinde veri depolamanız ve fazladan alan gerektirmeniz gerekiyorsa, bunu GUID Bölümleme Tablosuna (GPT) dönüştürün.
Uyarı
Dosya sisteminizin iyi durumda olduğundan ve disk bölümleme tablo türünüzün (GPT veya MBR) yeni boyutu destekleyebildiğinden emin olun. Disk genişletme işlemleri gerçekleştirmeden önce verilerinizi yedekleyin. Daha fazla bilgi için Azure Backup hızlı başlangıcı bölümüne bakın.
İşletim sistemi içindeki bir Azure veri diski nesnesini tanımlama
VM'de birkaç veri diski bulunan bir veri diskini genişlettiğiniz zaman, Azure mantıksal birim numaralarını (LUN) Linux cihazlarıyla ilişkilendirmek zor olabilir. İşletim sistemi diskinin genişletilmesi gerekiyorsa, Azure portalında işletim sistemi diski olarak açıkça etiketlenir.
komutuyla disk kullanımı, bağlama noktası ve cihaz arasındaki ilişkiyi df belirleyerek başlayın.
df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 xfs 97G 1.8G 95G 2% /
<truncated>
/dev/sdd1 ext4 32G 30G 727M 98% /opt/db/data
/dev/sde1 ext4 32G 49M 30G 1% /opt/db/log
Burada, örneğin dosya sisteminin neredeyse dolu olduğunu ve /opt/db/data dosya sisteminin /dev/sdd1 bölümünde bulunduğunu görebilirsiniz.
df çıktısı, diskin cihaz yolu veya fstab'da (tercih edilen) UUID kullanılarak bağlanıp bağlanmadığını, cihaz yolunu göstererek ortaya koyar. Dosya sistemi biçimini gösteren Tür sütununa dikkat edin. Biçim daha sonra önemlidir.
Şimdi /dev/sdd ile ilişkili olan LUN'u bulmak için /dev/disk/azure/scsi1 içeriğini inceleyin. Aşağıdaki ls komutunun çıktısı, Azure portalına baktığınızda Linux işletim sistemi içinde /dev/sdd olarak bilinen cihazın LUN1 konumunda bulunduğunu gösterir.
sudo ls -alF /dev/disk/azure/scsi1/
total 0
drwxr-xr-x. 2 root root 140 Sep 9 21:54 ./
drwxr-xr-x. 4 root root 80 Sep 9 21:48 ../
lrwxrwxrwx. 1 root root 12 Sep 9 21:48 lun0 -> ../../../sdc
lrwxrwxrwx. 1 root root 12 Sep 9 21:48 lun1 -> ../../../sdd
lrwxrwxrwx. 1 root root 13 Sep 9 21:48 lun1-part1 -> ../../../sdd1
lrwxrwxrwx. 1 root root 12 Sep 9 21:54 lun2 -> ../../../sde
lrwxrwxrwx. 1 root root 13 Sep 9 21:54 lun2-part1 -> ../../../sde1
Azure yönetilen diskini genişletme
Kesinti yaşamadan genişleme
VM'nizi başka bir yere aktarmadan yönetilen disklerinizi genişletebilirsiniz. Diskinizin ana bilgisayar önbelleği ayarı, VM'nizi serbest bırakmadan bir veri diskini genişletip genişletemeyeceğinizi etkilemez.
Bu özellik aşağıdaki sınırlamalara sahiptir.
Önemli
Bu sınırlama Premium SSD v2 veya Ultra Diskler için geçerli değildir.
Standart HDD, Standart SSD veya Premium SSD 4 TiB veya daha azsa, VM'nizi serbest bırakabilirsiniz ve diski 4 TiB'nin ötesine genişletmeden önce ayırabilirsiniz. Bu disk türlerinden biri zaten 4 TiB'den büyükse, VM'yi serbest bırakmadan ve diski ayırmadan genişletebilirsiniz.
- Yalnızca veri diskleri için desteklenir.
- Paylaşılan diskler için desteklenmez.
- Yüklenmesi ve aşağıdaki seçeneklerden birini kullanması gerekir:
- En yeni Azure CLI.
- En son Azure PowerShell modülü.
- Azure portalı.
-
2021-04-01veya daha yeni bir API sürümüne sahip bir Azure Resource Manager şablonu.
- Bazı klasik VM'lerde kullanılamaz. Kapalı kalma süresi olmadan genişletmeyi destekleyen klasik VM ürünlerinin listesini almak için bu betiği kullanın.
Ultra Diskler ve Premium SSD v2 ile genişletme
Kapalı kalma süresi olmadan Ultra Diskler ve Premium SSD v2 disklerinin genişletilmesi aşağıdaki ek sınırlamalara sahiptir:
- Bu diskte verilerin arka plan kopyası da gerçekleşirken diski genişletemezsiniz. Bir diskin anlık görüntülerden geri doldurulması örneğidir.
Değişikliği yapmak için Azure Portal, Azure CLI veya Azure PowerShell modülünü kullanarak bu disk türlerinden birini destekleyen tüm bölgelerde kapalı kalma süresi olmadan NVMe denetleyicilerini kullanarak VM'lere bağlı Ultra Diskleri ve Premium SSD v2 disklerini genişletebilirsiniz.
Doğru boyutun Windows VM'lerine ve Linux VM'lerine yansıtılması için 10 dakikaya kadar izin verin. Linux VM'leri için bir Linux yeniden tarama işlevi gerçekleştirmeniz gerekir. İş yükü olmayan bir Windows VM için bir Windows yeniden tarama işlevi gerçekleştirmeniz gerekir. Hemen yeniden tarayabilirsiniz, ancak süre 10 dakika içindeyse, doğru boyutu görüntülemek için yeniden tarama yapmanız gerekebilir. Yeniden tarama düzgün çalışmazsa, yeniden taramayı yineleyebilir veya vm'yi yeniden başlatarak doğru boyutu görüntüleyebilirsiniz.
Azure yönetilen diski genişletme
En son Azure CLI'yi yüklediğinizden ve az login kullanarak bir Azure hesabında oturum açtığınızdan emin olun.
Bu makale, Azure'da en az bir veri diski takılı ve hazırlanmış bir VM gerektirir. Kullanabileceğiniz bir VM'niz yoksa bkz . Veri diskleriyle VM oluşturma ve hazırlama.
Aşağıdaki örneklerde myResourceGroup ve myVM gibi yer tutucu parametre adlarını kendi değerlerinizle değiştirin.
Önemli
Diskiniz Kapalı kalma süresi olmadan genişletme'deki gereksinimleri karşılıyorsa 1. ve 3. adımları atlayabilirsiniz.
Mevcut diski küçültme desteklenmez ve veri kaybına neden olabilir.
Diskleri genişletdikten sonra, daha büyük disklerden yararlanmak için işletim sistemindeki birimi genişletin.
Sanal sabit disklerdeki işlemler VM çalışırken gerçekleştirilemez. az vm deallocate komutunu kullanarak sanal makinenizi serbest bırakın. Aşağıdaki örnekte myResourceGroup adlı kaynak grubunda myVM adlı VM serbest bırakılır:
az vm deallocate --resource-group myResourceGroup --name myVMSanal sabit diski genişletmek için VM'nin serbest bırakılması gerekir. VM'nin durdurulması
az vm stopişlem kaynaklarını serbest bırakmaz. İşlem kaynaklarını serbest bırakmak için kullanınaz vm deallocate.Bir kaynak grubundaki yönetilen disklerin listesini az disk list ile görüntüleyin. Aşağıdaki örnekte , myResourceGroup adlı kaynak grubundaki yönetilen disklerin listesi gösterilmektedir:
az disk list \ --resource-group myResourceGroup \ --query '[*].{Name:name,size:diskSizeGB,Tier:sku.tier}' \ --output tableGerekli diski az disk update ile genişletin. Aşağıdaki örnek, myDataDisk adlı yönetilen diski 200 GB'a genişletir:
az disk update \ --resource-group myResourceGroup \ --name myDataDisk \ --size-gb 200Yönetilen diski genişlettiğiniz zaman, güncelleştirilmiş boyut en yakın yönetilen disk boyutuna yuvarlanmış olur.
az vm start ile VM'nizi başlatın. Aşağıdaki örnek myResourceGroup adlı kaynak grubunda myVM adlı VM'yi başlatır:
az vm start --resource-group myResourceGroup --name myVM
Disk bölümünü ve dosya sistemini genişletme
Bölüm yeniden boyutlandırma gerçekleştirmek için birçok araç kullanabilirsiniz. Bu makalenin geri kalanında ayrıntılı olarak sunulan araçlar, cloud-init gibi belirli otomatik işlemlerin kullandığı araçlarla aynıdır. Burada açıklandığı gibi, growpart aracı gdisk paketiyle GPT diskleriyle evrensel uyumluluk sağlar çünkü fdisk gibi bazı araçların eski sürümleri GPT'yi desteklemezdi.
Değiştirilen disk boyutunu algılama
Veri diskini kapalı kalma süresi olmadan genişletmek için daha önce bahsedilen yordamı kullandıysanız, bildirilen disk boyutu cihaz yeniden taranana kadar değişmez. Yeniden tarama normalde yalnızca önyükleme işlemi sırasında gerçekleşir. Bu yeniden taramayı isteğe bağlı olarak çağırmak için aşağıdaki yordamı kullanın. Bu makaledeki yöntemleri kullandığınızda, bu örnekte veri diskinin şu anda /dev/sda olduğuna ve 256 GiB'den 512 GiB'ye yeniden boyutlandırıldığına dikkat edin.
fdisk -l /dev/sdaçıktısının ilk satırında şu anda tanınan boyutu belirleyin.sudo fdisk -l /dev/sdaDisk /dev/sda: 256 GiB, 274877906944 bytes, 536870912 sectors Disk model: Virtual Disk Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: dos Disk identifier: 0x43d10aad Device Boot Start End Sectors Size Id Type /dev/sda1 2048 536870878 536868831 256G 83 LinuxBu cihaz için yeniden tarama dosyasına bir
1karakter ekleyin. Örnektekisdareferansını not edin. Farklı bir disk cihazı yeniden boyutlandırılırsa disk tanımlayıcısı değişir.echo 1 | sudo tee /sys/class/block/sda/device/rescanYeni disk boyutunun artık tanındığını doğrulayın.
sudo fdisk -l /dev/sdaDisk /dev/sda: 512 GiB, 549755813888 bytes, 1073741824 sectors Disk model: Virtual Disk Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: dos Disk identifier: 0x43d10aad Device Boot Start End Sectors Size Id Type /dev/sda1 2048 536870878 536868831 256G 83 Linux
Bu makalenin geri kalanında, işletim sistemi düzeyinde bir birimin boyutunu artırmak için yordam örnekleri için işletim sistemi diski kullanılır. Genişletilmiş disk bir veri diskiyse, veri diski cihazını tanımlamak için önceki kılavuzu kullanın. Kılavuz olarak bu yönergeleri izleyin. Veri diski cihazını (örneğin, /dev/sda), bölüm numaralarını, birim adlarını, bağlama noktalarını ve dosya sistemi biçimlerini gerektiği gibi değiştirin.
Tüm Linux işletim sistemi kılavuzlarını genel olarak herhangi bir dağıtımda geçerli olabilecek şekilde düşünün; ancak genellikle adlandırılmış pazar yeri yayıncısının kurallarıyla uyum sağlar. Red Hat'i temel alan veya Red Hat uyumluluğu talep eden herhangi bir dağıtıma ilişkin paket gereksinimleri için Red Hat belgelerine bakın.
İşletim sistemi diskinin boyutunu artırma
Aşağıdaki yönergeler desteklenen Linux dağıtımları için geçerlidir.
Devam etmeden önce VM'nizin tam yedek kopyasını oluşturun veya en azından işletim sistemi diskinizin anlık görüntüsünü alın.
Ubuntu 16.x ve daha yeni sürümlerde işletim sistemi diskinin ve dosya sistemlerinin kök bölümü, cloud-init tarafından kök diskteki tüm boş bitişik alanı kullanacak şekilde otomatik olarak genişletilir. Yeniden boyutlandırma işlemi için az miktarda boş alan bulunmalıdır. Bu durumda, sıra şu şekildedir:
- daha önce açıklandığı gibi işletim sistemi diskinin boyutunu artırın.
- VM'yi yeniden başlatın ve root kullanıcı hesabını kullanarak VM'ye erişin.
- İşletim sistemi diskinin artık daha yüksek bir dosya sistemi boyutu görüntülediğini doğrulayın.
Aşağıdaki örnekte gösterildiği gibi, işletim sistemi diski portaldan 100 GB'a yeniden boyutlandırıldı.
/dev/sda1 üzerine bağlı / dosya sistemi artık 97 GB gösteriyor.
df -Th
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 314M 0 314M 0% /dev
tmpfs tmpfs 65M 2.3M 63M 4% /run
/dev/sda1 ext4 97G 1.8G 95G 2% /
tmpfs tmpfs 324M 0 324M 0% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 324M 0 324M 0% /sys/fs/cgroup
/dev/sda15 vfat 105M 3.6M 101M 4% /boot/efi
/dev/sdb1 ext4 20G 44M 19G 1% /mnt
tmpfs tmpfs 65M 0 65M 0% /run/user/1000
user@ubuntu:~#
Kapalı kalma süresi olmadan Klasik VM SKU'sunu genişletin
Klasik VM SKU'su kullanıyorsanız, disklerin kesinti olmadan genişletilmesi desteklenmeyebilir.
Hangi VM SKU'larıyla kullanılabilir olduğunu belirlemek için aşağıdaki PowerShell betiğini kullanın:
Connect-AzAccount
$subscriptionId="yourSubID"
$location="desiredRegion"
Set-AzContext -Subscription $subscriptionId
$vmSizes=Get-AzComputeResourceSku -Location $location | where{$_.ResourceType -eq 'virtualMachines'}
foreach($vmSize in $vmSizes){
foreach($capability in $vmSize.Capabilities)
{
if(($capability.Name -eq "EphemeralOSDiskSupported" -and $capability.Value -eq "True") -or ($capability.Name -eq "PremiumIO" -and $capability.Value -eq "True") -or ($capability.Name -eq "HyperVGenerations" -and $capability.Value -match "V2"))
{
$vmSize.Name
}
}
}