Com executar un nucli remot de Wolfram des d’un portàtil per VPN
Una VPN només transporta la connexió. Planifiqueu el dret del nucli, l’engegada per SSH, l’executable remot i els camins dels fitxers abans de la primera avaluació.
Connecteu la VPN, obriu el quadern i espereu que la cel·la pesada s’executi al servidor. A la pràctica, el túnel només transporta paquets. No instal·la cap avaluador, no concedeix cap llicència ni tria quina màquina executa el codi. Són tres coses separades, i un flux de treball amb nucli remot necessita les tres abans que el primer càlcul sigui fiable.
El mite: una connexió VPN és la configuració
La VPN proporciona un camí de xarxa entre el portàtil i el servidor. Això és útil i sovint necessari, perquè el canal d’engegada i la connexió del nucli han d’arribar a l’amfitrió remot. No diu res sobre si hi ha un nucli de Wolfram en aquest amfitrió, si la llicència permet un segon procés concurrent o si la interfície frontal està configurada per fer-lo servir.
Un portàtil gestionat pot portar només la interfície frontal, amb el dret lligat al servidor. També passa el contrari: una llicència d’escriptori al portàtil no autoritza un nucli en infraestructura compartida. Cap dels dos casos no es resol reconnectant el túnel.
Proveu aquesta suposició aviat. Avalueu $MachineName en un quadern nou i compareu la resposta amb l’amfitrió que espereu. Si retorna el nom del portàtil, la cel·la s’ha executat localment, per saludable que sembli la VPN.
Separeu la interfície frontal de l’avaluador
La interfície frontal és la finestra: edita cel·les, mostra la sortida i desa el fitxer del quadern. El nucli és el procés que avalua expressions i manté les definicions en memòria. Tancar la interfície frontal no mou el nucli, i desar el quadern no desa l’estat del nucli.
Quan s’adjunta un nucli remot, la ubicació del fitxer del quadern i el directori de treball del nucli són coses diferents. Directory[] informa del directori de l’avaluador, i aquest és el camí que importa per a Import, Export i els noms de fitxer relatius. Un conjunt de dades al costat del quadern al portàtil no és visible per a un nucli que s’executa en una altra màquina.
Decidiu com arribaran les dades al servidor abans d’escriure l’anàlisi: una ubicació muntada compartida, un pas de transferència aprovat o una base de dades a què el servidor pugui accedir directament. Aquesta elecció afecta la reproducibilitat, perquè un quadern que depèn d’un camí del portàtil fallarà la propera vegada que algú altre l’executi.
Engegueu el nucli per un canal aprovat
La guia de nuclis remots de Wolfram descriu com afegir una entrada de nucli, seleccionar la màquina remota i engegar per SSH. El camí de l’executable i els arguments de l’exemple pertanyen al flux de treball d’aquest producte; adapteu-los a l’amfitrió i la versió que indiqui l’administrador en lloc d’enganxar-los sense canvis.
La identitat de l’amfitrió forma part de la configuració. Verifiqueu la clau d’amfitrió SSH mitjançant el procés de l’organització, feu servir el mètode d’autenticació emès i manteniu les claus privades i les contrasenyes fora dels fitxers del quadern que es comparteixen o es confien al repositori. Un quadern amb una ordre d’engegada i una contrasenya és una fuita de credencials, no una comoditat.
No obriu un oient WSTP a internet com a drecera. El patró admès és l’engegada per SSH, que manté el canal del nucli dins d’una connexió autenticada. Si l’equip de xarxa ha aprovat un altre transport, feu-lo servir, però tracteu un port d’avaluador exposat com un canvi de disseny, no com un pas de resolució de problemes.
Comproveu primer el dret, les dades i la mida de la sortida
Confirmeu amb el propietari de la llicència que el servidor pot executar un nucli per a aquest usuari i que les sessions concurrents estan permeses. El càlcul remot sovint té llicència separada de la interfície frontal d’escriptori, i una engegada fallida per drets sembla una ordre SSH fallida fins que algú llegeix el missatge del servidor.
Després estimeu la mida del resultat. Un nucli que retorna una expressió de diversos gigabytes l’envia pel canal d’engegada i pel canal del nucli fins a la interfície frontal, cosa que pot bloquejar o esgotar la memòria del portàtil. Manteniu l’agregació pesada al servidor i retorneu resums, o escriviu els resultats grans en un camí del servidor i transferiu-los deliberadament.
Anoteu el camí de l’executable, els arguments d’engegada i el directori de treball a les notes de configuració del quadern. Així el següent usuari reprodueix la disposició en lloc de descobrir de nou quin dels cinc camins possibles fa servir el servidor.
Diagnostiqueu les etapes per ordre
Cinc etapes han de tenir èxit, i cadascuna té una prova distinta. Comenceu pel portàtil i atureu-vos al primer fracàs en lloc de canviar diverses opcions alhora:
nc -vz research.example.edu 22
ssh -v [email protected] 'hostname; command -v wolframscript'
ssh [email protected] 'wolframscript -code "$MachineName"'Una comprovació TCP fallida apunta a l’encaminament, al DNS o a les destinacions permeses de la VPN. Una comprovació TCP correcta amb un inici de sessió SSH fallit apunta a l’autenticació o a la política de claus de l’amfitrió. Un inici de sessió que funciona però no troba cap executable apunta a la instal·lació del nucli o al camí que ha rebut la interfície frontal. Un nucli que arrenca però no es connecta mai apunta als arguments d’engegada o al tallafoc local.
Preserveu el primer error significatiu i envieu les etapes del costat del servidor a l’administrador que posseeix aquella màquina. Recrear l’entrada del nucli una vegada i una altra amaga quina etapa ha fallat realment i descarta les proves que l’administrador necessita.
Al final voleu una finestra que reconogueu, un avaluador que pugueu nomenar i una ruta acordada per al codi i els fitxers. La VPN és un component d’aquest camí, i com més aviat el flux de treball ho reflecteixi, menys temps es perdrà reconnectant un túnel que mai no va ser el problema.