Differences

This shows you the differences between two versions of the page.

Link to this comparison view

rl:info:resurse:vm-laborator [2018/12/03 18:53]
florin.stancu add openstack back
rl:info:resurse:vm-laborator [2023/11/14 14:49] (current)
florin.stancu
Line 1: Line 1:
-===== Mașina virtuală ===== +====== Mașină Virtuală ======
-===== Download ​=====+
  
 +===== OpenStack =====
  
-Este recomandat să folosiți [[http://​cloud.curs.pub.ro | cloud-ul facultății]] (infrastructură de tip OpenStack)+Aveți opțiunea de a folosi ​[[http://​cloud.grid.pub.ro | cloud-ul facultății (OpenStack)]] pentru ​rezolva temele / laboratoarele ​la RL.
-Pentru ​porni o astfel de masină urmăriți tutorialul de la [[https://​cloud.curs.pub.ro/​about/​tutorial-for-students/​ | această adresă]].+
  
-Ca alternativă,​ puteți folosi ​mașină virtuală rulată pe propriul PC. Pentru aceastatrebuie să aveți VMware Player instalat ​(sau orice alt hipervizorpentru utilizatori avansați).+Pentru a porni astfel de masină pentru prima dată, urmăriți tutorialul oficial de la [[https://​cloud.curs.pub.ro/​about/​tutorial-for-students/​ | această adresă]] **ignorând punctul 1** (nu mai este necesarconturile au fost deja create automat), cu următoarele puncte cheie / precizări:
  
-Imaginea mașinii virtuale ​VMware folosită în laboratorul de RL și **Tema2 (2018)** o puteți descărca [[http://elf.cs.pub.ro/rl/vm/Tema2_2018.zip|de la această adresă]].+    * Adăugați o pereche de chei privată-publică pe ''​fep.grid.pub.ro''​ (prin ssh) si copiați cheia publică pe OpenStack (folosind interfața web). 
 +      * **Notabil:​** Acest pas trebuie să-l faceți o singură dată, cheia rămânând activă tot anul școlar (sau până la prima greșeală de ștergere accidentală a acesteia pe fep :D). 
 + 
 +    * Când creați instanța de mașină virtuală (în fereastra "​Launch instance"​),​ folosiți setările:​ 
 +      * Dați un nume  specific instantei, folositi numele vostru si numarul laboratorului (e.g., "Iulia Florea Lab 8"); 
 +      * În meniul din stânga, la **Sources**,​ căutați ''​RL 2023 rev 1''​ și apăsați pe săgeată sus pentru a o selecta; 
 +      * La **Flavor**, este suficient ''​m1.small'',​ nu aveți nevoie de mai multe procesoare sau memorie mare; 
 +      * La **Networks**,​ selectați ''​vlan9''​ și apăsați pe săgeata sus pentru a o seta; 
 +      * Acum puteti porni masina prin butonul **Launch Instance**! 
 + 
 +    * Odată pornit VM-ul, vă puteți conecta la el folosind pașii următori:​ 
 +      - Conectați-vă prin ssh la ''​fep.grid.pub.ro'',​ apoi pe mașina virtuală proaspăt pornită prin IP-ul privat (''​10.9.x.x''​). Urmati pasii de mai jos: 
 +      - De pe sistemul fizic, deschideti un terminal si realizati o sesiune SSH catre ''​fep.grid.pub.ro'':<​code bash> 
 +student@mjolnir:​~$ ssh <user moodle>​@fep.grid.pub.ro 
 +</​code>​ 
 +         * **Atentie!!** ''<​user moodle>''​ va fi înlocuit cu utilizatorul vostru! 
 +      - Din terminalul ''​fep'',​ vă conectați mai departe la mașina voastră virtuală pe OpenStack:<​code bash> 
 +[iulia.florea@fep7-1 ~]$ ssh -i ~/​.ssh/​openstack.key student@10.9.x.y 
 +</​code>​ 
 +         * **Atentie!!** IP-ul masinii virtuale se obtine din interfata grafică a [[https://​cloud.grid.pub.ro|OpenStack]]. 
 + 
 +===== Local VM ===== 
 + 
 +Ca alternativă la OpenStack, puteți descărca o mașină virtuală locală pe care s-o rulați pe propriul PC. Pentru aceasta, trebuie să aveți un program hypervizor instalat (e.g., [[https://​www.vmware.com/​products/​workstation-player.html|VMware]],​ [[https://​www.virtualbox.org/​|VirtualBox]],​ [[https://​documentation.suse.com/​sles/​11-SP4/​html/​SLES-all/​cha-qemu-running.html|qemu+kvm]]. 
 + 
 +Imaginea mașinii virtuale ​pentru ​laboratorul de RL **(2023)** o puteți descărca [[https://github.com/cs-pub-ro/RL-lab-vm/releases|de la această adresă ​(GitHub Releases)]]. Vedeți mai jos considerente de rulare în funcție de hypervizorul ales. 
 + 
 +  * Va trebui să vă creați mașină virtuală nouă în programul dorit, apoi să adăugați un disk nou existent unde alegeți fișierul descărcat ''​RL_2023*.vmdk''​. 
 +  * Se recomandă utilizarea VMWare pentru o pregătire de cât mai ușoară a infrastructurii (VirtualBox are o ciudățenie la rețeaua NAT și nu e ușor să vă conectați prin SSH); 
 +  * Dacă, totuși, optați pentru VirtualBox, trebuie să aveți în vedere pașii suplimentari de mai jos pentru a o putea accesa prin ssh. 
 +<spoiler Detalii rulare masină virtuală prin VMware>​ 
 +  * [[https://​kb.vmware.com/​s/​article/​2010196|Urmați pașii de aici]]. 
 +  * După instalare: se recomandă folosirea unui terminal pe sistemul fizic și lucrul peste SSH în mașina virtuală (denumită și ''​host''​). În acest fel vom putea folosi copy-paste în terminal sau alte facilități. Pentru aceasta urmați pașii de mai jos: 
 +    * Autentificați-vă în consola mașinii virtuale (ecranul negru) folosind contul ''​root''​ cu parola ''​student''​. 
 +    * Aflați adresa IP a mașinii virtuale de pe interfața ''​eth0'':<​code bash> 
 +root@host:​~#​ ip a sh eth0 
 +</​code>​ 
 +    * De pe sistemul fizic, deschideți un terminal și realizați o sesiune SSH folosind:<​code bash> 
 +student@PC:​~$ ssh student@<​ADRESA_IP_MASINA>​ 
 +</​code>​unde ''<​ADRESA_IP_MASINA>''​ este adresa IP a mașinii virtuale așa cum ați obținut-o mai sus. 
 +    * Aaand that's it! 
 +</​spoiler>​ 
 + 
 +<spoiler Detalii rulare masină virtuală prin VirtualBox>​ 
 +  * [[https://​osxdaily.com/​2019/​08/​12/​open-vmdk-virtualbox/​|Importați fișierul vmdk într-un VM proaspăt creat]]. 
 +  * //Încă nu o porniți, mai avem de făcut niște setări!//​ 
 +  * Dorim să folosim terminalul sistemului fizic și să lucrăm peste SSH cu mașina virtuală (denumită și ''​host''​). În acest fel vom putea folosi copy-paste în terminal sau alte facilități. Pentru aceasta urmați pașii: 
 +    * Vom adauga o regula de port forwarding pentru a putea accesa masina prin SSH de pe statia Host (daca nu intelegeti ce reprezinta port forwarding, va fi explicat mai jos :-D) 
 +    * Cu masina virtuala oprita deschidem **Settings -> Network -> Advanced -> Port Forwarding** si adaugam urmatoarea regula: 
 +    {{ :​rl:​labs:​port_forward_virtual_box.png?​600 | Port forwarding pentru acces SSH de pe Host }} 
 + 
 +    * De pe sistemul fizic, deschideți un terminal și realizați o sesiune SSH folosind:<​code bash> 
 +student@PC:​~$ ssh -p 10022 student@localhost 
 +</​code>​ 
 +</​spoiler>​
  
 <​note>​ <​note>​
-Deși în format VMware, ​mașina virtuală ​ar trebui să fie compatibilă și cu alte hipervizoare ​(VirtualBox, KVM), însă va trebui ​să importați manual imaginea din fișierul ​''​.vmdk''​.+Conturile de acces la mașina virtuală ​locală (stația ''​host''​sunt (''​username:​parola''​):​ 
 +  * ''​student:​student''​ 
 +  * ''​root:​student''​ 
 +În mod implicit vă puteți conecta prin SSH doar folosind utilizatorul ''​student'',​ urmând ​să treceți la ''​root''​ folosind comanda ​''​sudo su''​.
 </​note>​ </​note>​
  
-<​hidden>​ 
-OLD: Puteți găsi mașina virtuală VMware folosită în laboratorul de RL la [[http://​repository.grid.pub.ro/​cs/​rl/​vm/​|această adresă]]. Pentru a accesa link-ul folosiți contul de pe cs.curs.pub.ro. 
-</​hidden>​ 
 ===== Topologie ===== ===== Topologie =====
  
Line 26: Line 79:
  
   * Există 3 containere cu numele: ''​red'',​ ''​green''​ și ''​blue''​.   * Există 3 containere cu numele: ''​red'',​ ''​green''​ și ''​blue''​.
-  * Puteți sa va logați folosind ​conturile (''​username:​parola''​) +  * Puteți sa va logați folosind ​utilizatorul ​''​student''​, parola ​''​student''​. 
-    * ''​root:​student''​ +  * Nu uitați să actualizați + rulați scriptul de pregătire a activității curente!
-    * ''​student:student''​ +
-  * Toate containerele LXC vor fi pornite automat. +
  
   * Pentru repornirea containerelor:<​code>​   * Pentru repornirea containerelor:<​code>​
-rr [red|green|blue|all]+docker restart ​[mn.red|mn.green|mn.blue]
 </​code>​ </​code>​
   * Pentru vizualizarea stării containerelor:<​code>​   * Pentru vizualizarea stării containerelor:<​code>​
-lxc-list+docker ps
 </​code>​ </​code>​
   * Din contul ''​root''​ de pe stația ''​host'',​ accesați containerele folosind comanda:<​code>​   * Din contul ''​root''​ de pe stația ''​host'',​ accesați containerele folosind comanda:<​code>​
 go [red|green|blue] go [red|green|blue]
 </​code>​ </​code>​
-  * Pentru a ieși din consola containerelor utilizați ​combinația de taste ''​Ctrl+a'',​ eliberați tastele și apoi apăsați ''​q''​.+  * Pentru a ieși din consola containerelor utilizați ​comanda "​exit"​. 
 + 
  
rl/info/resurse/vm-laborator.txt · Last modified: 2023/11/14 14:49 by florin.stancu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0