Kako pokrenuti udaljeno Wolfram jezgro s prijenosnog računala preko VPN-a
VPN prenosi samo vezu. Planirajte pravo na jezgro, pokretanje putem SSH-a, udaljenu izvršnu datoteku i putanje datoteka prije prve evaluacije.
Povežete VPN, otvorite bilježnicu i očekujete da se teška ćelija izvrši na poslužitelju. U praksi tunel prenosi samo pakete. On ne instalira evaluator, ne daje licencu i ne bira koja mašina izvršava kod. To su tri odvojene stvari, a radni tok s udaljenim jezgrom treba sve tri prije nego prvi izračun bude pouzdan.
Mit: VPN veza jest postavljanje
VPN osigurava mrežni put između prijenosnog računala i poslužitelja. To je korisno i često nužno jer kanal za pokretanje i veza s jezgrom moraju doći do udaljenog hosta. Ne govori ništa o tome postoji li Wolfram jezgro na tom hostu, dopušta li licenca drugi istovremeni proces ili je li prednji dio konfiguriran da ga koristi.
Upravljano prijenosno računalo može nositi samo prednji dio, a pravo je vezano uz poslužitelj. Događa se i obrnuto: licenca za stolno računalo na prijenosnom računalu ne ovlašćuje jezgro na dijeljenoj infrastrukturi. Nijedan od tih slučajeva ne rješava se ponovnim povezivanjem tunela.
Testirajte pretpostavku rano. Izračunajte $MachineName u novoj bilježnici i usporedite odgovor s hostom koji očekujete. Ako vrati ime prijenosnog računala, ćelija se izvršila lokalno, bez obzira na to kako VPN izgleda zdrav.
Odvojite prednji dio od evaluatora
Prednji dio je prozor: uređuje ćelije, prikazuje izlaz i sprema datoteku bilježnice. Jezgro je proces koji izračunava izraze i drži definicije u memoriji. Zatvaranje prednjeg dijela ne pomiče jezgro, a spremanje bilježnice ne sprema stanje jezgra.
Kad se udaljeno jezgro poveže, lokacija datoteke bilježnice i radni direktorij jezgra postaju različite stvari. Directory[] prikazuje direktorij evaluatora, a to je putanja koja je važna za Import, Export i relativna imena datoteka. Skup podataka pokraj bilježnice na prijenosnom računalu nije vidljiv jezgru koje radi na drugoj mašini.
Odlučite kako će podaci stići do poslužitelja prije nego napišete analizu: dijeljena montirana lokacija, odobren korak prijenosa ili baza podataka kojoj poslužitelj može pristupiti izravno. Taj izbor utječe na ponovljivost jer bilježnica koja ovisi o putanji na prijenosnom računalu neće uspjeti sljedeći put kad je pokrene netko drugi.
Pokrenite jezgro kroz odobreni kanal
Wolframov vodič za udaljena jezgra opisuje dodavanje unosa jezgra, odabir udaljene mašine i pokretanje putem SSH-a. Putanja izvršne datoteke i argumenti u primjeru pripadaju radnom toku tog proizvoda; prilagodite ih hostu i verziji koje administrator navede umjesto da ih zalijepite nepromijenjene.
Identitet hosta dio je postavljanja. Provjerite SSH ključ hosta kroz proces organizacije, koristite izdani način autentifikacije i držite privatne ključeve i lozinke izvan datoteka bilježnice koje se dijele ili predaju u repozitorij. Bilježnica s naredbom za pokretanje i lozinkom je curenje vjerodajnica, a ne pogodnost.
Ne otvarajte WSTP slušač prema internetu kao prečac. Podržani obrazac je pokretanje putem SSH-a, koje drži kanal jezgra unutar autentificirane veze. Ako je mrežni tim odobrio drugi transport, koristite taj, ali izloženi port evaluatora tretirajte kao promjenu dizajna, a ne korak za rješavanje problema.
Prvo provjerite pravo, podatke i veličinu izlaza
Potvrdite s vlasnikom licence da poslužitelj smije pokrenuti jezgro za ovog korisnika i da su istovremene sesije dopuštene. Udaljeno računanje često se licencira odvojeno od stolnog prednjeg dijela, a neuspjelo pokretanje zbog prava izgleda slično neuspjeloj SSH naredbi dok netko ne pročita poruku poslužitelja.
Zatim procijenite veličinu rezultata. Jezgro koje vraća izraz od nekoliko gigabajta šalje ga kroz kanal za pokretanje i kanal jezgra do prednjeg dijela, što može zakočiti ili iscrpiti memoriju na prijenosnom računalu. Držite teško agregiranje na poslužitelju i vraćajte sažetke, ili pišite velike rezultate na putanju na poslužitelju i prenosite ih namjerno.
Zapišite putanju izvršne datoteke, argumente pokretanja i radni direktorij u napomene o postavljanju bilježnice. Sljedeći korisnik tada reproducira taj raspored umjesto da ponovno otkriva koju od pet mogućih putanja poslužitelj koristi.
Dijagnosticirajte faze po redu
Pet faza mora uspjeti i svaka ima poseban test. Pođite od prijenosnog računala i zaustavite se na prvom neuspjehu umjesto da mijenjate nekoliko postavki odjednom:
nc -vz research.example.edu 22
ssh -v [email protected] 'hostname; command -v wolframscript'
ssh [email protected] 'wolframscript -code "$MachineName"'Neuspjela TCP provjera upućuje na usmjeravanje, DNS ili dopuštena odredišta VPN-a. Uspješna TCP provjera s neuspjelom SSH prijavom upućuje na autentifikaciju ili politiku ključa hosta. Prijava koja radi ali ne pronalazi izvršnu datoteku upućuje na instalaciju jezgra ili putanju koja je dana prednjem dijelu. Jezgro koje se pokrene ali se nikada ne poveže upućuje na argumente pokretanja ili lokalni firewall.
Sačuvajte prvu smislenu pogrešku i pošaljite faze na strani poslužitelja administratoru koji posjeduje tu mašinu. Ponovno stvaranje unosa jezgra iznova skriva koja je faza zaista neuspjela i odbacuje dokaze koji su administratoru potrebni.
Na kraju želite prozor koji prepoznajete, evaluator koji možete imenovati i dogovorenu rutu za kod i datoteke. VPN je jedna komponenta tog puta, i što prije radni tok to odrazi, manje vremena odlazi na ponovno povezivanje tunela koji nikada nije bio problem.