Hyppää sisältöön

Welcome to our weekly research support coffee hour on Zoom! Click here for more information.

Warning!

Puhti scratch disk is becoming very full (80+ % ) resulting in performance degradation. Everybody is advised to only keep actively processed data on scratch, all other data should be deleted, transferred to host institute or stored in Lumi-O. No new quota will be granted. Click here for a tool for examining your disk usage.

QEMU-virtuaalilevykuvat cPoudassa

QEMU on vankka avoimen lähdekoodin kone-emulaattori ja virtualisoija. Sen avulla voidaan ajaa käyttöjärjestelmiä ja sovelluksia, jotka on tarkoitettu yhdelle koneelle, täysin erilaisella alustalla. Tämä työkalu on olennainen osa useita virtualisointikehyksiä. Se on toteutettu erityisesti OpenStack-pilvi-infrastruktuurissa.

1. Varmuuskopion tai tilannevedoksen lataaminen

Varmuuskopion tai tilannevedoslevykuvan lataaminen cPoudasta omalle paikalliselle tietokoneellesi. Tätä varten tarvitset OpenStackin komentorivikäyttöliittymän (openstack). Ota openrc-skriptitiedosto käyttöön, jotta tarvittavat ympäristömuuttujat todennusta varten määrittyvät. Jos sinulla ei ole tätä tiedostoa, voit ladata sen selainkäyttöliittymästä UI. Lisätietoja on kohdissa Asenna asiakastyökalut pipillä ja Määritä päätteen ympäristö OpenStackia varten.

Esimerkiksi Debian-/Ubuntu-pohjaisessa järjestelmässä voit asentaa nämä seuraavasti:

sudo apt-get install python3-openstackclient 

Ja ota openrc-skriptitiedosto käyttöön:

source <project_name_here>-openrc.sh

Sinua pyydetään antamaan salasanasi. Katso Asenna OpenStack-asiakasohjelma, jos käytät muuta käyttöjärjestelmää.

Listaa levykuvat/tilannevedokset sekä niiden levymuoto, jotka ovat saatavilla OpenStack-projektissasi:

openstack image list --long

Kirjaa muistiin sen levykuvan tunniste, jonka haluat ladata.

Lataa nyt levykuva paikalliselle koneellesi:

openstack image save --file LOCAL_IMAGE_FILENAME.qcow2 IMAGE_ID

Korvaa LOCAL_IMAGE_FILENAME.qcow2 haluamallasi paikallisella tiedostonimellä ja levymuodolla sekä IMAGE_ID tunnisteella.

2. Ladatun varmuuskopion tai tilannevedoksen tiedostomuotojen ymmärtäminen

Kun lataat virtuaalikoneesi (VM) varmuuskopion tai tilannevedoksen cPoudasta, ladatun levykuvan tiedostomuoto voi olla raw tai qcow2. QEMU-emulaattori tukee useita levymuotoja, kuten raw, vdi ja qcow2. Katso lisätietoja kohdasta OpenStack Disk and Container Formats.

  • QCOW2 (QEMU Copy On Write): Tämä on OpenStack-levykuvien oletus- ja yleisin muoto, erityisesti silloin kun käytössä on QEMU.
  • RAW: Raaka levykuvamuoto. Se on yleensä kooltaan suurempi kuin QCOW2-levykuvat.
  • VDI (Virtual Disk Image): Tämä muoto liittyy pääasiassa VirtualBoxiin, mutta sitä voidaan käyttää myös OpenStackissa.

Seuraava komento kertoo levykuvan muodon, edellyttäen että qemu-img-työkalu on asennettu. Katso lisätietoja kohdasta QEMU installation.

qemu-img info /path/to/your/image

3. VM-levykuvien levymuotojen muuntaminen QCOW2-muotoon QEMUlla

Jos sinulla ei ole QCOW2-levykuvaa, mutta sinulla on VM-levy toisessa muodossa, voit muuntaa sen QCOW2-muotoon QEMU:n qemu-img-työkalulla. Seuraava komento muuntaa VM-levysi QCOW2-muotoon:

qemu-img convert -f [source_format] -O qcow2 [source_image] [destination_image.qcow2]

Missä:

  • [source_format]: Lähdelevykuvan muoto (esim. raw, vdi, vmdk, vhdx).
  • [source_image]: Polku lähde-VM-levyyn.
  • [destination_image.qcow2]: Polku, johon haluat tallentaa muunnetun QCOW2-levykuvan.

Esimerkiksi jos haluat muuntaa ladatun testCentOS.raw-levykuvan QCOW2-levykuvaksi QEMUlla, hae ensin levykuvan tiedot ja muunna se sitten seuraavasti:

qemu-img info testCentOS.raw 

image: testCentOS.raw
file format: raw
virtual size: 2.97 GiB (3184721920 bytes)
disk size: 2.97 GiB
qemu-img convert -f raw -O qcow2 testCentOS.raw testCentOS.qcow2

Kun muunnos on valmis, voit tarkistaa muunnetun levykuvan tiedot komennolla:

qemu-img info testCentOS.qcow2

4. Ladattujen varmuuskopio- tai tilannevedoslevykuvien ajaminen paikallisesti QEMUlla

cPoudasta ladattu varmuuskopio- tai tilannevedoslevykuva on tyypillisesti raw-muodossa. Ennen sen suorittamista QEMUlla on tärkeää muuntaa tämä levykuva qcow2-muotoon. Katso edellisestä osiosta vaiheet muodon muuntamiseen ja tarkistamiseen. Ennen kuin ajat virtuaalikoneen paikallisesti, varmista että cloud-utils- ja qemu-kvm-paketit on asennettu. Vaiheittainen ohje on seuraava:

Warning

cPoudasta lataamasi levykuva tarvitsee cloud-initin ja vaatii muutoksia toimiakseen oikein paikallisesti. Ladattu levykuva voi vaatia paikallisen verkkokokoonpanon muutoksia.

  • Asenna tarvittavat paketit.

    RHEL- tai CentOS 8 -järjestelmässä:

    sudo dnf install cloud-utils
    

    Debian-/Ubuntu-pohjaisessa järjestelmässä:

    sudo apt-get install cloud-image-utils
    
  • Valmistele cloud-init-määritys.

    Luo tiedosto nimeltä cloud-config.yaml, jonka sisältö on seuraava:

    #cloud-config
    ssh_authorized_keys:
    - YOUR_SSH_PUBLIC_KEY
    

    Korvaa YOUR_SSH_PUBLIC_KEY SSH-julkisen avaimesi sisällöllä (~/.ssh/id_rsa.pub). Esimerkiksi:

    #cloud-config
    ssh_authorized_keys:
    - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQ... your.email@example.com
    
  • Luo cloud-init-ISO määritykselläsi

    Muunna YAML-tiedosto cloud-init-ISOksi cloud-localds-apuohjelmalla:

    cloud-localds user-data.iso cloud-config.yaml
    
  • Käynnistä VM cloud-init-ISOlla.

    QEMUlla levykuva käynnistetään esimerkiksi näin:

    qemu-kvm  -enable-kvm -m 2048 -hda test100snapshot-v2.qcow2  -cdrom user-data.iso -net nic -net user,hostfwd=tcp::2222-:22
    

    Komento tulostaa VNC server running on ::1:5900.

    Tuloste VNC server running on ::1:5900 tarkoittaa, että QEMU käynnisti virtuaalikoneen ja tarjoaa graafisen konsolin VNC-palvelimen kautta. Voit yhdistää tähän VNC-palvelimeen nähdäksesi VM:n näytön ja ollaksesi vuorovaikutuksessa sen kanssa. Seuraavaksi yritämme yhdistää siihen SSH:lla.

    Annettu QEMU-komento tekee useita asioita:

    1. -enable-kvm: Ottaa KVM:n käyttöön
    2. -m 2048: Varataan virtuaalikoneelle 2048 Mt (tai 2 Gt) RAM-muistia.
    3. -hda test100snapshot-v2.qcow2: Asettaa VM:n ensisijaiseksi kiintolevyksi test100snapshot-v2.qcow2-levykuvan.
    4. -cdrom user-data.iso: Liittää user-data.iso-tiedoston VM:ään CD-ROM-levynä.
    5. -net nic: Luo VM:lle virtuaalisen verkkoliitännän (NIC).
    6. -net user,hostfwd=tcp::2222-:22: Määrittää käyttäjätilaverkotuksen ja ohjaa isäntäkoneen portin 2222 VM:n porttiin 22.
  • Kun VM on käynnistynyt ja alustunut kokonaan, voit muodostaa tähän levykuvaan SSH-yhteyden paikallisesti (tässä käytetty tilannevedos on esimerkkinä Ubuntu 22.04 -versio):

    ssh -i ~/.ssh/id_rsa -p 2222 ubuntu@localhost
    

5. VM-levykuvan lataaminen palveluun cPoutaan

VM-levykuvan lataaminen palveluun cPoutaan voidaan tehdä joko Horizonin selainkäyttöliittymällä (WEB UI) tai OpenStackin CLI:llä. Katso lisätietoja kohdasta Levykuvien lisääminen.

  • OpenStack CLI:tä käyttäen, olettaen että olet ottanut OpenStack-käyttöoikeustiedot käyttöön yllä kuvatulla tavalla.

    Käytä openstack image create -komentoa ladataksesi levykuvan palveluun seuraavasti:

    openstack image create "testCentOS" \
    --file  testCentOS.qcow2 \
    --disk-format qcow2 \
    --container-format bare \
    --private
    

    Tarkista, että luotu levykuva näkyy niiden levykuvien luettelossa, jotka ovat saatavilla OpenStack-projektissasi:

    openstack image list --long
    
  • Selainkäyttöliittymää käyttäen kirjaudu ensin verkkohallintapaneeliin tunnuksillasi.

    • Siirry levykuvien hallintaan: Siirry Project-välilehdellä kohtaan Compute -> Images.
    • Lataa levykuva palveluun: Napsauta + Create Image -painiketta ja täytä tiedot:
      • Image Name: Anna levykuvalle nimi.
      • Image Description: (Valinnainen) Lisää lyhyt kuvaus.
      • Image Source: Valitse File Browse ja valitse QCOW2-levykuvasi.
      • Format: Valitse QCOW2 - QEMU Emulator tai raw.
      • Architecture: (Valinnainen) Määritä arkkitehtuuri (esim. x86_64).
      • Image Sharing : Protected Yes.
      • Napsauta Create Image.

Kun komento on suoritettu tai lataus palveluun selainkäyttöliittymässä on onnistunut, levykuva on käytettävissä.

Suomenkielinen tekoälykäännös

Sisällössä voi esiintyä virheellistä tietoa tekoälykäännöksestä johtuen.

Klikkaa tästä antaaksesi palautetta