Hyppää sisältöön

Docs CSC now features an automatic Finnish translation. Click here for more information.

Warning!

Puhti and Mahti will be decommissioned after Roihu becomes available. Users should clean up unnecessary files and move any required data by the end of August 2026. See the Roihu data preparation instructions for details.

Puhti scratch is very full: keep only active data there and move or delete everything else. No new Puhti scratch quota will be granted.

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 eri alustalla. Tämä työkalu on olennainen osa useita virtualisointikehyksiä. Se on toteutettu muun muassa OpenStack-pilvi-infrastruktuurissa.

1. Varmuuskopion tai tilannevedoksen lataaminen

Varmuuskopion tai tilannevedoskuvan lataaminen cPoudasta omalle 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ä terminaaliympäristösi 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 syöttämään salasanasi. Katso Asenna OpenStack-asiakasohjelma muiden käyttöjärjestelmien osalta.

Listaa levykuvat/tilannevedokset sekä niiden levyformaatti, 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 levyformaatilla 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 levyformaatteja, kuten raw, vdi ja qcow2. Katso lisätietoja kohdasta OpenStack Disk and Container Formats.

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

Seuraava komento kertoo levykuvan formaatin, jos qemu-img-työkalu on asennettu. Katso lisätietoja kohdasta QEMU installation.

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

3. VM-levykuvan levyformaattien muuntaminen QCOW2-muotoon QEMUlla

Jos sinulla ei ole QCOW2-levykuvaa, mutta sinulla on VM-levy toisessa formaatissa, 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 formaatti (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, tarkista 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 tilannevedoskuvien ajaminen paikallisesti QEMUlla

cPoudasta ladattu varmuuskopio- tai tilannevedoskuva on tyypillisesti raw-muodossa. Ennen sen suorittamista QEMUlla on tärkeää muuntaa levykuva qcow2-muotoon. Katso edellisestä osiosta vaiheet formaatin 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 muutoksia paikalliseen verkkoasetusten määritykseen.

  • 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-ISO:n kanssa.

    QEMUlla levykuva käynnistetään seuraavasti:

    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. Tässä yritämme muodostaa yhteyden SSH:lla.

    Annettu QEMU-komento tekee useita asioita:

    1. -enable-kvm: Ottaa KVM:n käyttöön
    2. -m 2048: Määrittää 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 CD-ROMiksi VM:ään.
    5. -net nic: Luo VM:lle virtuaalisen verkkokortin (NIC).
    6. -net user,hostfwd=tcp::2222-:22: Ottaa käyttöön 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 cPoutaan

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

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

    Käytä openstack image create -komentoa levykuvan lataamiseen 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 verkkotyöpöydälle tunnuksillasi.

    • Siirry levykuvien hallintaan: Project-välilehdellä siirry kohtaan Compute -> Images.
    • Lataa levykuva: 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 selainkäyttöliittymässä 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