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.

Rahtin integroidun rekisterin käyttö

Manuaalinen image-välimuistitus

Imageja on mahdollista välimuistittaa manuaalisesti Rahtissa. Tästä voi olla hyötyä, jos haluat poistaa ulkoisen riippuvuuden tai parantaa suorituskykyä.

Prosessi on yksinkertainen:

  1. Asenna ja kirjaudu sisään OC:lla.

  2. Yhdistä päätteen avulla Rahtin rekisteriin:

    sudo docker login -p $(oc whoami -t ) -u unused image-registry.apps.2.rahti.csc.fi
    

    Vaihtoehtoisesti voit siirtyä tähän osoitteeseen: https://oauth-openshift.apps.2.rahti.csc.fi/oauth/token/display pyytääksesi tokenin. Kun yhteys on muodostettu, näytä ja kopioi token. Komento on:

    sudo docker login -p <YOUR_TOKEN> -u unused image-registry.apps.2.rahti.csc.fi
    

    Info

    Jos saat virheen, varmista että olet kirjautunut sisään. Jos suoritat komennon oc whoami, komennon pitäisi palauttaa käyttäjätunnuksesi.

  3. Merkitse image, jonka haluat viedä:

    sudo docker tag almalinux:10 image-registry.apps.2.rahti.csc.fi/{YOUR_RAHTI_PROJECT_NAME}/almalinux:<tag>
    
    Korvaa {YOUR_RAHTI_PROJECT_NAME} projektisi nimellä. Huomaa, että YOUR_RAHTI_PROJECT_NAME tarkoittaa tässä Rahti-projektin nimeä (eli nimiavaruuden nimeä), eikä viittaa CSC-projektiin.

  4. Vie image:

    sudo docker push image-registry.apps.2.rahti.csc.fi/{YOUR_RAHTI_PROJECT_NAME}/almalinux:<tag>
    

Sinun pitäisi nähdä imaget projektissasi: Image Streams

Vaihtoehtoisesti voit hakea imageja etärekisteristä komennolla docker image ls [OPTIONS] [REPOSITORY[:TAG]]

Vianmääritys

Jos saat tämän virheen yrittäessäsi viedä imagea:

unknown: unexpected status from HEAD request to https://image-registry.apps.2.rahti.csc.fi/v2/{YOUR_RAHTI_PROJECT_NAME}/{YOUR_IMAGE_NAME}/manifests/sha256:834e7b0d913dd73e8616810c2c3a199cd8a3618e981f75eea235e0920d601ce4: 500

Sinun täytyy luoda ImageStream ennen vientiä.

Suorita tämä komento:

oc create imagestream {YOUR_IMAGE_NAME}

oc täytyy olla asennettuna paikallisesti koneellesi.

Manuaalisesti välimuistitettujen imagejen käyttö

Siirry projektisi deploymenteihin ja muokkaa sitä.

Edit deployment

Siirry kohtaan Images ja varmista, että valinta "Deploy images from an image stream tag" on valittuna. Valitse lopuksi uusi image.

Use cached image

Rahtin integroidun rekisterin käyttöoikeuksien hallinta

Rahti tarjoaa tarkkarajaisen hallinnan integroidun image-rekisterin käyttöoikeuksiin, jolloin voit hallita oikeuksia käyttäjän tunnistautumisen perusteella.

Rahtin käyttäjänä voit valita, kuinka laajasti tallennetut imaget ovat saatavilla eri käyttötapauksissa.

Käyttötapaus 1: Julkisesti vedettävät imaget internetin kautta

Tämä menetelmä mahdollistaa kaikkien imagejen vetämisen Rahti-projektissa kenen tahansa internetissä olevan toimesta.

Julkaise vain valitut imaget

Jos haluat julkaista vain yhden tai useamman tietyn imagen, katso Käyttötapaus 3

  • Kuinka otetaan käyttöön: Käytä jotakin seuraavista komennoista salliaksesi kenelle tahansa imagejen vetämisen Rahti-projektistasi:
oc policy add-role-to-user "system:image-puller" "system:anonymous" -n <project>
# OR
oc policy add-role-to-group "system:image-puller" "system:unauthenticated" -n <project>
  • Kuinka poistetaan käytöstä: Käytä jotakin seuraavista komennoista peruuttaaksesi yllä olevat muutokset:
oc policy remove-role-from-user "system:image-puller" "system:anonymous" -n <project>
# OR
oc policy remove-role-from-group "system:image-puller" "system:unauthenticated" -n <project>

Käyttötapaus 2: Vedettävät imaget kaikille Rahti-käyttäjille, ryhmille, serviceaccounteille ja projekteille

Tämä menetelmä mahdollistaa kaikkien imagejen vetämisen projektista kenen tahansa tunnistautuneen Rahti-käyttäjän toimesta, mukaan lukien muut projektit ja palvelutilit Rahtissa.

  • Kuinka otetaan käyttöön: Käytä seuraavaa komentoa salliaksesi kenelle tahansa imagejen vetämisen Rahti-projektistasi:
oc policy add-role-to-group "system:image-puller" "system:authenticated" -n <project>
  • Kuinka poistetaan käytöstä: Käytä seuraavaa komentoa peruuttaaksesi yllä olevat muutokset:
oc policy remove-role-from-group "system:image-puller" "system:authenticated" -n <project>

Tämä menetelmä tarjoaa hienojakoisen hallinnan, jonka avulla voit julkaista vain valitut imagestreamit tunnistautumattomille käyttäjille internetissä. Se on turvallisempi vaihtoehto kuin käyttötapaus 1, koska se julkaisee vain sen, minkä nimenomaisesti valitset.

  • Kuinka otetaan käyttöön: Tätä varten sinun täytyy luoda mukautettu rooli ja rolebinding Rahti-projektiisi.
# Select your project
oc project my-project

# Creating custom role
# oc create role <ROLE_NAME> --verb=get --resource=imagestreams.image.openshift.io/layers --resource-name=<IMAGE_NAME>
oc create role my-image-puller --verb=get --resource=imagestreams.image.openshift.io/layers --resource-name=MY_IMAGE_NAME # Repeat the option --resource-name to select more Imagestreams

# Create custom rolebinding
# oc create rolebinding <RB_NAME> --role=<ROLE_NAME> --user="system:anonymous"
oc create rolebinding my-image-puller --role=my-image-puller --user="system:anonymous" # Alternative to --user, you can use --group="system:unauthenticated"
  • Kuinka poistetaan käytöstä: Käytä seuraavia komentoja peruuttaaksesi yllä olevat muutokset:
# Delete the role and rolebinding

oc delete rolebinding my-image-puller
oc delete role my-image-puller

Käyttötapaus 4: Imagejen julkaiseminen yhdestä Rahti-projektista toiseen Rahti-projektiin (ristiin nimiavaruuksien välillä tapahtuva vetäminen)

Tämä menetelmä mahdollistaa sen, että yksi Rahti-projekti voi vetää imageja toisesta projektista. Tästä on hyötyä, kun eri nimiavaruuksien täytyy jakaa perusimageja.

  • Kuinka otetaan käyttöön: Tätä varten sinun täytyy sallia, että tietty serviceaccount toisesta nimiavaruudesta voi vetää imagen.
oc policy add-role-to-group -n <project-that-has-the-image> "system:image-puller" "system:serviceaccounts:<project-that-pulls-the-image>"
  • Kuinka poistetaan käytöstä: Käytä seuraavaa komentoa peruuttaaksesi yllä olevat muutokset:
oc policy remove-role-from-group -n <project-that-has-the-image> "system:image-puller" "system:serviceaccounts:<project-that-pulls-the-image>"

Suomenkielinen tekoälykäännös

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

Klikkaa tästä antaaksesi palautetta