Skip to content

Commit

Permalink
Update nbgrader-new-interaction.md
Browse files Browse the repository at this point in the history
  • Loading branch information
viktoriaas authored Sep 17, 2024
1 parent 9bad9b6 commit 0e48e6f
Showing 1 changed file with 57 additions and 46 deletions.
103 changes: 57 additions & 46 deletions docs/nbgrader/nbgrader-new-interaction.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,49 +9,56 @@ sidebar:
nav: docs
---

# Prihlasovanie do hubu
# URL Adresy

Prihlasovanie je zabezpečené cez jednotné prihlásenie s extra kontrolou, či je človek z TULu. Keďže čistá kontrola iba TUL domény nezabezpečuje, že sa prihlasuje človek, ktorý je študentom/inštruktorom, vykonáva sa na pozadí kontrola emailu z vyššie spomínaných súborov a podľa (ne)existenciu mailu v niektorom z týchto súborov sa buď zobrazí prístup do kurzov pre inštruktora, spawn form pre študenta alebo nič.
Produkcia: jupytul.cloud.e-infra.cz

Zatiaľ nie je potrebná registrácia do Meta, toto sa vyrieši počas října. Pravdepodobne sa bude jednať o presun nejakých resourcov v Perune - nič, čo by ovplyvnilo chod hubu a spôsobilo zmenu pre študentov.
Váš pôvodný testovací: avi-sem.cloud.e=infra.cz

Testovací hub: https://avi-semt.dyn.cloud.e-infra.cz
> [!IMPORTANT]
> Pôvodný testovací sa BUDE RUŠIŤ 20.9.2024 !!!
Produkcia: https://jupytul.cloud.e-infra.cz

------
Nie je nutná iná registrácia okrem MetaCentra a eINFRA. Ak študent/inštruktor nie je členom meta, musí sa zaregistrovať tu: https://metavo.metacentrum.cz/en/application/index.html.
# Prihlasovanie

# Kurzy - pridávanie a správa
Prihlasovanie je zabezpečené cez jednotné prihlásenie. Inštruktori aj študenti musia patriť do správnych skupín.

Zatiaľ nie je potrebná registrácia do Meta, toto sa ale bude riešiť a bude potrebné. Pravdepodobne sa bude jednať o presun nejakých resourcov v Perune - neviem zatiaľ, ako veľmi vás to ovplyvní, ale budete to musieť mať všetci (inštruktori, študenti).

## Študent

Študent si po prihlásení vyberie kurz s ktorým chce pracovať, či chce premazať home a klikne na start. Po spustení notebooku uvidí túto stránku. Väčšinou neni vidieť kurzy hneď, treba kliknúť na refresh button a v zozname sa objavia.

![coursesrefresh](nbgrader/courses_refresh.png)

## Inštruktor

Inštruktor po prihlásení uvidí (jednoduchý) klikací list s kurzami, kde je inštruktor. Po kliknutí na meno kurzu bude presmerovaný do známeho prostredia nbgradru.

![instructorlist](nbgrader/instructor_list.png)

Prerobili sme systém pridávania kurzov, ich študentov a inštruktorov. Pôvodne bolo nutné nám poslať názov kurzu, my sme založili potrebné zložky a až potom ste si mohli (a museli) popridávať študentov ručne.
## Pridanie kurzu:
![formgradert](nbgrader/formgrader.png)

Do konkrétneho súboru, ktorý slúži ako konfigurák sa pridá pre každý kurz sekcia pod `courses`, ktorá obsahuje meno kurzu a cesty, kde sú mountnuté súbory so študentmi a inštruktormi. Zatiaľ je nutné pre pridanie/odobranie kurzu komunikovať s nami, ale mohle by ste si to ľahko robiť aj vy sami, ak by ste chceli nad tým správu.

```
courses:
- name: course1
studentFile: /mnt/course_users/course1_students.txt
instructorFile: /mnt/course_users/course1_instructors.txt
# Kurzy - pridávanie a správa

```
Nutné pre pridanie/odobranie kurzu komunikovať s nami.

## Pridanie študentov do kurzu

Vyrobí sa súbor s názvom `[meno_kurzu]_students.txt` v stanovenej lokácii. Súbor obsahuje *IBA* emaile študentov ktorí sú zapísaní do daného predmetu (oficiálne TUL emaile, ktoré sa dajú vytiahnuť z vášho ISu). V súbore je jeden mail na jednom riadku. Nič viac nie je potrebné, študent automaticky uvidí kurz, do ktorého má prístup.
Človek je študentom, ak je členom Perun subgroup `{kurz}-students` pod group `NBGrader Tulhub`. Na pridanie študenta do skupiny potrebujem jeho mail, ideálne vo formáte `mail, meno studenta`. Študentovi príde pozvánka, je na ňom aby to odklikol. Kým to neurobí, nevidí kurz.

> [!IMPORTANT]
> Ak študent nevidí kurz a jeho email je určite v súbore, je možné, že má v Perune nastavený iný preferred email - ak už používal metacentrum a nastavil si iný preferred email než je oficiálny TUL email. Obráťte sa na nás s menom študenta a vyriešime.
Zatiaľ vám Perun budem suportiť ja.


> [!IMPORTANT]
> K dnešnému dňu viem iba kedy rozposlať pozvánky študentom ZAP !!!!!!!
## Pridanie inštruktorov do kurzu

Vyrobí sa súbor s názvom `[meno_kurzu]_instructors.txt` v stanovenej lokácii. Súbor obsahuje *IBA* emaile inštruktorov ktorí sú vedení jak lektori daného predmetu (oficiálne TUL emaile, ktoré sa dajú vytiahnuť z vášho ISu). V súbore je jeden mail na jednom riadku. Nič viac nie je potrebné, inštruktor automaticky uvidí kurz, do ktorého má prístup.
Človek je študentom, ak je členom Perun subgroup `{kurz}-instructors` pod group `NBGrader Tulhub`. Na pridanie inštruktora do skupiny potrebujem jeho mail, ideálne vo formáte `mail, meno instruktora`. Inštruktorovi príde pozvánka, je na ňom aby to odklikol. Kým to neurobí, nevidí kurz.

> [!IMPORTANT]
> Ak inštruktor nevidí kurz a jeho email je určite v súbore, je možné, že má v Perune nastavený iný preferred email - ak už používal metacentrum a nastavil si iný preferred email než je oficiálny TUL email. Obráťte sa na nás s menom inštruktora a vyriešime.
Zatiaľ vám Perun budem suportiť ja.

> [!NOTE]
> Ak bol inštruktor pridaný ako inštruktor dodatočne (už sa niekedy prihlásil na avisem hub a ostal prihlásený) tak sa musí odhĺásiť a prihlásiť.
Expand All @@ -60,6 +67,26 @@ Vyrobí sa súbor s názvom `[meno_kurzu]_instructors.txt` v stanovenej lokácii
> Nemalo by sa stať, že inštruktor nejakého kurzu je zároveň aj študent iného. To zatiaľ vedie k mixu práv a nbgrader tak nefunguje dobre. Ak by to bolo v budúcnosti nutné, pozrieme sa na to no zatiaľ neodporúčame tento stav.

## Pridávanie assignments

ASSIGNMENTS NESMÚ BYŤ V HOME!!! Assigments patria JEDINE A IBA do `/mnt/exchange/{kurz}/source`. Ak sa vyrobí `gradebook.db` inde než v `/mnt/exchange/{kurz}/` tak je niečo zle.

ODPORÚČAME vytvárať assignemnts cez UI (pretože si ten nbgrader možno vytvára ešte nejaké iné relácie než len dir) a do vytvoreného diru potom nakopírovať to, čo už máte natvorené.

![image](nbgrader/image.png)

![image1](nbgrader/image1.png)

![image2](nbgrader/image2.png)

![image3](nbgrader/image3.png)


## Custom konfigurácia nbgrader_config.py

Ak sa releasne assignemnt s nejakým configom, výsledok už nejde zmeniť. Ak zmeníte config, ďalší release už sa udeje s tým zmeneným configom.


# Konfigurácia notebookového prostredia

Notebooky študentov sú spúšťatné ako samostatné kontajnere. Inštruktori pracujú rovno v hub pode (tak to má nbgrader, dá sa to preprogramovať ak by bolo nutné) no tieto rozdiely spôsobujú iné možnosti ďalšej konfigurácie prostredia.
Expand All @@ -74,23 +101,14 @@ Ak bol študent pridaný do kurzu dodatočne, stačí si spustiť nový notebook

## Prostredie inštruktora

Keďže inštuktori pracujú priamo v hub pode, nemajú možnosť si po prihlásení nakonfigurovať prostredie pretože hub už existuje a sú v ňom. Ak by bolo potrebné, dali by sa natvoriť samostatné perzistentné úložiská pre inštruktorov, ktoré by boli pripojené do hubu a tak by mal každý svoj priestor (na nejaké extra súbory ap.). Všetky zložky by ale boli mountnuté naraz čže každý inštruktor by si musel dať pozor, kde zapisuje pri práci.

# Po prihlásení

## Študent
Keďže inštuktori pracujú priamo v hub pode, nemajú možnosť si po prihlásení nakonfigurovať prostredie pretože hub už existuje a sú v ňom. Ak by bolo potrebné.

Študent si po prihlásení vyberie kurz s ktorým chce pracovať, či chce premazať home a klikne na start. Po spustení notebooku uvidí túto stránku. Väčšinou neni vidieť kurzy hneď, treba kliknúť na refresh button a v zozname sa objavia.
Na prianie som doinštalovala balíčky, nastavila `HOME=/mnt/exchange/{kurz}/home`. Home je perzistentný.

![coursesrefresh](nbgrader/courses_refresh.png)

## Inštruktor

Inštruktor po prihlásení uvidí (jednoduchý) klikací list s kurzami, kde je inštruktor. Po kliknutí na meno kurzu bude presmerovaný do známeho prostredia nbgradru.

![instructorlist](nbgrader/instructor_list.png)
> [!CAUTION]
> HOME NEPOUŽÍVAJTE NA NIČ INÉ NEŽ NA UKLADANIE NEJAKÝCH EXTRA SÚBOROV NESÚVSIACICH S ASSIGNMENTS A NBGRADROM. NEBUDE TO FUNGOVAŤ!!!!
>
![formgradert](nbgrader/formgrader.png)

# Vytvorenie named servers

Expand All @@ -102,7 +120,7 @@ V tejto časti sa dajú naklikať názvy notebookov a tak vytvoriť. Do panelu h

![add](nbgrader/add.png)

# Mazanie notebookv po skončení práce
# Mazanie notebookov po skončení práce

Ak prvý notebook nebol vyrobený cez zoznam ale rovno po prihlásení, nemá meno a maže sa veľkým červeným tlačítkom `Stop My Server` v Home časti (prípadne sa sem dá prejsť z `Hub Control Panel`).

Expand All @@ -122,11 +140,4 @@ To vedie k zmazaniu reálneho kontajnera v Kubernetoch. Nie je nutné kliknúť

# Výpočetné zdroje

Zdroje sú samostatná kategória pretože predstavujú najdôležitejšiu časť. Z viacerých rokov menežovania iných hubov pre výuku (a všeobecného hubu) vieme, že zdrojmi sa hrozne plytvá. Ľudia si vyrobia notebook s mnoho CPU, GPU a pamäťou a buď ho využívajú veľmi málo (overestimated resources) alebo ho absolútne nepoužívajú, iba blokujú zdroje tým, že si raz dačo skúsili. Najdrahší zdroj sú GPU a preto pre notebooky využívajúce GPU platí najtvrdšia politika.

Z tohto dôvodu máme pre každý takýto hub nejakú politiku "resource reclamation":
1. Pre všeobecný hub sledujeme metriky každého podu a ak využitie nepresiahne nami stanovenú priemernú hranicu za 2 alebo 3 dni existencie notebooku, zmažeme ho. Užívateľ je informovaný každý deň mailom, že mu bude notebook zmazaný ak nenavýši svoje spotrebu a teda má dosť času si zálohovať data.

2. Pre výukový hub na FI MUNI máme politiku, že každý notebook ktorý alokouje GPU je natvrdo po 48h zmazaný, či niečo robí alebo nie. CPU, pamäť a storage zatiaľ obmedzené nie sú.

Podobná politika bude musieť byť nastavená i vo vašom prípade, len bude potrebné si rozmyslieť aká.
Dohodnuté na vymazanie notebookov o polnoci.

0 comments on commit 0e48e6f

Please sign in to comment.