-
RStudion tai Jupyter Notebookin käyttö Puhdissa
RStudion tai Jupyter Notebookin käyttö Puhdissa
RStudio ja Jupyter notebookit ovat käteviä vaihtoehtoja R- tai Python-koodin kehittämiseen ja ajamiseen. R- tai Python-koodi ajetaan laskentasolmulla interaktiivisessa sessiossa, mutta itse työkaluja käytetään paikallisen verkkoselaimen kautta.
RStudio Serveriä tai Jupyter Notebookia voi käyttää Puhdissa kahdella tavalla.
-
Ensimmäinen (ja helpoin) vaihtoehto on käyttää Puhdin selainkäyttöliittymää.
-
Toinen vaihtoehto on luoda SSH-tunneli paikalliselta tietokoneelta laskentasolmulle. Koska laskentasolmuihin ei pääse Internetin kautta, tunnelin täytyy kulkea kirjautumissolmun kautta. Tämä ei ole mahdollista Windows PowerShellillä (se ei tue hyppypalvelimia), joten se ei sovellu RStudion tai Jupyter Notebookin käyttöön Puhdissa. SSH-tunnelointi edellyttää, että olet ottanut SSH-avaimet käyttöön.
Linuxilla, macOS:llä ja MobaXtermillä SSH-tunnelointi toimii oletuksena. PuTTyssä asetukset täytyy määrittää PuTTyn välilehdille, joten se on hitaampaa ja monimutkaisempaa, mutta mahdollista.
Työvuo RStudion tai Jupyter Notebookin käyttämiseen Puhdissa
Puhdin selainkäyttöliittymän käyttäminen
- Ohjeet löytyvät Puhdin selainkäyttöliittymän dokumentaatiosta.
SSH-tunneloinnin käyttäminen
- Käynnistä interaktiivinen sessio
- Lataa sopivat moduulit ja käynnistä RStudio- tai Jupyter Notebook -palvelin
- Luo SSH-tunneli tietokoneeltasi Puhdin laskentasolmulle
- Avaa RStudio tai Jupyter Notebook paikallisessa verkkoselaimessa
Tarkemmat tiedot eri vaiheista RStudion tai Jupyter Notebookin käynnistämiseksi SSH-tunneloinnin avulla on annettu seuraavassa.
Ohjeet SSH-tunnelointiin
1. Käynnistä interaktiivinen sessio
Käynnistä interaktiivinen sessio esimerkiksi komennolla sinteractive -i. Lisävaihtoehdot ja enimmäisrajat löytyvät interaktiivisen käytön sivulta.
2. Lataa moduuli ja käynnistä RStudio- tai Jupyter Notebook -palvelin
Aja interaktiivisessa sessiossa:
RStudio
Tämä asetus toimii minkä tahansa r-env-moduulin kanssa. On myös mahdollista käynnistää monisäikeinen RStudio-sessio komennollastart-rstudio-server-multithread, jos olet määrittänyt useita ytimiä interaktiivista sessiota käynnistäessäsi.
Lisätietoja säikeistyksen käytöstä R:n kanssa löytyy r-env-dokumentaatiosta.
Jupyter
Jupyter notebookeja voi käyttää joko perinteisellä Jupyter Notebookilla tai kehittyneemmällä JupyterLab-palvelimella.
Jupyter Notebook:
JupyterLab:
On myös mahdollista käyttää jotakin muuta esiasennettua Python-moduulia kuin python-data, jos se sisältää Jupyterin.
Tämä käynnistää RStudio-, Jupyter Notebook- tai JupyterLab-palvelimen laskentasolmulla ja tulostaa ohjeet seuraavia vaiheita varten.
Pidä tämä pääte auki niin kauan kuin työskentelet, jotta RStudio- tai Jupyter Notebook -palvelin pysyy käynnissä.
3. Luo SSH-tunneli tietokoneeltasi Puhdin laskentasolmulle
- Linuxilla, macOS:llä ja MobaXtermillä avaa toinen SSH-pääte paikallisella koneellasi (älä vielä yhdistä Puhtiin) ja
aja SSH-tunnelointikomento, jonka RStudion tai Jupyter Notebookin käynnistysskripti tulostaa.
Esimerkiksi
ssh -N -L 8787:localhost:42896 -J john@puhti.csc.fi john@r07c49.bullx - PuTTyn osalta katso ohjeet kohdasta SSH-tunnelointi PuTTyllä.
- Komento ei tulosta mitään erityistä; jos et saa virheilmoitusta, tunnelin luominen todennäköisesti onnistui.
Pidä myös tämä pääte auki niin kauan kuin työskentelet, jotta etäyhteys RStudioon säilyy.
4. Avaa RStudio tai Jupyter Notebook paikallisessa verkkoselaimessa
- Avaa verkkoselain paikallisella koneellasi ja kopioi käynnistysskriptin tulostama URL-osoite. Esimerkiksi:
http://localhost:8787/ - RStudiossa syötä käynnistysskriptin tulostamat tunnistetiedot.
5. Sulje sessio
Kun olet valmis:
- Sulje RStudio- tai Jupyter Notebook -palvelin painamalla
Ctrl + CPuhdin interaktiivisen session päätteessä. - Sulje myös interaktiivinen sessio komennolla (
exit). - Sulje SSH-tunneli painamalla
Ctrl + C.
SSH-tunnelointi PuTTyllä
Sekä RStudio että Jupyter Notebook tulostavat myös PuTTy-ohjeet, jotka täytyy kopioida PuTTyn asetuksiin. Porttinumerot ja laskentasolmun nimi voivat muuttua sessiosta toiseen.
PuTTy:
ssh -N -L 8889:localhost:8889 john@r07c49.bullx
Set Source (8889) and Destination (localhost:8889) in:
PuTTy -> Connection -> SSH -> Tunnels
- Määritä SSH-tunnelointi kirjautumissolmulle PuTTyllä. Lisää porttiohjaus kohdassa PuTTy -> Connection -> SSH -> Tunnels :
- Lähdeportti:
8889. - Kohde:
localhost:8889 - Pidä tyypiksi valittuna 'Local'.
- Napsauta 'Add'.
- Lähdeportti:
- Määritä SSH-tunnelointi kirjautumissolmulta laskentasolmulle kohdassa PuTTy -> Connection -> SSH:
- Etäkomento:
ssh -N -L 8889:localhost:8889 john@r07c49.bullx3: ValitseOpenyhteyden käynnistämiseksi.
- Etäkomento: