See kursus käsitleb kaugarenduskeskkondade (tuntud ka kui "kauginterpretaatorid") loomist, et saaksite koodida lokaalselt, kuid käivitada oma koodi kaugserveris.
Kaugtöökeskkondadel on mitu suurt eelist:
Selles videos näitame, kuidas luua AWS EC2-s serveriinstants ja seejärel luua VSCode'is kauge arenduskeskkond.
Kursuse ülesehitus on järgmine:
Tere, siin on Julien Salinas NLP Cloudist.
Täna näitan teile, kuidas luua kaugtöökeskkond, et saaksite oma kohalikus masinas koodi koostada, kuid täita oma koodi AWS-i kaugserveril.
Selle kursuse jaoks ei ole eeltingimusi, nii et siit läheb.
Mida me mõistame kaugarenduse keskkonna all? See tähendab tegelikult seda, et me hakkame koodima lokaalselt VS Code'is, nagu enamik meist tänapäeval.
Kui kasutate muud arenduskeskkonda, siis peaksite kontrollima, kas kaugtõlkijad või kaugarenduskeskkonnad on toetatud või mitte, ja me kavatseme koodi tegelikult AWS-i instantsil eemalt käivitada.
Me valime täna AWSi, sest ma tean, et enamik teist kasutab oma igapäevases tootmisprotsessis tegelikult AWSi, kuid kui te kasutate GCP-d või Azure'i või OVH-d või Scaleware'i või midagi muud, on protsess väga sarnane.
Nagu näete, on tegemist instantsi määramisega, IP-aadressi hankimisega ja selle kasutamisega lokaalselt VS Code'is, et luua SSH kaudu ühendus instantsiga.
Miks me tegelikult kasutame kaugarenduskeskkonda? Esimene põhjus on see, et me tahame vähendada oma kohaliku arenduskeskkonna kulusid.
Te ei pruugi soovida osta näiteks väga kallist MacBook Pro Ultra M2 tippklassi masinat ja sellisel juhul võib olla kuluefektiivsem osta madalama hinnaga kohalik masin, kuid täita oma koodi kaugjuhtimise teel, kui seda vajate.
Teine väga oluline põhjus, eriti masinõppe inseneride jaoks, on see, et mõnikord on teil vaja juurdepääsu tipptasemel riistvarale, näiteks GPUdele, ja see riistvara ei pruugi teie kohalikus masinas olemas olla.
Näiteks kui soovite juurdepääsu A100 NVIDIA GPU-le või H100-le, siis kindlasti ei ole teil võimalik sellistele GPU-dele kohapeal ligi pääseda.
Nagu me täna näitame, on selle tegemine väga kasulik, sest muidu ei ole teil lihtsalt võimalik saada juurdepääsu konkreetsetele masinatele GPU arendamiseks.
Viimaseks on see, et te kasutate kaugkeskkonda, suurepärane, sest see on tegelikult täiesti isoleeritud keskkond, mis tähendab, et kui soovite paigaldada konkreetseid raamatukogusid või raamistikke või draivereid, saate seda teha oma AWS-i kaugmasinasse.
Ja kui teil on homme vaja paigaldada, ütleme, teine versioon NVIDIA draiveritest ja CUDA tööriistakomplektist või Pythoni raamatukogudest, siis peate lihtsalt teise serveri kasutusele võtma ja te olete täiesti kindel, et mõlemad serverid ei sega teineteist.
Mõlemad konfiguratsioonid on täiesti isoleeritud.
Nii et sarnaseid asju saab muidugi saavutada ka näiteks Dockeri või isegi Pythoni virtuaalsete keskkondadega.
Kuid kujutage ette, et soovite paigaldada mitu versiooni oma NVIDIA draiveritest.
See saab olema palju keerulisem.
Sellisel juhul võib mitme kaugkeskkonna loomine olla teie jaoks ainus lahendus.
Nii et esimene asi, mida me nüüd teeme, on tegelikult ühenduda meie AWS-i konsooliga ja luua põhiline AWS-i instants, CPU-instants, ja siis kasutame seda lokaalselt VS Code'ist.
Siin me läheme.
Ma olen nüüd minu AWS konsooli.
Kui kasutate AWS-i esimest korda, peate lihtsalt looma konto ja e-posti parooli.
Ma ei usu, et nad küsivad liiga palju teavet.
Ja nüüd saate luua EC2-s instantsi.
Me vajutame käivitusinstantsi.
Me võime anda oma instantsile nime.
Nimetagem seda näiteks dev-keskkonnaks.
Hästi.
Nüüd oluline osa.
Me peame valima oma instantsi jaoks operatsioonisüsteemi.
Sa tahad tõesti valida Linuxi ja mis puutub minusse, siis mulle meeldib Ubuntu, sest see on standardne ja ma olen kindel, et Ubuntule paigaldatakse kõige uuemad draiverid, eriti NVIDIA draiverid, see võib tõesti aidata.
Nii et ma klõpsan siin Ubuntule.
Kui te kasutate Linuxi esimest korda, ei ole vaja muretseda.
Me ei vaja liiga palju Linuxi nippe või käske.
Me teeme põhimõtteliselt kõike VS-koodist, välja arvatud see, et kapoti taga on muidugi Linux, aga ma ei usu, et see on teie jaoks liiga suur probleem.
Võite jätta 2204 LTS versiooni nii, nagu see on.
Ja nüüd valime lihtsa protsessori instantsi.
Näiteks AWSis on teil M5 instants, M5 suur, kaks protsessorit, kaheksa gigat mälu.
Täiuslik meile.
Võib-olla isegi liiga palju tänaseks, kuid tulevikus peate valima oma vajadustele ideaalselt vastava instantsi.
Hästi.
Nüüd peame kasutama SSH võtmepaari.
Seega, kui kasutate siin esimest korda SSH-d, peate looma oma võtmepaari AWS-is, looge uus võtmepaar.
Nimetame seda testvõtmepaariks.
Saate valida PEM-vormingu, luua võtmepaari.
Ja nüüd ma laadin seda, vabandust, oma masinasse alla.
Hästi.
Siin ei ole vaja turvarühma muuta.
Vaikimisi on SSH-port avatud, mis on okei.
See on see, mida me vajame.
Kaheksa gigat SSD-d on tänapäeval ideaalne.
Ja me saame klõpsata käivitada instantsi.
Hästi.
Instants on nüüd valmis.
Kui see on teie esimene instantsi loomine AWSis, peate võib-olla paluma AWSi tuge oma kvooti ajakohastada.
Ma ei ole päris kindel.
Väga kallite instantside, näiteks GPU-instantside puhul peate küsima kvoodi uuendamist.
Lihtsa M5 puhul ei ole ma kindel.
Aga kui te saate siin vea, mis küsib kvoodi suurendamist, siis seda teete te.
Siin on meie näide.
Nagu näete, on see juba käivitatud.
See oli väga kiire.
M5 suur.
Ja siin paremal on IP-aadress, mida me kasutame.
Nüüd, kui meie instants on loodud ja meie SSH võtmepaar on meie masinasse alla laaditud, tuleb meil avada VS Code ja luua SSH-ühendus meie kaugserveriga.
Kui kasutate SSH-klienti Windowsis esimest korda, peate selle aktiveerima.
Siin on Windowsi meeskonna õpetus selle kohta, kuidas seda teha.
Google'ile võite lihtsalt kirjutada "Create SSH client on Windows" ja leiate palju õpetusi.
Siin on ametlik.
Kui sirvida veidi allapoole, on see väga lihtne.
Sa pead lihtsalt midagi Windowsi rakendustes aktiveerima.
Kui kasutate Linuxi, on see vaikimisi paigaldatud.
Nii et ma olen nüüd VS Code.
Vasakul allosas näete seda nuppu siin.
Ma klõpsan praeguse akna ühendamist vastuvõtjaga.
Kui te kasutate seda kaugühenduse moodulit esimest korda, siis võib-olla VS Code laadib pluginat alla.
Seega võib kuluda paar sekundit, enne kui saate funktsioonile ligi.
Ma konfigureerin hostid, klõpsates konfigureeri hostid.
Ma olen täna Windowsis, nii et siin on minu konfiguratsioon.
Ja siin on see konfiguratsioonifail, mille ma pean täitma.
Seega on kõige olulisem, et me peame välja otsima meie instantsi IP-aadressi ja kleepima selle siia.
Täiuslik.
Me võime anda oma ühendusele nime, kuid see on ainult meie jaoks.
Nimetagem seda DevHouse'iks.
Kasutajanimi on kasutajanimi, mida SSH-klient kasutab instantsiga ühenduse loomiseks.
Arvestades, et me sätestasime Ubuntu serveri, on kasutajanimi vaikimisi Ubuntu.
Ja kui ma laadisin alla võtmepaari, SSH võtmepaari, panin selle oma töölauale Windowsis.
Nii et see on koht, kus VS Code saab võtme kätte.
Saate faili salvestada ja nüüd klõpsake allosas, ühendage praegune aken uuesti vastuvõtjaga.
DevHouse on see, mida me just lõime.
Te peate siin ootama.
Väga hea.
Näete, et VS Code küsib minult võtmevahetust.
Nii et jah, see on esimene kord, kui me selle instantsiga ühendume.
Seega peame turvalisuse huvides aktsepteerima seda uut sõrmejälge.
Hea.
See ei tundu väga dramaatiline, kuid siin me oleme nüüd tegelikult meie kaugel asuvas AWS-i instantsis.
Ja te näete seda, sest vasakus allosas on näha SSH.
Selle kontrollimiseks saate avada terminali ülalpool, klõpsake nupule uus terminal.
Ja siin on näha, et see terminal ei ole absoluutselt minu kohaliku Windowsi masina terminal.
Ma olen Ubuntu masinaga.
Ja kui ma tahan, võin ma kasutada mõningaid Linuxi käske nagu tavaliselt Linuxis, näiteks kataloogide loetlemist.
Meil ei ole siin midagi, seega võime luua kataloogi.
Oletame, et tahame luua arenduskeskkonna, et teha paar testi.
Ja nüüd on meil siin loodud uus testkaust.
Kas sa tahad kõike teha käsurea abil või, mis veelgi parem, sa tahad kasutada VS Code'i graafilist kasutajaliidest, et sirvida oma faili nagu tavaliselt.
Nii et klõpsake üleval, avage kaust.
Ja siin näete just loodud testkataloogi.
Nüüd avaneb VS Code uuesti, kuid seekord konkreetses kaustas, mida ma mainisin.
Ja nüüdsest võite alustada arendamist nagu tavaliselt, nagu oleksite oma kohalikus masinas, ainult et teie koodi hakatakse täitma AWSis.
Nii et proovime.
Näiteks loome lihtsa Pythoni programmi, mis ütleb hello, uus fail, test.py, print, hello
Salvestage fail.
Ja siis oma konsoolis saame nüüd faili käivitada.
Tere.
Niisiis, te käivitasite just edukalt oma esimese kaugkoodi AWSis.
See on kõik tänaseks.
Nüüd saate oma kaugarenduskeskkonda kasutada nii palju kui soovite.
Ärge unustage oma AWS-i instantsi välja lülitada, kui te seda enam ei vaja.
Ja varsti kohtume.