Bài 25: Cloud/OpenStack cơ bản cho SysAdmin
Bài này chi tiết hóa Cloud/OpenStack theo hướng dễ hiểu, có lệnh thực hành, tình huống production, checklist và bài tập.
- Hiểu Cloud/OpenStack dùng để giải quyết vấn đề gì trong production.
- Nắm các lệnh/cấu hình quan trọng.
- Biết quy trình thực hành từng bước trong lab.
- Có checklist kiểm tra trước khi áp dụng production.
Chốt ý nhanh
| Chủ đề | Điểm cần nhớ |
|---|---|
| Cloud/OpenStack | Là cách tổ chức compute, network và storage thành tài nguyên cấp phát linh hoạt hơn. |
| Góc nhìn SysAdmin | Quan trọng là hiểu VM, image, flavor, network, volume và security group liên hệ với nhau thế nào. |
| Mục tiêu học | Không phải trở thành cloud architect ngay, mà đủ hiểu để vận hành và debug cơ bản. |
1. Bối cảnh thực tế
Cloud/openstack không phải kiến thức lý thuyết riêng lẻ. Trong vận hành production, nó giúp giảm downtime, giảm rủi ro bảo mật và giúp hệ thống dễ khôi phục hơn khi có sự cố.
2. Các khái niệm cần nắm
- Trạng thái hiện tại: trước khi sửa phải biết hệ thống đang chạy thế nào.
- Thay đổi nhỏ: thay đổi từng bước để dễ rollback.
- Log/metric: dùng để xác nhận thay đổi đúng hay sai.
- Rollback: luôn có đường quay lại khi cấu hình lỗi.
3. Lab thực hành
openstack server list openstack server show VM_ID openstack network list openstack security group list openstack volume list openstack floating ip list # trong VM ip addr ip route curl http://169.254.169.254/ 2>/dev/null || true
Khi thực hành, anh nên ghi lại output trước và sau. Đây là thói quen rất quan trọng của SysAdmin/DevOps.
4. Tình huống thực tế
VM không truy cập được từ Internet. Anh cần kiểm tra floating IP, security group, route, firewall trong VM, service listen và console log nếu VM không boot.
5. Quy trình triển khai an toàn
- Xác định mục tiêu thay đổi.
- Backup file cấu hình hoặc tạo snapshot nếu thay đổi rủi ro.
- Kiểm tra trạng thái hiện tại bằng lệnh phù hợp.
- Thay đổi trên lab/staging trước nếu có.
- Áp dụng production trong khung giờ phù hợp.
- Kiểm tra log, service, port, endpoint sau thay đổi.
- Ghi lại thay đổi và phương án rollback.
6. Lỗi thường gặp
- Làm trực tiếp production mà không backup.
- Sửa nhiều thứ cùng lúc nên không biết lỗi do đâu.
- Không đọc log sau khi reload/restart service.
- Không ghi lại command đã chạy.
7. Checklist
- Đã kiểm tra trạng thái hiện tại.
- Đã backup cấu hình/dữ liệu liên quan.
- Đã test syntax/config nếu có.
- Đã xác nhận service hoạt động sau thay đổi.
- Đã ghi lại thay đổi vào tài liệu vận hành.
8. Bài tập
- Dựng lab nhỏ cho chủ đề này.
- Chạy toàn bộ lệnh kiểm tra.
- Tạo một lỗi nhỏ có kiểm soát và sửa lại.
- Viết checklist 5 bước dùng cho production.
Phần thực hành mở rộng: cloud theo cách nhìn của người vận hành hạ tầng
Khi chuyển từ máy vật lý hoặc VM đơn lẻ sang môi trường cloud, điều thay đổi lớn nhất là cách tài nguyên được cấp phát và quản lý. Bài này nên giúp người học ghép các mảnh lại với nhau thay vì học rời từng thuật ngữ.
Lab 1: Vẽ bản đồ tài nguyên tối thiểu của một VM cloud
- image
- flavor
- instance/VM
- network/subnet/router
- security group
- volume
- floating IP nếu có
Chỉ cần vẽ rõ mối liên hệ, anh sẽ bớt thấy cloud là một khối mù.
Lab 2: Đọc thông tin VM và network bằng CLI
openstack server list
openstack server show vm01
openstack network list
openstack subnet list
openstack security group list
Nếu chưa có lab OpenStack thật, anh vẫn nên làm quen cú pháp và ý nghĩa từng lớp tài nguyên.
Lab 3: Kiểm tra security group và kết nối thực tế
Tự đặt câu hỏi với một VM web:
- security group có mở 22/80/443 không?
- service trong VM có listen đúng cổng không?
- VM có đúng IP/floating IP không?
ss -tulpn
curl -I http://127.0.0.1
nc -vz VM_PUBLIC_IP 22
Lab này giúp người học thấy cloud network và OS firewall/service phải khớp với nhau.
Lab 4: Phân biệt image, volume và instance disk
Tự viết lại ngắn:
- image để làm gì
- volume phù hợp khi nào
- boot from volume khác gì boot from local disk
- dữ liệu nào nên nằm trên volume riêng
Đây là phần rất thực tế khi nghĩ tới backup, snapshot và thay thế VM.
Lab 5: Mô phỏng checklist trước khi mở một VM ra Internet
- đổi key hoặc user SSH chuẩn
- cập nhật hệ thống
- siết security group
- gắn monitoring cơ bản
- xác nhận backup/snapshot strategy
Tình huống thực tế
Một VM cloud có thể không truy cập được không phải vì app hỏng, mà vì security group chặn, subnet route sai, floating IP chưa gắn hoặc volume không mount đúng. Nếu không có khung nhìn tổng thể, debug cloud sẽ rất dễ rối.
Lỗi phổ biến
- Mở security group quá rộng cho tiện.
- Nhầm lỗi service trong VM với lỗi network của cloud.
- Không tách dữ liệu quan trọng ra volume phù hợp.
- Dựng VM xong nhưng bỏ qua hardening và monitoring nền.
Kết bài
Kết thúc bài này, anh đã đi trọn phase 3 với một lớp tư duy rõ hơn về production readiness: bảo mật nền, HTTPS, container, deploy, job tự động, log dài hạn, troubleshooting, HA, storage và cloud. Đây là điểm rất tốt để bước sang phase 4, nơi automation và DevOps sẽ bắt đầu tăng tốc mạnh hơn.
