Aracılığıyla paylaş


Azure'da CentOS tabanlı bir sanal makine hazırlama

Dikkat

Bu makalede, kullanım süresi sonu (EOL) durumuna yakın bir Linux dağıtımı olan CentOS'a başvuruda bulunur. Kullanımınızı göz önünde bulundurun ve buna göre planlayın. Daha fazla bilgi için bkz . CentOS kullanım süresi sonu kılavuzu.

Şunlar için geçerlidir: ✔️ Linux VM'leri ✔️ Esnek ölçek kümeleri

CentOS tabanlı Linux işletim sistemi (OS) içeren bir Azure sanal sabit diski (VHD) oluşturmayı ve karşıya yüklemeyi öğrenin. Daha fazla bilgi için bkz.

Önkoşullar

Bu makalede, bir VHD'ye zaten bir CentOS (veya benzer türev) Linux işletim sistemi yüklediğiniz varsayılır. .vhd dosyaları oluşturmak için birden çok araç vardır. Hyper-V gibi bir sanallaştırma çözümü örnek olarak verilmiştir. Yönergeler için bkz . Hyper-V rolünü yükleme ve VM yapılandırma.

CentOS yükleme notları

  • Azure için Linux hazırlama hakkında daha fazla ipucu için bkz . Genel Linux yükleme notları.
  • VHDX biçimi Azure'da desteklenmez, yalnızca sabit VHD'de desteklenir. Hyper-V Yöneticisi'ni veya cmdlet'ini kullanarak diski VHD biçimine convert-vhd dönüştürebilirsiniz. VirtualBox kullanıyorsanız, diski oluştururken dinamik olarak ayrılan varsayılanın aksine Sabit boyut'u seçersiniz.
  • Vfat çekirdek modülü çekirdekte etkinleştirilmelidir.
  • Linux sistemini yüklediğinizde, genellikle birçok yükleme için varsayılan olan Mantıksal Birim Yöneticisi (LVM) yerine standart bölümler kullanmanızı öneririz. Bölümlerin kullanılması, özellikle de sorun giderme için başka bir özdeş VM'ye bir işletim sistemi diski eklenmesi gerekiyorsa, kopyalanan VM'lerle LVM adı çakışmalarını önler. LVM veya RAID , veri disklerinde de kullanılabilir.
  • Kullanıcı tanımlı işlevler (UDF) dosya sistemlerini bağlamak için çekirdek desteği gereklidir. Azure'da ilk önyüklemede sağlama yapılandırması, konukla birlikte gelen UDF biçimli medya kullanılarak Linux VM'ye geçirilir. Azure Linux aracısı veya cloud-init yapılandırmasını okumak ve VM'yi sağlamak için UDF dosya sistemini bağlaması gerekir.
  • 2.6.37'nin altındaki Linux çekirdek sürümleri, daha büyük VM boyutlarına sahip Hyper-V üzerinde NUMA'nın desteklemiyor. Bu sorun öncelikli olarak yukarı akış Centos 2.6.32 çekirdeğini kullanan eski dağıtımları etkiler ve Centos 6.6'da (çekirdek-2.6.32-504) düzeltildi. 2.6.37'den eski özel çekirdekler veya 2.6.32-504'ten eski Red Hat Enterprise Linux (RHEL) tabanlı çekirdekler çalıştıran sistemlerin grub.conf dosyasındaki çekirdek komut satırında önyükleme parametresini ayarlaması numa=off gerekir. Daha fazla bilgi için bkz. Red Hat KB 436883.
  • İşletim sistemi diskinde değiştirme bölümü yapılandırmayın.
  • Azure'da tüm VHD'lerin 1 MB'a hizalanmış bir sanal boyutu olmalıdır. Ham diskten VHD'ye dönüştürürken, dönüştürmeden önce ham disk boyutunun 1 MB'ın katı olduğundan emin olmanız gerekir. Daha fazla bilgi için bkz . Linux yükleme notları.

Not

Cloud-init >= 21.2, UDF gereksinimini kaldırır. Ancak UDF modülü etkinleştirilmeden, cd-ROM sağlama sırasında bağlanmaz ve bu da özel verilerin uygulanmasını engeller. Bu durum için geçici bir çözüm, kullanıcı verilerini kullanarak özel veriler uygulamaktır. Özel verilerden farklı olarak kullanıcı verileri şifrelenmez. Daha fazla bilgi için bkz . Kullanıcı veri biçimleri.

CentOS 6.x

Önemli

CentOS 6, EOL'ye ulaştı ve artık CentOS topluluğu tarafından desteklenmiyor. Bu sürüm için başka güncelleştirme veya güvenlik düzeltme eki yayımlanmaz ve bu güncelleştirmeler olası güvenlik risklerine karşı savunmasız kalır. Sisteminizin güvenliğini ve kararlılığını sağlamak için CentOS'un daha yeni bir sürümüne yükseltmenizi kesinlikle öneririz. Daha fazla yardım için BT departmanınıza veya sistem yöneticinize başvurun.

  1. Hyper-V Yöneticisi'nde VM'yi seçin.

  2. VM için bir konsol penceresi açmak için Bağlan'ı seçin.

  3. CentOS 6'da Azure NetworkManager Linux aracısını etkileyebilir. Bu paketi kaldırın:

    sudo rpm -e --nodeps NetworkManager
    
  4. Dosyayı /etc/sysconfig/network oluşturun veya düzenleyin ve aşağıdaki metni ekleyin:

    NETWORKING=yes
    HOSTNAME=localhost.localdomain
    
  5. Dosyayı /etc/sysconfig/network-scripts/ifcfg-eth0 oluşturun veya düzenleyin ve aşağıdaki metni ekleyin:

    DEVICE=eth0
    ONBOOT=yes
    BOOTPROTO=dhcp
    TYPE=Ethernet
    USERCTL=no
    PEERDNS=yes
    IPV6INIT=no
    
  6. Ethernet arabirimleri için statik kurallar oluşturmaktan kaçınmak için udev kurallarını değiştirin. Bu kurallar, Azure veya Hyper-V'de vm kopyaladığınızda sorunlara neden olabilir:

    sudo ln -s /dev/null /etc/udev/rules.d/75-persistent-net-generator.rules
    sudo rm -f /etc/udev/rules.d/70-persistent-net.rules
    
  7. Ağ hizmetinin önyükleme zamanında başlatıldığından emin olun:

    sudo chkconfig network on
    
  8. Azure veri merkezlerinde barındırılan OpenLogic yansıtmalarını kullanmak istiyorsanız, dosyayı aşağıdaki depolarla değiştirin /etc/yum.repos.d/CentOS-Base.repo . Bu eylem, Azure Linux aracısı gibi ek paketler içeren [openlogic] deposunu da ekler:

    [openlogic]
    name=CentOS-$releasever - openlogic packages for $basearch
    baseurl=http://olcentgbl.trafficmanager.net/openlogic/$releasever/openlogic/$basearch/
    enabled=1
    gpgcheck=0
    
    [base]
    name=CentOS-$releasever - Base
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
    baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/os/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    
    #released updates
    [updates]
    name=CentOS-$releasever - Updates
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
    baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/updates/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    
    #additional packages that might be useful
    [extras]
    name=CentOS-$releasever - Extras
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
    baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/extras/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    
    #additional packages that extend functionality of existing packages
    [centosplus]
    name=CentOS-$releasever - Plus
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra
    baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/centosplus/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    
    #contrib - packages by Centos Users
    [contrib]
    name=CentOS-$releasever - Contrib
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib&infra=$infra
    baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/contrib/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    

    Not

    Bu makalenin geri kalanında, Azure Linux aracısını yüklemek için kullanılan depoyu [openlogic] kullandığınız varsayılır.

  9. aşağıdaki satırı içine /etc/yum.confekleyin:

    http_caching=packages
    
  10. Geçerli yum meta verilerini temizleyin ve sistemi en son paketlerle güncelleştirin:

    sudo yum clean all
    

    CentOS'un eski bir sürümü için görüntü oluşturmadığınız sürece, tüm paketleri en son sürüme güncelleştirmenizi öneririz:

    sudo yum -y update
    

    Bu komutu çalıştırdıktan sonra yeniden başlatma gerekebilir.

  11. İsteğe bağlı: Linux Integration Services (LIS) sürücülerini yükleyin.

    Önemli

    Adım CentOS 6.3 ve öncesi için gereklidir ve sonraki sürümler için isteğe bağlıdır.

    sudo rpm -e hypervkvpd  ## (might return an error if not installed, that's OK)
    sudo yum install microsoft-hyper-v
    

    Alternatif olarak, RPM'yi VM'nize yüklemek için LIS indirme sayfasındaki el ile yükleme yönergelerini izleyebilirsiniz.

  12. Azure Linux aracısını ve bağımlılıklarını yükleyin. Hizmeti başlatın ve etkinleştirin waagent :

    sudo yum install python-pyasn1 WALinuxAgent
    sudo service waagent start
    sudo chkconfig waagent on
    

    WALinuxAgent paketi NetworkManager , 3. adımda açıklandığı gibi ve NetworkManager-gnome paketlerini henüz kaldırılmamışsa kaldırır.

  13. Grub yapılandırmanızdaki çekirdek önyükleme satırını, Azure için diğer çekirdek parametrelerini içerecek şekilde değiştirin. Bu adımı gerçekleştirmek için bir metin düzenleyicisinde açın /boot/grub/menu.lst ve varsayılan çekirdeğin aşağıdaki parametreleri içerdiğinden emin olun:

    console=ttyS0 earlyprintk=ttyS0 rootdelay=300
    

    Bu değişiklik, tüm konsol iletilerinin hata ayıklama sorunlarıyla Azure desteği yardımcı olabilecek ilk seri bağlantı noktasına gönderilmesini de sağlar.

    Ayrıca aşağıdaki parametreleri kaldırmanızı öneririz:

    rhgb quiet crashkernel=auto
    

    Grafik ve sessiz önyükleme, tüm günlüklerin seri bağlantı noktasına gönderilmesini istediğiniz bir bulut ortamında kullanışlı değildir. crashkernel İsterseniz seçenek yapılandırılabilir. Ancak bu parametre VM'deki kullanılabilir bellek miktarını 128 MB veya daha fazla azaltır; bu da daha küçük VM boyutları için sorun olabilir.

    Önemli

    CentOS 6.5 ve öncesi de çekirdek parametresini numa=offayarlamalıdır. Daha fazla bilgi için bkz. Red Hat KB 436883.

  14. Secure Shell sunucusunun yüklendiğinden ve önyükleme zamanında başlatacak şekilde yapılandırıldığından emin olun. Bu ayar genellikle varsayılan ayardır.

  15. İşletim sistemi diskinde değiştirme alanı oluşturmayın.

    Azure Linux aracısı, Azure'da VM sağlandıktan sonra VM'ye bağlı yerel kaynak diskini kullanarak değiştirme alanını otomatik olarak yapılandırabilir. Yerel kaynak diski geçici bir disktir ve VM'nin yetkisi kaldırıldığında boşaltılabilir. Azure Linux aracısını yükledikten sonra (önceki adıma bakın), aşağıdaki parametreleri /etc/waagent.conf uygun şekilde değiştirin:

    ResourceDisk.Format=y
    ResourceDisk.Filesystem=ext4
    ResourceDisk.MountPoint=/mnt/resource
    ResourceDisk.EnableSwap=y
    ResourceDisk.SwapSizeMB=2048 ## NOTE: set this to whatever you need it to be.
    
  16. VM'nin sağlamasını kaldırın ve Azure'da sağlama için hazırlayın:

    sudo waagent -force -deprovision+user
    sudo export HISTSIZE=0
    

    Not

    Belirli bir VM'yi geçiriyorsanız ve genelleştirilmiş bir görüntü oluşturmak istemiyorsanız sağlamayı kaldırma adımını atlayın.

  17. Hyper-V Yöneticisi'nde Eylem>Kapat'ı seçin. Linux VHD'niz artık Azure'a yüklenmeye hazırdır.

CentOS 7.0+

CentOS 7.0+ kullanıyorsanız sonraki bölümlerdeki adımları izleyin.

CentOS 7'deki değişiklikler (ve benzer türevler)

Azure için CentOS 7 VM'si hazırlamak CentOS 6'ya benzer. Birkaç önemli fark şunlara dikkat etmeye değer:

  • Paket NetworkManager artık Azure Linux aracısı ile çakışmaz. Bu paket varsayılan olarak yüklenir ve kaldırmamanızı öneririz.

  • GRUB2 artık varsayılan önyükleme yükleyicisi olarak kullanıldığından çekirdek parametrelerini düzenleme yordamı değişmiştir. ("Yapılandırma adımları" bölümüne bakın.)

  • XFS artık varsayılan dosya sistemidir. İsterseniz ext4 dosya sistemi hala kullanılabilir.

  • CentOS 8 Stream ve daha yeni sürümler artık varsayılan olarak dahil network.service olmadığından el ile yüklemeniz gerekir:

    sudo yum install network-scripts
    sudo systemctl enable network.service
    

Yapılandırma adımları

  1. Hyper-V Yöneticisi'nde VM'yi seçin.

  2. VM için bir konsol penceresi açmak için Bağlan'ı seçin.

  3. Dosyayı /etc/sysconfig/network oluşturun veya düzenleyin ve aşağıdaki metni ekleyin:

    NETWORKING=yes
    HOSTNAME=localhost.localdomain
    
  4. Dosyayı /etc/sysconfig/network-scripts/ifcfg-eth0 oluşturun veya düzenleyin ve aşağıdaki metni ekleyin:

    DEVICE=eth0
    ONBOOT=yes
    BOOTPROTO=dhcp
    TYPE=Ethernet
    USERCTL=no
    PEERDNS=yes
    IPV6INIT=no
    NM_CONTROLLED=no
    
  5. Ethernet arabirimleri için statik kurallar oluşturmaktan kaçınmak için udev kurallarını değiştirin. Bu kurallar, Azure veya Hyper-V'de vm kopyaladığınızda sorunlara neden olabilir:

    sudo ln -s /dev/null /etc/udev/rules.d/75-persistent-net-generator.rules
    
  6. Azure veri merkezlerinde barındırılan OpenLogic yansıtmaları kullanmak istiyorsanız /etc/yum.repos.d/CentOS-Base.repo dosyasını aşağıdaki depolarla değiştirin. Bu eylem, Azure Linux aracısı için paketleri içeren [openlogic] deposunu da ekler:

    [openlogic]
    name=CentOS-$releasever - openlogic packages for $basearch
    baseurl=http://olcentgbl.trafficmanager.net/openlogic/$releasever/openlogic/$basearch/
    enabled=1
    gpgcheck=0
    
    [base]
    name=CentOS-$releasever - Base
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
    baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/os/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    
    #released updates
    [updates]
    name=CentOS-$releasever - Updates
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
    baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/updates/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    
    #additional packages that might be useful
    [extras]
    name=CentOS-$releasever - Extras
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
    baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/extras/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    
    #additional packages that extend functionality of existing packages
    [centosplus]
    name=CentOS-$releasever - Plus
    #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra
    baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/centosplus/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    

    Not

    Bu makalenin geri kalanında, Azure Linux aracısını yüklemek için kullanılan depoyu [openlogic] kullandığınız varsayılır.

  7. Geçerli yum meta verilerini temizleyin ve tüm güncelleştirmeleri yükleyin:

    sudo yum clean all
    

    CentOS'un eski bir sürümü için görüntü oluşturmadığınız sürece, tüm paketleri en son sürüme güncelleştirmenizi öneririz:

    sudo yum -y update
    

    Bu komutu çalıştırdıktan sonra yeniden başlatma gerekebilir.

  8. Grub yapılandırmanızdaki çekirdek önyükleme satırını, Azure için diğer çekirdek parametrelerini içerecek şekilde değiştirin. Bu adımı gerçekleştirmek için bir metin düzenleyicisinde açın /etc/default/grub ve parametresini GRUB_CMDLINE_LINUX düzenleyin. Örneğin:

    GRUB_CMDLINE_LINUX="rootdelay=300 console=ttyS0 earlyprintk=ttyS0 net.ifnames=0"
    

    Bu değişiklik, tüm konsol iletilerinin hata ayıklama sorunlarıyla Azure desteği yardımcı olabilecek ilk seri bağlantı noktasına gönderilmesini de sağlar. Ayrıca ağ arabirim kartları için yeni CentOS 7 adlandırma kurallarını da kapatır. Ayrıca aşağıdaki parametreleri kaldırmanızı öneririz:

    rhgb quiet crashkernel=auto
    

    Grafik ve sessiz önyükleme, tüm günlüklerin seri bağlantı noktasına gönderilmesini istediğiniz bir bulut ortamında kullanışlı değildir. crashkernel İsterseniz seçenek yapılandırılabilir. Ancak bu parametre VM'deki kullanılabilir bellek miktarını 128 MB veya daha fazla azaltır; bu da daha küçük VM boyutları için sorun olabilir.

  9. düzenlemeyi /etc/default/grubbitirdikten sonra grub yapılandırmasını yeniden oluşturun:

    sudo grub2-mkconfig -o /boot/grub2/grub.cfg
    

    Not

    UEFI özellikli bir VM'yi karşıya yüklüyorsanız grub'u güncelleştirme komutu şeklindedir grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg. Ayrıca, vfat çekirdek modülü çekirdekte etkinleştirilmelidir. Aksi takdirde sağlama başarısız olur.

    udf modülünün etkinleştirildiğinden emin olun. Kaldırma veya devre dışı bırakma, sağlama veya önyükleme hatasına neden olur. (_Cloud-init >= 21.2, udf gereksinimini kaldırır. Daha fazla bilgi için belgenin üst kısmını okuyun.)

  10. Görüntüyü VMware, VirtualBox veya KVM'den oluşturuyorsanız Hyper-V sürücülerinin initramfs'a dahil olduğundan emin olun:

    1. İçerik düzenleme /etc/dracut.conf ve ekleme:

      add_drivers+=" hv_vmbus hv_netvsc hv_storvsc "
      
    2. Initramfs'ı yeniden oluşturun:

      sudo dracut -f -v
      
  11. Azure VM uzantıları için Azure Linux aracısını ve bağımlılıklarını yükleyin:

    sudo yum install python-pyasn1 WALinuxAgent
    sudo systemctl enable waagent
    
  12. Sağlamayı işlemek için yükleyin cloud-init :

    sudo yum install -y cloud-init cloud-utils-growpart gdisk hyperv-daemons
    
    • için cloud-inityapılandırınwaagent:
    sudo sed -i 's/Provisioning.Agent=auto/Provisioning.Agent=auto/g' /etc/waagent.conf
    sudo sed -i 's/ResourceDisk.Format=y/ResourceDisk.Format=n/g' /etc/waagent.conf
    sudo sed -i 's/ResourceDisk.EnableSwap=y/ResourceDisk.EnableSwap=n/g' /etc/waagent.conf
    
    sudo echo "Adding mounts and disk_setup to init stage"
    sudo sed -i '/ - mounts/d' /etc/cloud/cloud.cfg
    sudo sed -i '/ - disk_setup/d' /etc/cloud/cloud.cfg
    sudo sed -i '/cloud_init_modules/a\\ - mounts' /etc/cloud/cloud.cfg
    sudo sed -i '/cloud_init_modules/a\\ - disk_setup' /etc/cloud/cloud.cfg
    
    sudo echo "Allow only Azure datasource, disable fetching network setting via IMDS"
    sudo cat > /etc/cloud/cloud.cfg.d/91-azure_datasource.cfg <<EOF
    datasource_list: [ Azure ]
    datasource:
        Azure:
            apply_network_config: False
    EOF
    
    if [[ -f /mnt/swapfile ]]; then
    echo Removing swapfile - RHEL uses a swapfile by default
    swapoff /mnt/swapfile
    rm /mnt/swapfile -f
    fi
    
    echo "Add console log file"
    cat >> /etc/cloud/cloud.cfg.d/05_logging.cfg <<EOF
    
    # This tells cloud-init to redirect its stdout and stderr to
    # 'tee -a /var/log/cloud-init-output.log' so the user can see output
    # there without needing to look on the console.
    output: {all: '| tee -a /var/log/cloud-init-output.log'}
    EOF
    
  13. Değiştirme yapılandırması:

    1. İşletim sistemi diskinde değiştirme alanı oluşturmayın.

      Daha önce Azure Linux aracısı, Azure'da VM sağlandıktan sonra VM'ye bağlı yerel kaynak diski kullanılarak değiştirme alanını otomatik olarak yapılandırmak için kullanılıyordu. Ancak, cloud-init şimdi bu adımı işler. Takas dosyasını oluşturmak için kaynak diski biçimlendirmek için Linux aracısını kullanmamalısınız. aşağıdaki parametreleri /etc/waagent.conf uygun şekilde değiştirin:

      sudo sed -i 's/ResourceDisk.Format=y/ResourceDisk.Format=n/g' /etc/waagent.conf
      sudo sed -i 's/ResourceDisk.EnableSwap=y/ResourceDisk.EnableSwap=n/g' /etc/waagent.conf
      
    2. Değiştirme dosyasını bağlamak, biçimlendirmek ve oluşturmak istiyorsanız şunları yapabilirsiniz:

      • Her VM oluşturduğunuzda bu komutu yapılandırma olarak cloud-init geçirin.

      • VM her oluşturulduğunda bu adımı gerçekleştirmek için görüntüde pişirilen bir cloud-init yönerge kullanın:

        sudo echo 'DefaultEnvironment="CLOUD_CFG=/etc/cloud/cloud.cfg.d/00-azure-swap.cfg"' >> /etc/systemd/system.conf
        sudo cat > /etc/cloud/cloud.cfg.d/00-azure-swap.cfg << EOF
        #cloud-config
        # Generated by Azure cloud image build
        disk_setup:
          ephemeral0:
            table_type: mbr
            layout: [66, [33, 82]]
            overwrite: True
        fs_setup:
          - device: ephemeral0.1
            filesystem: ext4
          - device: ephemeral0.2
            filesystem: swap
        mounts:
          - ["ephemeral0.1", "/mnt"]
          - ["ephemeral0.2", "none", "swap", "sw,nofail,x-systemd.requires=cloud-init.service,x-systemd.device-timeout=2", "0", "0"]
        EOF
        
  14. VM'nin sağlamasını kaldırıp Azure'da sağlama için hazırlamak için aşağıdaki komutları çalıştırın.

    Not

    Belirli bir VM'yi geçiriyorsanız ve genelleştirilmiş bir görüntü oluşturmak istemiyorsanız sağlamayı kaldırma adımını atlayın.

    sudo rm -f /var/log/waagent.log
    sudo cloud-init clean
    sudo waagent -force -deprovision+user
    sudo rm -f ~/.bash_history
    sudo export HISTSIZE=0
    
  15. Hyper-V Yöneticisi'nde Eylem>Kapat'ı seçin. Linux VHD'niz artık Azure'a yüklenmeye hazırdır.

Artık Azure'da yeni VM'ler oluşturmak için CentOS Linux VHD'nizi kullanmaya hazırsınız. .vhd dosyasını Azure'a ilk kez yüklüyorsanız bkz . Özel diskten Linux VM oluşturma.