Hướng dẫn cài đặt VestaCP với NGINX + PHP-FPM

VestaCP là một Web Hosting Control đơn giản, dễ sử dụng nhất. Cái mình thích ở VestaCP là mã nguồn mở và có cả Tiếng Việt rất thuận tiện cho anh em mới sử dụng.

Trong hướng dẫn ngày hôm nay, mình sẽ hướng dẫn cho các bạn làm thế nào để cài đặt VestaCP với Nginx và PHP-FPM, thay vì với Nginx, Apache và PHP5, trên VPS của bạn (Ubuntu hoặc CentOS). Ngoài ra, cũng có vài kết quả của thử nghiệm benchmark hiệu năng, do đó bạn có thể thấy sự mạnh mẽ của VestaCP với Nginx và PHP-FPM trên một máy chủ RAM 512MB. Bạn đã đủ tò mò?

BẠN CẦN CHUẨN BỊ:

  1. Một kết nối SSH với Bitvise hoặc Putty, trên MacOS thì sử dụng luôn Terminal.
  2. Một máy chủ hoặc VPS với ít nhất 512MB RAM.
  3. Kiến thức cơ bản về SSH.
  4. Khoảng 30 phút và 1 tách cafe.

Có rất nhiều nhà cung cấp VPS trong bài này thì mình sử dụng DigitalOcean đây là một nhà cung cấp mình rất thích, mình đã sử dụng hơn 3 năm mà chưa phải gửi mail support lần nào.

Quay trở lại bài, mình sẽ sử dụng CentOS 7 với 512MB RAM. Bạn có thể dùng Ubuntu để thay thế.

centos-512mb-sgp1-01

Sau khi bấm nút Create bạn sẽ thấy bản thông báo sau:

DigitalOcean-dang-cai-dat

Quá trình này hoàn tất, sẽ có một email gửi về cho bạn với nội dung như sau:

DigitalOcean-email-pass-root

1. CÀI ĐẶT VESTACP

Bước 1: Đăng nhập vào máy chủ của bạn thông qua Putty với quyền root.

dang-nhap-DigitalOcean

Bước 2: Bây giờ mở trình duyệt web yêu thích của bạn (ví dụ như: Firefox, Chrome, IE), sau đó truy cập vestacp.com . Cuộn xuống một chút bạn sẽ thấy bản cài đặt và bạn thiết đặt như hình:

 

cai-dat-vestacp

Bởi vì Vestacp không đi kèm với File Manager ( cái này phải mua), vì vậy bạn tốt hơn cũng chọn FTP server mà bạn muốn cài đặt: vsftpd hoặc proftpd.

DNS bạn nên thiết lập giống mình để tiết kiệm RAM cho máy chủ. Sau đó:

cai-dat-vestacp-2

 bash vst-install.sh --nginx yes --phpfpm yes --apache no --vsftpd yes --proftpd no --exim yes --dovecot yes --spamassassin yes --clamav no --named yes --iptables yes --fail2ban yes --mysql yes --postgresql no --remi yes --quota no --hostname panel.lamnotes.com --email [email protected] --password *******
Lưu ý: bạn thay đổi panel.lamnotes.com, [email protected] và password theo sở thích của bạn.

Bước 3: Mở Terminal trên MacOS hoặc Putty trên Windows lên nhập dòng lệnh sau:

 curl -O http://vestacp.com/pub/vst-install.sh

cai-dat-vestacp-3

Tiếp theo bạn cần dán đoạn code ở bước 2 vào và ấn Enter nếu thấy bản thông báo sau là được

cai-dat-vestacp-4

Bạn thấy dòng “Would you like to continue” chứ đơn giản chỉ cần ấn y và Enter.

cai-dat-vestacp-5

Thấy bản này thì nhất ly cafe lên uống được rồi ngồi đợi khoảng 15 phút đó mấy thím.

cai-dat-vestacp-6

Bước 4: Bạn sử dụng thông số trên để đăng nhập

 Congratulations, you have just successfully installed Vesta Control Panel

 https://139.59.236.216:8083
 username: admin
 password: ******

Mở trình duyệt lên và nhập https://x.x.x.x:8083 thay x.x.x.x bằng IP của bạn. Nếu thấy thông báo sau:

cai-dat-vestacp-7

Sau đó bạn nhập usernamepassword

cai-dat-vestacp-8

Bấm Log in thôi nào và đây là dashboard của em nó! Vậy là xong phần cài đặt. Tiếp theo, xem hiệu xuất của em nó như thế nào.

cai-dat-vestacp-9

HIỆU SUẤT CỦA VESTACP NGINX + PHP-FPM

Đây là bài kiểm tra hiệu suất của VestaCPVestaCP nginx + php-fpm chủ yếu để các bạn có cái nhìn sơ qua về bộ đôi nginx + php-fpm. Kết quả có thể khác nhau đôi chút trong điều kiện thử nghiệm khác nhau.

ĐỒ CHƠI CỦA MÌNH:

  • 1 cloud VPS từ DigitalOcean với 512MB RAM.
  • Vesta 0.9.8-15 với Nginx and PHP-fpm.
  • WordPress 4.5.
  • Theme Schema không cài Plugin.
  • Dummy content từ MyThemeShop.

Hình chụp blog test:

Screen-Shot-blog-test

LOADER.IO

Screen-Shot-blog-test-1

Ở bài test này tại thời điểm cao nhất là 54 khách trên mỗi giây. Thời gian tải nhanh nhất khoảng 1 giây (1003ms = 1s),  trung bình 6360ms = 6.36s và cao nhất là 13784ms = 13,7s. Lỗi 500 chúng ta có 38 lỗi, Timeout là 18 lỗi và không có lỗi 400 nào.

Vậy câu hỏi đặt ra là ta có 10 khách hàng đang yêu cầu mỗi giây có nghĩa là 600 khách truy cập mỗi phút hoặc nó là khoảng khoảng 864k khách truy cập mỗi ngày liệu VPS DO với 512MB RAM có sử ký hơn 50k lượt mỗi ngày. Câu trả lời là . Nhưng tuy nhiên trong môi trường thực tế kết quả có thể khác nhau. Theo mình nên để 1G RAM sẽ hợp lý hơn.

GTmetrix

Screen-Shot-blog-test-2

Với 22 yêu câu tải trang với dung lượng 205kb chúng ta mất 2,9s để hoàn tất. Điểm hiệu suất của chúng ta là A cho PageSpeed và A cho YSlow. Các bạn lưu ý trong các bài test này mình không sử dụng bất kỳ Plugin hay CDN nên kế quả sẽ nhanh hơn nếu các bạn đã tối ưu website.

PINGDOM Tools

Screen-Shot-blog-test-3

Cũng tương tự bài test trên ta có 22 yêu câu, thời gian tải xong là 1.30s điểm số là 80/100. Lưu ý là trong bài này chúng ta sử dụng VPS tại Singapore. Các bạn cũng thấy PingDom ghi rõ “Trang web của bạn là nhanh hơn 85% của tất cả các trang web thử nghiệm” Một tín hiệu khả quan đúng không nào.

Qua các kết quả đánh giá trên mình cũng hy vọng bạn có lựa chọn nên hay không việc cài đặt VestaCP với NGINX + PHP-FPM để sử dụng. Chúc các bạn thành công!

Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.