Cách cài đặt Varnish Cache trên Ubuntu 20.04

Tác giả NetworkEngineer, T.Mười 25, 2021, 12:59:24 SÁNG

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách cài đặt Varnish Cache trên Ubuntu 20.04


Hơn bao giờ hết, tốc độ tải trang rất quan trọng đối với bất kỳ chủ sở hữu trang web nào. Một vài giây chậm trễ trong quá trình tải trang web của bạn sẽ nhanh chóng đưa người dùng internet đến trang web tiếp theo dẫn đến tỷ lệ thoát cao và giảm doanh thu. Trên thực tế, tốc độ tải trang là một khía cạnh xếp hạng quan trọng mà Google sử dụng để xếp hạng các trang web. Trang web của bạn càng chậm, thứ hạng càng thấp.

Bộ nhớ Cache Varnish, còn được gọi là proxy HTTP ngược trong bộ nhớ Cache, là một ứng dụng web hiệu suất cao và nhanh chóng giúp tăng tốc trang web của bạn bằng cách chuyển tiếp các yêu cầu HTTP đến máy chủ web của bạn. Nó nằm phía trước một máy chủ web và lưu trữ tất cả lưu lượng truy cập web thường xuyên được người dùng truy cập và lưu trữ trong bộ nhớ.

Bằng cách đó, nó sẽ tăng tốc thời gian truy xuất các trang web. Bộ nhớ Cache cũng phục vụ hàng nghìn yêu cầu HTTP đồng thời mà không làm hỏng hoặc quá tải máy chủ web. Nó có thể tăng tốc độ trang web của bạn lên đến 300 - 100 lần.
Bây giờ chúng ta hãy cài đặt bộ Cache Varnish trên Ubuntu 20.04

1. Cập nhật chỉ mục gói và gói Ubuntu.

Chúng ta sẽ bắt đầu bằng cách cập nhật danh sách gói và nâng cấp các gói lên phiên bản mới nhất của chúng.

Mã nguồn [Chọn]
$ sudo apt update && sudo apt upgrade

Hệ thống của chúng ta hiện đã được cập nhật đầy đủ và các gói được cập nhật phiên bản mới nhất.

2. Cài đặt máy chủ web Apache.

Với danh sách gói và các gói cập nhật và gói hiện tại được nâng cấp lên phiên bản mới nhất của chúng, chúng ta sẽ cài đặt máy chủ web Apache.

Mã nguồn [Chọn]
$ sudo apt install apache2
Điều này cài đặt Apache và tất cả các phụ thuộc mà Apache phụ thuộc vào để hoạt động như mong đợi.


Khi quá trình cài đặt hoàn tất, hãy xác nhận trạng thái đang chạy của Apache.

Mã nguồn [Chọn]
$ sudo systemctl status apache2

Là một máy chủ web, Apache lắng nghe trên cổng 80 theo mặc định. Sử dụng lệnh netstat như được hiển thị dưới đây để xác minh điều này.

Mã nguồn [Chọn]
$ sudo netstat -pnltu

3. Cài đặt bộ Cache Varnish.

Tiếp tục, chúng ta sẽ cài đặt bộ Cache Varnish sẽ chuyển tiếp các yêu cầu đến Apache. Để làm như vậy, chúng ta sẽ chạy lệnh.

Mã nguồn [Chọn]
$ sudo apt install varnish
Điều này cài đặt các gói bổ sung như make và gcc, các gói phụ thuộc và thư viện python.


Cũng giống như Apache, Varnish khởi động tự động và bạn có thể xác nhận điều này như hình minh họa.

Mã nguồn [Chọn]
$ sudo systemctl status varnish

4. Cấu hình bộ Cache Varnish và Apache.

Cho đến nay, chúng ta đã cài đặt bộ Cache Varnish và  Apache.

Như chúng ta đã biết, Apache lắng nghe trên cổng 80 theo mặc định như bất kỳ máy chủ web nào. Vì bộ Cache Varnish là trung gian sẽ chuyển tiếp các yêu cầu HTTP tới Apache, nên cần có một số thay đổi trong cả cấu hình Apache và Varnish.

Đầu tiên, chúng ta sẽ cấu hình Apache để lắng nghe các yêu cầu từ Varnish trên cổng 8080. Sau đó, chúng ta cần cấu hình bộ tăng tốc Varnish để lắng nghe trên cổng 80 để hoạt động như một trung gian giữa người dùng gửi yêu cầu HTTP và máy chủ web Apache.

Chúng ta sẽ bắt đầu bằng cách cấu hình Apache bằng cách chỉnh sửa tập tin port.conf.

Mã nguồn [Chọn]
$ sudo vim /etc/apache2/ports.conf
Tìm thẻ Listen và chỉnh sửa nó thành cổng 8080. Lưu các thay đổi và thoát.


Tiếp theo, sửa đổi tập tin virtual host của Apache mặc định để lắng nghe các yêu cầu HTTP được chuyển tiếp đến nó bằng bộ nhớ cache Varnish trên cổng 8080 như được hiển thị dưới đây.

Mã nguồn [Chọn]
$ sudo vim /etc/apache2/sites-enabled/000-default.conf

Lưu các thay đổi và thoát. Để các thay đổi được áp dụng, hãy khởi động lại Apache.

Mã nguồn [Chọn]
$ sudo systemctl restart apache2

Xác minh rằng Apache đang lắng nghe trên cổng 8080 bằng lệnh netstat.

Mã nguồn [Chọn]
$ sudo netstat -pnltu

Bây giờ, nếu bạn cố gắng truy cập trang chào mừng của Apache trên trình duyệt. Bạn sẽ gặp lỗi. Điều này là do chúng ta đã đặt nó để lắng nghe trên cổng 8080 và vì vậy bạn sẽ phải chỉ định số cổng trên URL là 8080

Mã nguồn [Chọn]
http: //server-ip: 8080

Tiếp tục, chúng ta sẽ cấu hình Varnish để lắng nghe các yêu cầu HTTP đến trên cổng 80. Vì vậy, hãy chỉnh sửa tập tin sau.

Mã nguồn [Chọn]
$ sudo vim /etc/default/varnish
Tìm đến thẻ DAEMON_OPTS và thay đổi nó thành cổng 80.


Một lần nữa, hãy lưu các thay đổi và thoát.

Khi bạn nhìn vào tập tin varnish.vcl, đây là những gì bạn nhận được.

Mã nguồn [Chọn]
$ sudo vim /etc/default/varnish.vcl

Tiếp tục, chỉnh sửa tập tin Varnish systemd.

Mã nguồn [Chọn]
$ sudo vim /lib/systemd/system/varnish.service
Tìm đến thẻ ExecStart và thay đổi cổng từ cổng 6081 thành 80.


Lưu các thay đổi và khởi động lại cả 2 dịch vụ Apache và Varnish.

Mã nguồn [Chọn]
$ sudo systemctl restart apache2
$ sudo systemctl daemon-reload
$ sudo systemctl restart varnish


5. Kiểm tra cấu hình.

Để xác nhận rằng mọi thứ đã diễn ra theo đúng kế hoạch, hãy sử dụng lệnh curl để gửi một yêu cầu GET để xem các tiêu đề HTTP. Hãy đủ tinh ý để quan sát dòng sau đây.

Mã nguồn [Chọn]
Via: 1.1 varnish (varnish/6.2)
Điều này xác nhận rằng trình tăng tốc Varnish đang thực hiện công việc chuyển tiếp các yêu cầu tới Apache.


Giờ đây, bạn có thể duyệt máy chủ web của mình mà không cần chỉ định bất kỳ cổng nào vì Varnish hiện đang nghe trên cổng 80.


Máy chủ web của bạn giờ đây sẽ được nâng cao hiệu suất nhờ bộ nhớ cache Varnish nhanh chóng.