CloudPanel - Web Hosting Control Panel

CloudPanel là một Web Hosting Control Panel, về cơ bản nó khá tương tự với CyberPanel, aaPanel chạy trên nền tảng Nginx, PHP, Mysql

CloudPanel cài đặt rất nhanh, giao diện sạch sẽ, hiệu năng mặc định tuyệt vời, các tính năng đủ dùng và thiết thực

1 trong các tính năng của CloudPanel mà mình khá thích là chuyển đổi nhanh phiên bản PHP trong 1 click, Reverse Proxy, và SLL siêu đơn giản

Phần cấu hình “hình như” CloudPanel set cứng các tham số về Opcache, PHP, Mysql, bất kể bạn dùng VPS 1GB RAM hay 24GB RAM, CloudPanel đều dùng 768M cho Opcache, innodb_buffer_pool_size = 512M, pm.max_children = 250, tạo thêm 2GB RAM ảo …. nghe hơi ngu học, nhưng các giá trị này chạy lại rất mượt mà, trơn tru trên WordPress

Về cache, phần lớn các script dùng Nginx thường dùng FastCGI, CloudPanel dùng combo Redis Server + Varnish Cache, mình có dùng thử Varnish Cache trên bibica.net, 1 trang blog cực kì ít tính năng, vẫn thấy khá là khó cấu hình, cache phần comment chưa tự xử lý được ….

Góc độ cá nhân, mình không thích phương pháp dùng Varnish làm reverse proxy cache (nhất là trên cùng 1 server như này, nó mất đi khá nhiều tác dụng), nếu đã thế, sao không dùng Apache làm Reverse Proxy để mọi thứ có thể cấu hình qua .htaccess, giúp việc cài đặt, cấu hình các plugin đơn giản, thiết thực hơn?

Trừ khi bạn có nhu cầu gì đặc thù, còn lại cache dùng Cache Level: Cache Everything từ Cloudflare vẫn tối ưu nhất, cả về hiệu năng lẫn sự đơn giản

Về vấn đề bảo mật, các tinh chỉnh như tài khoản 2 lớp, Basic Authentication, IP Blocking, Bots Blocking, hay Allow traffic from Cloudflare only đều rất thiết thực, hiệu quả

Tạm sau khi cài đật thử, sau ít tiếng sử dụng thì mình không có gì để phàn nàn, mọi thứ chạy mượt mà, không thấy lỗi gì trên các plugin đang sử dụng 😀

Requirements

  1. CloudPanel có thể chạy trên OS Ubuntu 22.04 (Jammy Jellyfish) hoặc Debian 11 (Bullseye)
  2. Ưu điểm khá hay là ngoài x86 nó còn hỗ trợ ARM64
  3. CPU thì tối thiểu 1 core là có thể cài đặt
  4. Memory yêu cầu >= 2 GB RAM (mình có thử VPS 1GB RAM thì thấy vẫn cho phép cài đặt và chạy bình thường :D)
  5. Ổ cứng yêu cầu >= 10 GB

Ở bài này mình thử trên Oracle VM Standard A1 Flex 4 OCPU 24 GB RAM, chạy Ubuntu 22.04 LTS

Cài đặt CloudPanel

Cập nhật hệ thống, cài đặt các gói cần thiết và khởi động lại VPS

apt update && apt -y upgrade && apt -y install curl wget sudo cron && reboot

Cài đặt CloudPanel với Mariadb 10.11

curl -sS https://installer.cloudpanel.io/ce/v2/install.sh -o install.sh; \
echo "3c30168958264ced81ca9b58dbc55b4d28585d9066b9da085f2b130ae91c50f6 install.sh" | \
sha256sum -c && sudo CLOUD=oci DB_ENGINE=MARIADB_10.11 bash install.sh

Khá bất ngờ vì lúc cài đặt thấy CloudPanel cài vào đủ các phiên bản PHP từ 7.1 -> 8.2 mà thời gian cài đặt cực nhanh, chỉ mất chưa tới 5 phút trên con VPS Oracle có ổ cứng siêu chậm

2023-08-31_2-11-37

Tắt Firewall Oracle Ubuntu 22.04 LTS (nếu dùng VPS hãng khác thì không cần)

sudo apt remove iptables-persistent -y && sudo ufw disable && sudo iptables -F

Sau khi cài đặt xong, bạn có thể vào đường dẫn CloudPanel hiện ra để tạo tài khoản quản trị, phần ngôn ngữ thậm chí hỗ trợ cả tiếng Việt

2023-08-31_2-15-09

Tài khoản quản trị cũng được bổ xung thêm bảo mật 2 lớp

2023-08-31_2-18-24

Dashboard hiện ra 1 số thông tin cơ bản để bạn có thể theo dõi tình trạng hoạt động của VPS

2023-08-31_2-19-38

Tạo trang quản lý với subdomain dễ nhớ

Ta có thể đổi https://192.18.140.40:8443/ thành 1 subdomain dễ nhớ hơn qua Reverse Proxy

2023-09-02_1-49-21

Điền sub domain muốn sử dụng và url muốn làm proxy vào

2023-09-02_1-50-47

CloudPanel quản lý tự động tạo SSL Self-Signed rất mượt, mất ít giây đổi lại DNS là có thể truy cập subdomain quản trị bình thường

Trước đây khi dùng SSL của Let's Encrypt, thường mình phải trỏ IP vào domain trước, tắt proxy từ Cloudflare đi, thì việc cài đặt SSL mới thành công, trên CloudPanel thì cài SSL không cần trỏ IP trước, nên việc cài đặt rất là tiện

1 điểm khá lú là mình chưa hiểu CloudPanel quản lý renew SSL ở đâu, kiểm tra trong crontab không thấy có gì cả

Trong trường hợp bạn cần tạo các Reverse Proxy trên Jetpack, đường dẫn dạng https://i2.wp.com/img.bibica.net/ thì cần sửa lại 1 chút

2023-09-02_1-57-22

Tạo Reverse Proxy mới, điền đầy đủ link https://i2.wp.com/img.bibica.net/

2023-09-02_1-58-25

Bên trong Vhost thay đoạn code bên dưới vào location

location / {
  proxy_pass {{reverse_proxy_url}};
  proxy_set_header Connection "";
  proxy_http_version 1.1;
  proxy_connect_timeout 300;
  proxy_send_timeout    300;
  proxy_read_timeout    300;
  proxy_ignore_headers   Set-Cookie;
  proxy_intercept_errors on;
}

Quản lý qua giao diện web, nên các chỉnh sửa cấu hình config khá tiện, sửa xong ấn save nó tự khởi động lại Nginx luôn, nên cũng đỡ đi các thao tác lặt vặt như khi gõ trực tiếp dòng lệnh

Tạo trang WordPress

Việc tạo 1 trang WordPress mới trên CloudPanel rất nhanh và tiện, mọi thứ gần như auto, bạn chỉ phải điền duy nhất domain vào là xong

2023-09-02_2-03-30

Bên trong domain, tab Setting, bạn sẽ thấy phần PHP Setting

2023-09-02_2-07-14

Có thể chọn các phiên bản PHP khác nhau, các giá trị CloudPanel đang để sẵn cũng là các thứ mình hay sử dụng, hơi khó hiểu là họ chỉ set sẵn tùy chọn upload file max 5GB, mình thì hay theo thói quen điền max 100GB, nên thêm vào Additional Configuration Directives

upload_max_filesize=1000000M;
max_file_uploads=6000;
post_max_size=1000000M;
opcache.memory_consumption=4096;
opcache.interned_strings_buffer=512;
opcache.max_accelerated_files=100000;
opcache.max_wasted_percentage=10;

Opcache mặc định CloudPanel duy trì 768M, do con VPS đang có 24GB RAM, nên mình tăng lên thành 4G cho rủng rỉnh

2023-09-02_2-10-34

Varnish Cache nếu thích dùng thì có thể bật lên, trên WordPress thì dùng thêm plugin CLP Varnish Cache để quản lý cũng được

2023-09-02_2-13-52

Tab Security có thể bật Allow traffic from Cloudflare only để bắt buộc truy cập qua Cloudflare

2023-09-02_2-17-31

Tab File Manager cũng khá tiện, kiểu đôi khi đang ở ngoài đường, cần sửa file gì thì có thể vào thẳng CloudPanel -> File Manager sửa nhanh gọn, đỡ phải truy cập SSH/FTP lằng nhằng 😛

2023-09-02_2-19-30

Tab Cron Job đã làm sẵn các template giúp bạn cấu hình dễ hiểu hơn

2023-09-02_2-21-08

Tab Logs có thể xem log của Nginx và PHP

2023-09-02_2-24-41

Tab Databases bạn có thể xem các thông tin về database, user …. đang sử dụng, có thể đổi password hoặc truy xuất vào phpmyadmin từ tab này

2023-09-02_3-06-27

Trong trường hợp bạn muốn dùng remote database thì vào Admin Area -> Firewall, add IP của HOST và port 3306 vào, để có thể truy xuất vào database từ bên ngoài

2023-09-02_3-07-39

Bạn cũng có thể tạo 1 user mới để quản lý 1 trang cụ thể nào đó, tính năng này khá hay nếu bạn cài cho người quen, bạn bè hoặc khách hàng …. họ có thể tự vào quản trị riêng các cấu hình của họ

Hiệu năng

Ở 2023 thì thú thực mình không còn quan tâm nhiều các bài benchmarks này nọ nữa, vì dùng Cloudflare Cache, chịu tải và tốc độ ngoại hạng rồi, giờ thì mình chỉ vào admin, viết bài, edit post, save draft, public post, đi vào danh mục plugin hoặc các cấu hình từng của plugin, kiểm tra tốc độ xem như thế nào …. phía user thì vào phần comment, thử comment 1 phát, xem mất bao lâu thì comment gửi đi ….

Về các ý này thì CloudPanel hoàn thành xuất sắc, thậm chí có cảm giác còn nhanh hơn cả Webinoly

Thành thật mà nói thì mình không quá trông chờ gì về hiệu năng ở mấy script dạng Hosting Control Panel, tại thường nó sẽ đi hướng mạnh về tính năng, dùng thử CloudPanel 2 ngày thấy khá là socks về hiệu năng của nó

Trên CloudPanel v2.3.2 chạy cấu hình mặc định Nginx 1.21.4, PHP 8.2.9, MariaDB 10.11.5 ….

So với các script khác thì họ dùng thêm Brotli, tuy thế nếu bạn dùng qua Cloudflare, mặc định sẽ dùng Brotli từ Cloudflare, nên lý thuyết cấu hình này cơ bản không có ý nghĩa

# Brotli Settings
    brotli on;
    brotli_comp_level 8;
    brotli_static on;
    brotli_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript image/png image/gif image/jpeg application/javascript image/svg+xml;

Về database họ cũng dùng cấu hình rất cơ bản

[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
log-error = /var/log/mysql/error.log
datadir = /home/mysql/
innodb_file_per_table
character-set-server = utf8mb4
collation-server  = utf8mb4_general_ci
init-connect = 'SET NAMES utf8mb4'

;slow_query_log = 1
;slow_query_log_file = /var/log/mysql/slow.log
;long_query_time = 2

thread_cache_size = 32
table_open_cache = 2048
sort_buffer_size = 8M
innodb = force
;innodb_buffer_pool_size = 1G
innodb_buffer_pool_size = 14G
innodb_log_file_size = 1GB
innodb_stats_on_metadata = OFF
innodb_buffer_pool_instances = 8
innodb_log_buffer_size = 10M
innodb_flush_log_at_trx_commit = 2
innodb_thread_concurrency = 6
join_buffer_size = 8M
tmp_table_size = 128M
key_buffer_size = 128M
max_allowed_packet = 64M
max_heap_table_size = 128M
read_rnd_buffer_size = 16M
read_buffer_size = 2M
bulk_insert_buffer_size = 64M
max_connections = 512
myisam_sort_buffer_size = 128M
explicit_defaults_for_timestamp = 1
open_files_limit = 65535
table_definition_cache = 1024
table_open_cache = 2048
log_bin_trust_function_creators = 1
disable_log_bin

Cấu hình bên trong mysql thì mình chỉ tăng giá trị innodb_buffer_pool_size và 1 vài giá trị lên cho phù hợp với RAM 24GB, cơ bản giữ như mặc định

[bibica.net]
listen = 127.0.0.1:17002
user = bibica
group = bibica
listen.allowed_clients = 127.0.0.1
pm = ondemand
pm.max_children = 250
pm.process_idle_timeout = 10s
pm.max_requests = 100
listen.backlog = 65535
pm.status_path = /status
request_terminate_timeout = 7200s
rlimit_files = 131072
rlimit_core = unlimited
catch_workers_output = yes

Về cấu hình PHP thì thường mình không quan tâm lắm, tại trang cache cả rồi, phần admin thì coi như 1 người dùng, PHP cấu hình sao cũng như nhau

Dùng CloudPanel trải nghiệm liên quan tới admin và các file tĩnh rất tuyệt, trước đây khi dùng các script khác, đa phần đều rất nhanh, nhưng đôi khi vẫn có cảm giác đơ đơ, CloudPanel bữa giờ mình dùng thấy tốc độ rất nhất quán

Tạm thì mình nghiêng về hướng các cấu hình của CloudPanel, có vẻ nó đồng bộ với Cloudflare tốt hơn, nên khiến trải nghiệm người dùng cuối tốt hơn (hoặc đôi khi lý do nhảm nhí hơn là tình cờ lúc cài CloudPanel vào, mạng VNPT nhà mình đang dùng sửa lại đường mạng đi quốc tế nhanh hơn =)))

2023-09-03_9-19-00

Ở trang home, khi cache qua Cloudflare thì tốc độ nhanh thì không bàn rồi, CloudPanel vẫn duy trì processing rất tốt trong rất nhiều tình huống, như khi mình cập nhập lại bài viết, khi có comment mới, cache sẽ bị xóa (con số trong hình mình check trong khoảng 2 ngày, trung bình 30-60s check 1 lần từ rất nhiều cụm location)

Thậm chí processing nhanh gấp đôi so với Cloudflare Pages (1 trang tĩnh hoàn toàn)

Về ý này thì mình nghĩ dùng khoảng 1 tháng, khi trang chạy đều đặn ở nhiều tình huống khác nhau, sẽ cập nhập lại sau, còn tạm thì mình thấy hiệu năng ấn tượng, tính nhất quán và ổn định không phải dạng vừa

Kết luận

CloudPanel miễn phí, đơn giản và đủ dùng, không cần mất nhiều thời gian, bạn đã có thể làm quen được với các tùy chỉnh và cấu hình của họ, sau khi cài đặt xong, gần như bạn không phải dùng gì tới SSH để chạy các lệnh thêm nữa, quản trị thực sự rất nhàn, các phần monitor, log hay bảo mật của họ đều rất thiết thực

Sản phẩm đã được ra mắt từ 2011 và tới giờ vẫn được tác giả cập nhập đều đặn, bạn có thể yên tâm sử dụng 😛

Phần doc hướng dẫn cũng được họ viết rất chỉn chu, đầy đủ, để bạn có thể tham khảo thêm

Hỗ trợ ARM là 1 điểm cộng

Tạm thì sau khi cài đặt và setup trên thèng bibica.net mình không có gì để phàn nàn, mọi thứ rất ổn định

Comment policy: We love comments and appreciate the time that readers spend to share ideas and give feedback.
Notes: However, those deemed to be spam or solely promotional will be deleted.

You can create a Gravatar account, add avatar, then use that email to comment here, your account will have a more beautiful Avatar, easier to recognize with other members.

Please use real emails, you can receive notifications when comments are replied