Oracle Cloud Always Free - Đơn giản là RÁC

Mình từng dùng Amazon Lightsail vài năm, rất hài lòng, cụm server Singapore của họ, có thể nói là đứng đầu thế giới về giá cả ($3.5) và uptime (~100%), phàn nàn duy nhất có lẽ là tốc độ ổ cứng hơi chậm

Sau chuyển sang UpCloud vì bên đi vì Amazon Lightsail hết tiền 😛

Dùng UpCloud cụm server Sing giai đoạn mình dùng thì hơi nát, lâu lâu downtime, với dù là server Sing mà Việt Nam thi thoảng truy cập cũng chậm

Sau đổi sang UpCloud cụm server San Jose, California thì rất hài lòng, uptime gần như 100% trong khoảng 3 năm nay, tất nhiên, bên UpCloud thì mình vẫn còn đủ tiền, để có thể duy trì bibica.net thêm khoảng vài năm

Cá nhân mình vẫn mong muốn 1 dịch vụ …. FREE ổn định, vì thèng bibica.net nó cũng chỉ là 1 blog cá nhân, có khi 6-8 tháng mình còn không nhìn, nên cũng không muốn tốn tiền hàng tháng nhiều quá 😛

Quan trọng nhất là tổng dung lượng ổ cứng thèng bibica.net dùng thực tế chỉ khoảng 2GB, băng thông hàng tháng thì không tới 1Gb, 1 ngày cao lắm tầm 50 khách vào, đa phần 1 ngày chỉ 3-10 khách 😛 dùng các dịch vụ trả phí, băng thông toàn kiểu 1TB, cảm giác nó xa sỉ, thừa mứa quá 😛

Các dịch vụ miễn phí của Google, Amazon, Microsoft mình từng dùng qua, thì đa phần chỉ cho dùng thử dưới 12 tháng, còn không thì lại đủ các phí ngầm khá phức tạp, nên mình bỏ qua

Ngồi 1 hồi thì sực nhớ ngày xưa bên VOZ, bà kon kháo nhau Oracle cũng có gói Always Free, nên tím hiểu thử xem thế nào

Oracle tạm mình xem lướt thì gói VM.Standard.A1.Flex sẽ bị xóa sau 30 ngày, muốn dùng tiếp thì phải cài lại, gói VM.Standard.E2.1.Micro đang không giới hạn thời gian sử dụng???

Warning

Unpaid Free Tier accounts only. Idle Always Free resources for unpaid Free Tier accounts can be reclaimed at any time, without notice. Reclaiming includes actions such as stopping or terminating.

Oracle lại thòng thêm 1 câu là có thể xóa các tài khoản Always Free ở những khách hàng sử dụng miễn phí bất cứ khi nào họ thích 😀 đọc xong cũng khá là khó hiểu, Always Free nhưng lại thích xóa lúc nào thì xóa là sao nhỉ :((

Đăng kí tài khoản: Oracle Cloud Free

Việc đăng kí cơ bản tương tự với các dịch vụ khác, bạn cần 1 thẻ thanh toán quốc tế để có thể xác minh phần billing

Chú ý quan trọng nhất là tùy chọn Home Region (dễ hiểu là các cụm server), vì tùy chọn này không thể thay đổi sau khi tạo tài khoản

Bạn có thể chọn ở Singapore, South Korea, Japan để có tốc độ nhanh nhất về Việt Nam cũng được, cá nhân thì mình chọn cụm US West (San Jose) do vẫn tin tưởng các cụm location US về uptime hơn

Đăng kí xong thì thường mất tầm 5-15 phút để Oracle cài đặt mọi thứ hoàn chỉnh, bạn sẽ nhận được email thông báo khi tất cả mọi thứ sẵn sàng

Tạo máy ảo

Từ trang quản trị, bạn bấm vào mục Create a VM Instance

Placement

Để mặc định Availability domain: 

Image and shape

Image: chọn CentOS 7

Shape: chọn VM.Standard.E2.1.Micro (1 core OCPU, 1 GB memory, 0.48 Gbps network bandwidth)

Lý do chọn gói thấp nhất VM.Standard.E2.1.Micro là vì CentOS cũng chỉ chạy trên gói này, phần vì gói VM.Standard.A1.Flex cấu hình cao hơn sẽ tự bị xóa sau 30 ngày

Networking

Để mặc định

Add SSH keys

Download 2 file private key và pulic key về máy

Boot volume

Để mặc định

Xong xuôi hết thì ta sẽ có các thông số cơ bản như trong hình, ấn vào Create ở cuối trang rồi chờ 1 chút để Oracle có thể kích hoạt máy ảo

Cấu Hình Tường lửa cho Máy ảo

Mặc định Oracle sẽ chặn tất cả kết nối đến máy ảo, ngoại trừ port 22 dành cho kết nối SSH, ta cần mở ra để có thể cài đặt các thứ khác

Ấn vào Subnet: 

Ấn vào Default Security List for vcn-20221109-0948

Ấn vào Add Ingress Rules

  • Souce CIDR: 0.0.0.0/0
  • IP Protocol: All Protocol

Tùy chọn này là bạn đã mở tất cả các cổng trên VPS

Kết nối vào máy ảo

Sau khi tạo xong, chúng ta sẽ có các thông tin về VPS

Trong đó Private key và public key đã save về máy ở bước Add SSH keys

Có thể dùng Bitvise SSH Client để login, thông tin như Oracle cung cấp, add private key vào phần Client Key Manager

Làm xong cơ bản chúng ta sẽ có thông tin login trên Bitvise SSH Client như thế

Thêm quyền root cho VPS Oracle

sudo passwd root

(Điền mật khẩu và enter) – làm 2 lần để đổi password cho root

Tiếp theo gõ

sudo yum install nano -y
sudo nano /etc/ssh/sshd_config

Thuộc tính PermitRootLogin no, bạn sửa lại là yes và phần PasswordAuthentication no, bạn sửa lại là yes
Nếu có dấu # đằng trước PermitRootLogin và PasswordAuthentication thì bỏ đi

Sau đó bấm Ctrl+O -> Enter -> Ctrl+X để save và exit.

Gõ tiếp lệnh sau để khởi động lại ssh:

sudo service sshd restart

Từ lúc này ta có thể login với quyền root và sử dụng password như thông thường

Chỉnh về múi giờ Việt Nam

timedatectl set-timezone Asia/Ho_Chi_Minh

Type “date” để kiểm tra lại ngày tháng xem về đúng giờ Việt Nam chưa là được ????

Tăng Thời Gian Kết Nối SSH

Chưa rõ tại sao mặc định Oracle set thời gian kết nối hơi ngắn, tăng thêm 1 xíu dùng cho thoải mái

nano /etc/ssh/sshd_config

Thêm vào dòng dưới cùng đoạn code sau:

ClientAliveInterval 7200

7200 là thời gian chờ tầm 2h.

Sau đó bấm Ctrl+O -> Enter -> Ctrl+X để save và exit.

Khởi động lại ssh:

sudo service sshd restart

Cài Đặt Centmin Mod

yum -y update; curl -O https://centminmod.com/installer.sh && chmod 0700 installer.sh && bash installer.sh

Do mình chọn phiên bản VM.Standard.E2.1.Micro nên phần cứng rất phò, tốc độ ổ cứng rất chậm, giai đoạn cài đặt thấy con VPS gồng gánh toàn kiểu 100% load tội lắm 😀

Total Curl Installer YUM or DNF Time: 332.0621 seconds
Total YUM Time: 25.188021274 seconds
Total YUM or DNF + Source Download Time: 86.1684
Total Nginx First Time Install Time: 1572.7268
Total PHP First Time Install Time: 1834.2685
Download From Github Time: 2.6362
Total Time Other eg. source compiles: 1045.6133
Total Centmin Mod Install Time: 4538.7770

Cài đặt hoàn chỉnh mất 4538s ~ 76 phút thì đúng là tốc độ ổ cứng của VM.Standard.E2.1.Micro chậm thật

Cài xong xuôi thì type thêm dòng bên dưới để vào bảng điều khiển của Centmin Mod

centmin

Nhập email vào để Centmin Mod hoàn thành các bước cài đặt sau cùng

Bước này cũng hơi lâu 1 tí, xong xuôi thì bạn type “24” để thoát bảng điền khiển của Centmin Mod

Nếu sau khi ấn “24” để thoát ra ngoài mà bạn nó quay lại bảng điều khiển thì type lại “24” để thoát (lần đầu cài đặt nó hay bị thế)

Tiếp theo gõ lệnh reboot để khởi động lại VPS

reboot

Kiểm Tra Lại Các Phiên Bản

php -v
nginx -V
PHP 7.4.33 (cli) (built: Nov  9 2022 08:46:22) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.33, Copyright (c), by Zend Technologies
nginx version: nginx/1.23.2 (091122-080520-centos7-kvm-c1bd1fe)
built by gcc 10.2.1 20210130 (Red Hat 10.2.1-11) (GCC)
built with OpenSSL 1.1.1s  1 Nov 2022
TLS SNI support enabled

PHP 7.4.33, nginx/1.23.2, gcc 10.2.1 20210130, các phiên bản đều khá mới, chung quy đoạn kiểm tra này cho vui mồm là chính, chứ mọi thứ mặc định trên Centmin Mod đều đã được

Cấu Hình Centmin Mod

Cài thêm htop, zip, unzip

yum install htop -y
yum install zip -y
yum install unzip -y

Về cơ bản cấu hình server mới là như thế, giờ ta sẽ backup, restore bibica.net từ Upload sang Oracle

Backup data bằng Duplicator Pro từ server cũ

Download 2 file archive.zip và installer.php về

tạo 1 bản Wordpress cho domain bibica.net (sử dụng lệnh 22)

Xong xuôi thì vào thư mục cài đặt domain của bibica.net bằng lệnh cd

cd /var/www/bibica.net/htdocs

Chép file wp-config.php về máy để coi info database xong rồi xóa tất cả các file và thư mục có sẵn:

rm -rf *

Chép 2 file archive.zip và installer.php được tạo ra bởi Duplicator Pro (lấy ở bước trên) vào thư mục /home/nginx/domains/bibica.net/public

Tốc độ upload bằng đường truyền VNPT cũng được ~ 2.5 Mb/s, không quá tệ cho 1 cụm server US 😛

Cấu hình SSL signed by Cloudflare

Chép 2 file bibica.net.key và bibica.net.pem trong thư mực /root/ssl/ ở server cũ sang server mới

sudo nano /usr/local/nginx/conf/conf.d/bibica.net.conf

Thêm dòng bên dưới trong server {}

listen 443;
ssl on;
ssl_certificate /root/ssl/bibica.net.pem;
ssl_certificate_key /root/ssl/bibica.net.key;

Sau đó chạy tiếp dòng dưới để reload lại nginx, để thay đổi có hiệu lực

nginx -t
service nginx reload

Setup tạm trên Windowns (localhost)

Trước đây, khi thèng bibica.net chưa dùng HSTS thì có thể sửa file hosts trên windows để truy cập ảo từ localhost, mà giờ làm thế nó văng lỗi liên quan tới ssl búa xua 😀

Giờ phải đổi DNS, trỏ về IP mới, xong setup trực tiếp 🙁

Chạy installer.php để Duplicator Pro restore lại bibica.net, info database thì mở file wp-config.php nãy chép về ra xem

Vậy là cơ bản bạn đã restore lại thèng bibica.net cũ xong rồi, tiếp theo thì config lại ít thứ liên quan tới trang nó

Bật Shell_exec Trên Centmin Mod

Mặc định, Centmin Mod tắt shell_exec vì lý do an toàn, tuy thế dùng VPS riêng, cá nhân mình nghĩ không thành vấn đề, Duplicator Pro và rất nhiều plugin hay script khác cần quyền này để có thể chạy, EE hay Webinoly đều bật shell_exec chạy cả thôi

sudo nano /usr/local/etc/php-fpm.conf

tìm tới dòng cuối sẽ thấy

php_admin_value[disable_functions] = shell_exec

Xóa phần shell_exec đi

php_admin_value[disable_functions] = 

Sau đó bấm Ctrl+O -> Enter -> Ctrl+X để save và exit.

Khởi động lại php để thay đổi có hiệu lực

service php-fpm restart

Thiết Lập Một Cronjob Thực Từ Linux’s

crontab -e

Set chạy 1 phút 1 lần cho wp-cron

*/1 * * * * curl https://bibica.net/wp-cron.php?doing_wp_cron > /dev/null 2>&1

Sau đó bấm Ctrl+O -> Enter -> Ctrl+X để save và exit.

Kiểm tra tốc độ truy cập thực tế khi sử dụng

Truy cập lần đầu vào bibica.net ~ 2.4s, F5 lại lần 2 thì ~ 0.6s

Tốc độ khi lần đầu tiên vào theo mình hơi chậm

Thử truy cập vào bài có nhiều hình ảnh nhất thì ~4s để load xong hoàn toàn, các bài viết khác cũng loanh quanh từ 1->4s, tốc độ cũng khá chậm

Thử phần email contact thì ấn phát là có email, nhưng phần comment của khách, thì sau 1-2 phút mới thấy email, bên UpCloud comment của khách email được gửi tức thời, thời gian gửi email hơi chậm nhưng có thể cho qua 

Tốc độ truy cập thực tế thì theo mình cũng được, nhanh hay chậm ít giây không quá đáng kể khi đọc bài

Kiểm tra tốc độ truy cập khi backup hệ thống

Mặc định thì mình set Duplicator Pro cứ đúng 0h mỗi ngày, sẽ tự backup, sau đó chuyển data sang Google Drive, dựa vào hình ảnh các log cũ, bạn có thể thấy đa phần đúng 0h hoặc 0h1p ở server UpCloud đã làm xong tất cả công đoạn này, bên Oracle thì chỉ backup không đã mất gần …. 20 phút 😀 transferring to Google Drive mất thêm 15 phút vẫn thấy chưa xong thì mình thấy khoản này nát quá, tắt luôn, mà để chắc cú mình vào lại server UpCloud thử backup, mất tầm 2 phút là xong rồi

Quan trọng nhất là lúc nó backup và transferring, gần như sử dụng 100% CPU, nếu khách truy cập vào site lúc này, cần 10-25s mới có thể lết nổi :]]

VM.Standard.E2.1.Micro của Oracle thực sự tệ nếu bạn có nhu cầu backup data nhiều 😀

Kết luận

Với cấu hình thấp nhất của gói Oracle Cloud Always Free VM.Standard.E2.1.Micro, gần như không thể sử dụng bình thường cho một trang web đang vận hành, nó chỉ có chút tác dụng khi bạn sử dụng như 1 hình thức localhost, test tính năng này nọ trước khi làm sang trang chính, hoặc dùng như 1 trang sơ cua ….. mà kể cả có thể vụ Oracle vui vui là xóa cũng khiến không ai đám dùng gói Always Free của họ lâu dài 😀

Nói chung giải pháp dùng Oracle Cloud Always Free cho thèng bibica.net toang hẳn :]]

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