Oracle Always Free-eligible (miễn phí trọn đời) sẽ cho chúng ta dùng miễn phí 2 Compute VM.Standard.E2.1.Micro và 4 Compute VM.Standard.A1.Flex và 200GB ổ cứng
Tính toán dùng đơn giản thì bạn có thể tạo 2 Compute VM.Standard.E2.1.Micro, mỗi loại dùng 50GB space, 100 GB space còn lại có thể dồn sang 1 Compute VM.Standard.A1.Flex cấu hình mạnh nhất
Có điều thường các slot Ampere luôn không đủ vì bà con tranh như ăn cướp, chưa kể 1 số thị trường như Singapore hay Japan Tokio …. thậm chí các sot E2.1.Micro còn không có luôn, tạo mới luôn báo hết
Một số thành viên trên Github có viết vài script chạy qua … GitHub để tự tạo VPS trên Oracle, hiểu đơn giản là bạn set sẵn cấu hình VPS, code cứ 10-15s gửi thông tin sang cho Oracle, yêu cầu đăng kí, lúc nào được thì được, ở các thị trường đông như quân nguyên kiểu Singapore, Euro thì đăng kí auto mất từ 1-3 ngày, có khi 2-3 tuần mới có được 1 con VPS free =))
Thường mọi người hay tranh gói Gói A1.Flex, vì cấu hình khủng, RAM nhiều, có điều mình nghĩ Oracle vui vui họ lấy lại, thì lại mất công ngồi tạo
Thành ra mình nghĩ chỉ nên dùng các gói cấu hình thấp nhất E2.1.Micro trên Oracle là đủ rồi
Do mình đang có 1 tài khoản ở Singapore, mà vào đăng kí cứ thấy hết slot liên tục, đành dùng code để tự tạo xem thế nào 😛
Giải nén ra ta sẽ có các file và thư mục như trong hình
- Tiếp theo login vào Oracle, tạo 1 VPS như thông thường (ở đây mình demo tạo E2.1.Micro, A1.Flex về cơ bản cũng tương tự)
- Ấn F12, sau đó sang tab Network để nhìn
Khi bạn điền đầy đủ các thông tin, ấn Create sẽ hiện ta thông báo hết slot
Out of capacity for shape VM.Standard.E2.1.Micro in availability domain AD-1. Create the instance in a different availability domain or try again later. If you specified a fault domain, try creating the instance without specifying a fault domain. If that doesn’t work, please try again later. Learn more about host capacity.
- Bên tab Network bạn sẽ thấy xuất hiện 1 file mới tên là instances, màu đỏ nên rất dễ nhìn
- Phải chuột sau đó Copy -> Copy all as cURL (bash)
- Lúc này bạn có thể paste nó vào 1 trình soạn thảo văn bản bất kì, nội dung bên trong thì chi chít chữ hé 😀
- Tiếp theo dùng 1 trình soạn thảo văn bản nào đó, mở file Out Of Capacity ErrorAmd 1 ram 1 cpubot.py
- Lúc này bạn sẽ có 2 file như hình, trong đó bên trái là nội dung file bot.py, bên phải là nội dung của instances
availabilityDomains = ["xxxxxxxx"] displayName = 'xxxxxxxxx' compartmentId = 'xxxxxxxxx' imageId = "xxxxxxx" subnetId = 'xxxxxxxx' ssh_authorized_keys = "xxxxxxxxxx"
Ta thay các giá trị từ instances sang bot.py
- Giá trị đầu tiên availabilityDomains thì nó nằm ở phần Placement lúc tạo VPS
Lúc này đoạn code bên bot.py sẽ là
availabilityDomains = ["hMfS:AP-SINGAPORE-1-AD-1"] displayName = 'xxxxxxxxx' compartmentId = 'xxxxxxxxx' imageId = "xxxxxxx" subnetId = 'xxxxxxxx' ssh_authorized_keys = "xxxxxxxxxx"
- displayName nó là giá trị bạn muốn đặt tên cho VPS, như ở đây mình chọn là haproxy.tech
Lúc này đoạn code bên bot.py sẽ là
availabilityDomains = ["hMfS:AP-SINGAPORE-1-AD-1"] displayName = 'haproxy.tech' compartmentId = 'xxxxxxxxx' imageId = "xxxxxxx" subnetId = 'xxxxxxxx' ssh_authorized_keys = "xxxxxxxxxx"
- Giá trị compartmentId thì bạn search trong file instances
Lúc này đoạn code bên bot.py sẽ là
availabilityDomains = ["hMfS:AP-SINGAPORE-1-AD-1"] displayName = 'haproxy.tech' compartmentId = 'ocid1.tenancy.oc1..aaaaaaaarmwgpqpqhswgz2jr7aud5wjran6q53tf3esvz7mfyxqcatqmtmwa' imageId = "xxxxxxx" subnetId = 'xxxxxxxx' ssh_authorized_keys = "xxxxxxxxxx"
- Tìm tương tự để lấy giá trị của imageId
- subnetId
- Về giá trị cuối ssh_authorized_keys, thì nó là khóa public upload lên Oracle, khóa private thì bạn down về máy để cấp quyền khi login, khóa này khá dài, có điều vị trị cuối cùng của nó sẽ là ngày tháng tạo khóa (ví dụ ssh-key-2023-06-18), nên cũng không copy nhầm được
Lúc này đoạn code bên bot.py sẽ tương tự như thế này
Code này cũng cho set dung lượng ổ cứng khi khởi tạo, có điều mình thấy tạo xong VPS, thích sửa gì thì tự sửa sau, nên không cần thiết thêm gì vào nữa
- Lúc này bạn có thể save file bot.py, sau đó copy file này từ thư mục Amd 1 ram 1 cpu ra thư mục Out Of Capacity Error
Trông nó sẽ như thế này
- Tạo khóa API
- Bên trong tài khoản Oracle, ấn vào avatar của bạn -> My Profile
- Sau đó nhìn sang trái sẽ thấy tab APi keys, ấn tiếp vào Add API key
- Download 2 file private và public key về
- Sau đó ấn Add bên dưới
- Lúc này nó sẽ hiện ra 1 cái bảng, ấn copy để chép toàn bộ nội dung bên trong, sau đó paste nội dung này vào file config
- Tiếp theo chép file API private key vào thư mục Out Of Capacity Error
- Khóa private key nó sẽ không có chữ public ở đằng sau, nên cũng không lo chép nhầm được đâu, đổi tên khóa private thành “oci_private_key.pem”
- Sau đó mở file config, ra sửa lại đường dẫn tới oci_private_key.pem
Trong file instructions.txt, tác giả đã có hướng dẫn cụ thể chạy trên Windows, Linux hay GitHub
Mình lược dịch cơ bản chạy trên Ubuntu và Windows
Setup chạy trên Ubuntu
- Update packages
apt-get update -y && apt-get upgrade -y
- install python3,pip,screen and git
apt-get install python3 -y && apt-get install python3-pip -y && apt-get install screen -y && apt-get install git -y
- install python packages
pip install requests && pip install oci
- Chạy tiếp
apt-get remove python3-pip -y && wget https://bootstrap.pypa.io/get-pip.py && python3 get-pip.py && sudo reboot
- Lúc này VPS sẽ khởi động lại, chờ chút vào lại thì chạy tiếp
pip install pyopenssl --upgrade
- Chạy screen
screen
- Đi tới thư mục Out Of Capacity Error (do trên Ubuntu, thư mục có khoảng trắng nhiều quá, nên mình phải đổi tên thư mục thành oracle_error )
cd /root/oracle_error
- Chạy
python3 bot.py
- Chạy bên trong màn hình screen là nó sẽ liên tục chạy, bạn có tắt màn hình trên máy thì nó vẫn đang chạy trên server
Setup chạy trên Windows
- Cài đặt Python 3.11.4
- Tiếp theo gõ trực tiếp cmd, sau đó enter ngay tại đường dẫn thư mục
- Lúc này đường dẫn nó đã chính xác sẵn tới thư mục Out Of Capacity Error
- Bên trong CMD, gõ tuần tự các lệnh
pip install requests
pip install oci
- Để chạy script thì gõ
python3 bot.py
Cụ thể nếu bạn set như mặc định thì tác giả đang để script cứ 10s sẽ chạy lại 1 lần 😀 nó sẽ chạy cho tới khi nào tạo thành công 😛
Về thời gian chạy bao lâu thì tùy khu vực, như mình chạy trên cụm location Singapore thì khoảng 4 ngày mới tạo được thành công 1 con VPS, ở các cụm đông đúc hơn, thì có khi 2-3 tuần mới tạo được 😀
Nếu bạn đọc tới dòng này, thấy quá là ngu người, thì có thể thử dùng phương pháp đơn giản hơn là nâng cấp tài khoản lên Pay As You Go, nó giải quyết triệt để lỗi Out of capacity và cũng an toàn hơn cho tài khoản của bạn
Chính sách bình luận: Chúng tôi rất trân trọng các bình luận của bạn và cảm ơn thời gian bạn dành để chia sẻ ý tưởng và phản hồi.
Ghi chú: Những bình luận được xác định là spam hoặc chỉ mang tính quảng cáo sẽ bị xóa.
• Để cải thiện trải nghiệm bình luận, chúng tôi khuyến khích bạn tạo một tài khoản Gravatar. Thêm avatar vào tài khoản Gravatar sẽ giúp bình luận của bạn dễ nhận diện hơn đối với các thành viên khác.
• ✂️ Sao chép và 📋 Dán Emoji 💪 giúp bình luận thêm sinh động và thú vị!