Pripojíte VPN, otvoríte notebook a očakávate, že ťažká bunka sa spustí na serveri. V praxi tunel prenáša len pakety. Neinštaluje vyhodnocovač, neudeľuje licenciu a nevyberá, ktorý stroj vykonáva kód. Sú to tri oddelené veci a pracovný postup so vzdialeným jadrom potrebuje všetky tri, aby bol prvý výpočet dôveryhodný.

Mýtus: pripojenie VPN je nastavenie

VPN poskytuje sieťovú cestu medzi notebookom a serverom. To je užitočné a často nevyhnutné, pretože spúšťací kanál a pripojenie jadra musia dosiahnuť vzdialeného hostiteľa. Nehovorí nič o tom, či na tomto hostiteľovi existuje jadro Wolfram, či licencia povoľuje druhý súbežný proces alebo či je čelné rozhranie nakonfigurované na jeho používanie.

Spravovaný notebook môže obsahovať len čelné rozhranie a nárok môže byť viazaný na server. Stáva sa aj opak: licencia pre stolný počítač na notebooku neoprávňuje jadro na zdieľanej infraštruktúre. Ani jeden prípad sa nevyrieši opätovným pripojením tunela.

Tento predpoklad otestujte skoro. Vyhodnoťte $MachineName v novom notebooku a porovnajte odpoveď s hostiteľom, ktorého očakávate. Ak vráti názov notebooku, bunka sa spustila lokálne, bez ohľadu na to, ako zdravo VPN vyzerá.

Oddeľte čelné rozhranie od vyhodnocovača

Čelné rozhranie je okno: upravuje bunky, zobrazuje výstup a ukladá súbor notebooku. Jadro je proces, ktorý vyhodnocuje výrazy a drží definície v pamäti. Zatvorenie čelného rozhrania jadro nepresunie a uloženie notebooku neuloží stav jadra.

Po pripojení vzdialeného jadra sú umiestnenie súboru notebooku a pracovný adresár jadra dve rôzne veci. Directory[] hlási adresár vyhodnocovača a to je cesta, ktorá je dôležitá pre Import, Export a relatívne názvy súborov. Dátová sada vedľa notebooku na notebooku nie je viditeľná pre jadro bežiace na inom stroji.

Rozhodnite, ako sa dáta dostanú na server, skôr než začnete písať analýzu: zdieľané pripojené umiestnenie, schválený krok prenosu alebo databáza, ku ktorej má server priamy prístup. Táto voľba ovplyvňuje reprodukovateľnosť, pretože notebook závislý od cesty na notebooku zlyhá, keď ho nabudúce spustí niekto iný.

Spustite jadro schváleným kanálom

Wolframov sprievodca vzdialenými jadrami opisuje pridanie položky jadra, výber vzdialeného stroja a spustenie cez SSH. Cesta k spustiteľnému súboru a argumenty v príklade patria pracovnému postupu tohto produktu; prispôsobte ich hostiteľovi a verzii, ktoré určí správca, namiesto toho, aby ste ich vkladali nezmenené.

Identita hostiteľa je súčasťou nastavenia. Overte kľúč hostiteľa SSH prostredníctvom procesu organizácie, použite vydanú metódu autentifikácie a držte súkromné kľúče a heslá mimo súborov notebooku, ktoré sa zdieľajú alebo ukladajú do repozitára. Notebook so spúšťacím príkazom a heslom je únik prihlasovacích údajov, nie pohodlie.

Neotvárajte počúvajúcu službu WSTP do internetu ako skratku. Podporovaným vzorom je spustenie cez SSH, ktoré drží kanál jadra v rámci autentifikovaného pripojenia. Ak sieťový tím schválil iný transport, použite ho, ale odhalený port vyhodnocovača berte ako zmenu návrhu, nie ako krok pri riešení problémov.

Najprv skontrolujte nárok, dáta a veľkosť výstupu

Potvrďte s vlastníkom licencie, že server smie spustiť jadro pre tohto používateľa a že súbežné relácie sú povolené. Vzdialené výpočty sa často licencujú oddelene od stolného čelného rozhrania a neúspešné spustenie pre nárok vyzerá podobne ako neúspešný príkaz SSH, kým niekto neprečíta správu servera.

Potom odhadnite veľkosť výsledku. Jadro, ktoré vráti výraz s veľkosťou niekoľkých gigabajtov, ho pošle cez spúšťací a jadrový kanál do čelného rozhrania, čo môže zablokovať alebo vyčerpať pamäť notebooku. Držte ťažkú agregáciu na serveri a vracajte zhrnutia, alebo zapisujte veľké výsledky do cesty na serveri a prenášajte ich zámerne.

Zapíšte cestu k spustiteľnému súboru, argumenty spustenia a pracovný adresár do poznámok k nastaveniu notebooku. Ďalší používateľ tak usporiadanie zopakuje, namiesto toho, aby znova zisťoval, ktorú z piatich možných ciest server používa.

Diagnostikujte fázy v poradí

Päť fáz musí uspieť a každá má vlastný test. Začnite pri notebooku a zastavte sa pri prvom zlyhaní, namiesto toho, aby ste menili niekoľko nastavení naraz:

nc -vz research.example.edu 22
ssh -v [email protected] 'hostname; command -v wolframscript'
ssh [email protected] 'wolframscript -code "$MachineName"'

Neúspešná kontrola TCP ukazuje na smerovanie, DNS alebo povolené ciele VPN. Úspešná kontrola TCP s neúspešným prihlásením SSH ukazuje na autentifikáciu alebo politiku kľúča hostiteľa. Prihlásenie, ktoré funguje, ale nenájde spustiteľný súbor, ukazuje na inštaláciu jadra alebo cestu, ktorú dostalo čelné rozhranie. Jadro, ktoré sa spustí, ale nikdy sa nepripojí, ukazuje na argumenty spustenia alebo miestny firewall.

Zachovajte prvú zmysluplnú chybu a pošlite fázy na strane servera správcovi, ktorý ten stroj vlastní. Opakované vytváranie položky jadra skrýva, ktorá fáza skutočne zlyhala, a zahadzuje dôkazy, ktoré správca potrebuje.

Na konci chcete okno, ktoré spoznáte, vyhodnocovač, ktorý dokážete pomenovať, a dohodnutú cestu pre kód a súbory. VPN je jednou súčasťou tejto cesty a čím skôr to pracovný postup odzrkadlí, tým menej času padne na opätovné pripájanie tunela, ktorý nikdy nebol problémom.

Súvisiace články