Differences

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

Link to this comparison view

scgc:laboratoare:06 [2020/03/31 17:28]
darius.mihai [9. [BONUS - 20p] Load balancing in Varnish]
scgc:laboratoare:06 [2021/10/27 14:08] (current)
maria.mihailescu
Line 1: Line 1:
-====== ​Laboratory 06. Load balancing and web acceleration ======+====== Load balancing and web acceleration ======
  
 ===== Lab Setup ===== ===== Lab Setup =====
  
-  * We will be using a virtual machine in the [[http://​cloud.curs.pub.ro/​|faculty'​s cloud]]. +  * We will be using a virtual machine in the [[http://​cloud.grid.pub.ro/​|faculty'​s cloud]].
-  * When creating a virtual machine follow the steps in this [[https://​cloud.curs.pub.ro/​about/​tutorial-for-students/​|tutorial]].+
   * When creating a virtual machine in the Launch Instance window:   * When creating a virtual machine in the Launch Instance window:
-    * For **Availability zone**, choose **CAMPUS**, **CI** or **hp** 
     * Select **Boot from image** in **Instance Boot Source** section     * Select **Boot from image** in **Instance Boot Source** section
     * Select **SCGC Template** in **Image Name** section     * Select **SCGC Template** in **Image Name** section
Line 98: Line 96:
 Using Wireshark (or tcpdump), start a capture on the br0 interface on the client machine. ​ Using Wireshark (or tcpdump), start a capture on the br0 interface on the client machine. ​
 <​code>​ <​code>​
-student@scgc:​~$ sudo tcpdump -i br0+student@scgc:​~$ sudo tcpdump -i br0 -e
 </​code>​ </​code>​
 Notice the IP and MAC addresses from: Notice the IP and MAC addresses from:
Line 243: Line 241:
 Do not forget to restart the Varnish service every time its configuration is changed: Do not forget to restart the Varnish service every time its configuration is changed:
 <​code>​ <​code>​
-student@scgc-vm-1:​~$ service varnish restart+student@scgc-vm-1:​~$ ​sudo systemctl daemon-reload 
 +student@scgc-vm-1:​~$ sudo service varnish restart
 </​code>​ </​code>​
  
Line 299: Line 298:
 </​code>​ </​code>​
  
-We will also need to change the DocumentRoot of the Apache server on ''​scgc-vm-2''​. For this, edit''/​etc/​apache2/​sites-available/​000-default.conf''​ and change the DocumentRoot from ''/​var/​www/​html''​ to ''/​var/​www''​.+We will also need to change the DocumentRoot of the Apache server on ''​scgc-vm-2''​. For this, edit''/​etc/​apache2/​sites-available/​000-default.conf''​ and change the DocumentRoot from ''/​var/​www/​html''​ to ''/​var/​www''​. Restart the ''​apache2''​ service.
  
 In order to measure the duration of the data transfer with and without Varnish, use ''​httperf''​ on the host machine in order to download the following file: http://​10.0.0.20/​data/​10M.dat for direct access or http://​10.0.0.10/​data/​10M.dat for Varnish access. In order to measure the duration of the data transfer with and without Varnish, use ''​httperf''​ on the host machine in order to download the following file: http://​10.0.0.20/​data/​10M.dat for direct access or http://​10.0.0.10/​data/​10M.dat for Varnish access.
Line 305: Line 304:
 While ''​httperf''​ is running, check with ''​htop''​ the load on both virtual machines. ​ While ''​httperf''​ is running, check with ''​htop''​ the load on both virtual machines. ​
  
-Use the ''​--uri''​ option for ''​httperf''​ to specify what page is to be accessed (in our case http://​10.0.0.20/​data/​10M.dat). Notice the difference between the Request rate parameter for the direct access and the Varnish access.+Use the ''​%%--%%uri''​ option for ''​httperf''​ to specify what page is to be accessed (in our case http://​10.0.0.20/​data/​10M.dat). Notice the difference between the Request rate parameter for the direct access and the Varnish access.
  
 ==== 5. [10p] Varnish statistics ==== ==== 5. [10p] Varnish statistics ====
Line 391: Line 390:
  
 <​note>​ <​note>​
-Use these examples [[https://​stackoverflow.com/​questions/​31291374/​varnish-backend-vcc-compiler-failed/​45082602#​45082602|here]] and [[https://​varnish-cache.org/​trac/wiki/LoadBalancing|here]]. Take into account the fact that the VCL version may differ from the one used by the varnish on your system, and the syntax may be need to be changed.+Use the examples ​and information ​[[https://​stackoverflow.com/​questions/​31291374/​varnish-backend-vcc-compiler-failed/​45082602#​45082602|here]] and [[https://​varnish-cache.org/​docs/6.5/reference/​vmod_directors.html#​description|here]]. Take into account the fact that the VCL version may differ from the one used by the varnish on your system, and the syntax may be need to be changed.
 </​note>​ </​note>​
  
 In order to verify this task, access in a browser (or wget in the CLI) 10.0.0.10, wait 2 minutes (for the Varnish cache to expire) and access it again. In order to verify this task, access in a browser (or wget in the CLI) 10.0.0.10, wait 2 minutes (for the Varnish cache to expire) and access it again.
  
scgc/laboratoare/06.1585664929.txt.gz · Last modified: 2020/03/31 17:28 by darius.mihai
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