Differences

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

Link to this comparison view

saisp:labs:09:contents:06 [2014/04/28 15:58]
razvan.deaconescu [06. Lorem ipsum]
saisp:labs:09:contents:06 [2014/05/05 13:02] (current)
razvan.deaconescu
Line 1: Line 1:
-==== 06. Servire de mai multe servere ====+==== 06. [15p] Servire de mai multe servere ====
  
-Configurare ​Varnish să fie reverse proxy și pentru serverul ​web de pe mașina virtuală și pentru ''​ocw.cs.pub.ro''​.+Dorim ca serviciul ​Varnish ​să accelereze accesul web atât către serverul web din mașina virtuală ''​web''​ cât și către ''​ocw.cs.pub.ro''​. Pentru aceasta trebuie ​să fie configurate două back end-uri. 
 + 
 +Configurați cele două back end-uri astfel încât dacă URL-ul începe cu ''/​courses/''​ să fie servit de back end-ul de ''​ocw.cs.pub.ro'',​ altfel să fie servit de back end-ul mașinii virtuale ''​web''​. 
 + 
 +<note tip> 
 +Pornițde la [[https://​www.varnish-cache.org/​docs/​3.0/​tutorial/​advanced_backend_servers.html|documentația Varnish]]. 
 +</​note>​ 
 + 
 +<​solution -hidden>​ 
 +Configurăm serviciul Varnish ​pentru ​a folosi două back end-uri: back end-ul ''​default''​ servește conținut de pe serverul de pe mașina virtuală ​''​web'',​ iar back end-ul ''​ocw''​ servește conținut de pe sistemul ''​ocw.cs.pub.ro''​. Configurația o realizăm în fișierul ''/​etc/​varnish/​default.vcl'':<​code>​ 
 +root@varnish:​~#​ vi /​etc/​varnish/​default.vcl  
 +root@varnish:​~#​ cat /​etc/​varnish/​default.vcl  
 +[...] 
 +backend default { 
 +    .host = "​192.168.0.2";​ 
 +    .port = "​80";​ 
 +
 +backend ocw { 
 +    .host = "​ocw.cs.pub.ro";​ 
 +    .port = "​80";​ 
 +
 +[...] 
 +</​code>​ 
 +Apoi configurăm în același fișier ca cererile care încep cu ''/​courses/''​ să fie servite de back end-ul ''​ocw''​ iar celelalte de back end-ul ''​default'':<​code>​ 
 +root@varnish:​~#​ cat /​etc/​varnish/​default.vcl  
 +[...] 
 +sub vcl_recv { 
 +    if (req.url ~ "​^/​courses/"​) { 
 +        set req.backend = ocw; 
 +    } else { 
 +        set req.backend = default; 
 +    } 
 +
 +[...] 
 +</​code>​ 
 +Pe stația gazdă (''​mjolnir''​) configurăm,​ din nou, adresa IP a mașinii virtuale ''​varnish''​ ca adresă ​pentru ''​ocw.cs.pub.ro'':<​code bash> 
 +student@mjolnir:​~$ sudo vi /​etc/​hosts 
 +student@mjolnir:​~$ cat /​etc/​hosts 
 +[...] 
 +192.168.0.3 ocw.cs.pub.ro 
 +[...] 
 +</​code>​ 
 +Acum, din browserul de pe stația gazdă (''​mjolnir''​) putem să accesăm informații de pe ''​ocw.cs.pub.ro''​ (care conțin ''/​courses/''​) și de pe serverul web de pe mașina virtuală ''​web''​ folosind adresa ''​192.168.0.3''​. 
 +</​solution>​
saisp/labs/09/contents/06.1398689913.txt.gz · Last modified: 2014/04/28 15:58 by razvan.deaconescu
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