Phạm vi: OpenShift Microservice + Oracle RAC 19.30 + Web Application
Mục tiêu: Phát hiện, khoanh vùng, xử lý và phòng ngừa tình trạng chậm/treo/lag
Mục lục:
Contents
Mục lục:
TẦNG 1 — PHÂN TẦNG KIẾN TRÚC & LUỒNG REQUEST
PHẦN A — KIỂM TRA TẦNG WEB / LOAD BALANCER
A1. Kiểm tra Nginx / HAProxy / F5
A2. Kiểm tra SSL/TLS handshake
PHẦN B — KIỂM TRA OPENSHIFT / CONTAINER
B1. Tổng quan cluster
B2. Kiểm tra từng namespace dịch vụ
B3. Kiểm tra Resource Limits & Requests
B4. Kiểm tra HPA (Horizontal Pod Autoscaler)
B5. Kiểm tra Network / Service Mesh
B6. Kiểm tra Storage / PVC
B7. Kiểm tra Events toàn cluster
PHẦN C — KIỂM TRA ORACLE RAC 19.30
C1. Kiểm tra tình trạng RAC cluster
C2. Phát hiện SQL chậm đang chạy
C3. Phát hiện blocking session (session bị khóa)
C4. Kiểm tra Wait Events — tìm bottleneck
C5. Kiểm tra Connection Pool và số session
C6. Kiểm tra I/O và Tablespace
C7. Kiểm tra Memory — SGA/PGA
C8. Kiểm tra AWR / ASH nhanh
C9. Kiểm tra Interconnect RAC
PHẦN D — KIỂM TRA ỨNG DỤNG (Application Layer)
D1. Phân tích slow request từ log ứng dụng
D2. Kiểm tra Connection Pool ứng dụng (HikariCP / UCP / c3p0)
D3. Kiểm tra Heap / GC Java (nếu Java-based)
D4. Kiểm tra API Gateway / Service tracing
PHẦN E — KIỂM TRA HẠ TẦNG OS / HARDWARE
E1.Phần cứng: Server, LB, Switch, SAN Switch, Storage
E2.Ảo hóa VMWare:
E3.OS
PHẦN F — PHÂN LOẠI NGUYÊN NHÂN & GIẢI PHÁP
F1. Bottleneck tại Database (Oracle RAC)
F2. Bottleneck tại OpenShift / Container
F3. Bottleneck tại Application
PHẦN G — BIỆN PHÁP PHÒNG NGỪA DÀI HẠN
G1. Monitoring & Alerting
G2. Database — Cấu hình phòng ngừa
G3. OpenShift — Best practices
G4. Application — Best practices
PHẦN H — QUY TRÌNH XỬ LÝ SỰ CỐ KHẨN CẤP
TẦNG 1 — PHÂN TẦNG KIẾN TRÚC & LUỒNG REQUEST
[Người dùng / Browser]
↓
[Load Balancer / Nginx / HAProxy]
↓
[OpenShift Ingress / Route]
↓
[API Gateway / Service Mesh (Istio/Envoy)]
↓
[Microservices Pods (OpenShift)]
↓
[Oracle RAC 19.30 (qua JDBC/Connection Pool)]
↓
[Storage / SAN / NFS]
Mỗi mũi tên là một điểm có thể gây bottleneck. Checklist đi từ ngoài vào trong.
PHẦN A — KIỂM TRA TẦNG WEB / LOAD BALANCER
A1. Kiểm tra Nginx / HAProxy / F5
# Xem log lỗi nginx realtime
tail -f /var/log/nginx/error.log | grep -E "upstream|timeout|connect"
# Thống kê kết nối active
ss -s
netstat -an | grep ESTABLISHED | wc -l
netstat -an | grep TIME_WAIT | wc -l
# Kiểm tra upstream timeout config
grep -E "proxy_connect_timeout|proxy_read_timeout|proxy_send_timeout" /etc/nginx/nginx.conf
# Xem trạng thái nginx stub_status (nếu bật)
curl http://localhost/nginx_status
# HAProxy stats (nếu dùng)
echo "show info" | socat stdio /var/run/haproxy/admin.sock
echo "show stat" | socat stdio /var/run/haproxy/admin.sock | cut -d',' -f1,2,5,6,18,19
A2. Kiểm tra SSL/TLS handshake
# Đo thời gian handshake
curl -w "dns:%{time_namelookup} connect:%{time_connect} ssl:%{time_appconnect} total:%{time_total}\n" \
-o /dev/null -s https://dichvucong.gov.vn
# Kiểm tra cert còn hạn không
echo | openssl s_client -connect dichvucong.gov.vn:443 2>/dev/null | openssl x509 -noout -dates
PHẦN B — KIỂM TRA OPENSHIFT / CONTAINER
B1. Tổng quan cluster
# Trạng thái nodes
oc get nodes -o wide
oc describe nodes | grep -A5 "Conditions:"
# Nodes bị NotReady hoặc SchedulingDisabled
oc get nodes | grep -v Ready
# Tài nguyên thực tế từng node
oc adm top nodes --sort-by=cpu
oc adm top nodes --sort-by=memory
# Pods đang Pending/CrashLoop/Error
oc get pods -A | grep -Ev "Running|Completed"
# Pods restart nhiều lần (dấu hiệu OOM hoặc liveness fail)
oc get pods -A | awk '$5 > 5'
B2. Kiểm tra từng namespace dịch vụ
# Thay <namespace> bằng namespace thực của hệ thống
NS=<namespace>
# Danh sách pods và trạng thái
oc get pods -n $NS -o wide
# Pod nào đang dùng CPU/RAM nhiều nhất
oc adm top pods -n $NS --sort-by=cpu
oc adm top pods -n $NS --sort-by=memory
# Log của pod bị lag (tail 200 dòng cuối)
oc logs -n $NS <pod-name> --tail=200 | grep -iE "error|timeout|exception|slow|warn"
# Log pod trước khi restart (nếu pod bị crash)
oc logs -n $NS <pod-name> --previous
# Describe pod để xem Events, OOMKilled, resource limits
oc describe pod -n $NS <pod-name>
B3. Kiểm tra Resource Limits & Requests
# Xem resource limit của tất cả deployments
oc get deployment -n $NS -o json | \
jq '.items[] | {name: .metadata.name,
cpu_req: .spec.template.spec.containers[].resources.requests.cpu,
mem_req: .spec.template.spec.containers[].resources.requests.memory,
cpu_lim: .spec.template.spec.containers[].resources.limits.cpu,
mem_lim: .spec.template.spec.containers[].resources.limits.memory}'
# LimitRange của namespace
oc get limitrange -n $NS -o yaml
# ResourceQuota đang dùng bao nhiêu
oc describe resourcequota -n $NS
B4. Kiểm tra HPA (Horizontal Pod Autoscaler)
oc get hpa -n $NS
oc describe hpa -n $NS
# Xem lịch sử scale event
oc get events -n $NS --sort-by='.lastTimestamp' | grep -i "Scaled\|FailedScale"
B5. Kiểm tra Network / Service Mesh
# Istio / Envoy sidecar có bị lag không
oc get pods -n $NS -o json | jq '.items[].spec.containers[].name' | grep istio
# Xem Istio metric (nếu dùng Kiali)
# Truy cập Kiali dashboard: oc get route -n istio-system kiali
# Kiểm tra Service endpoints
oc get endpoints -n $NS
# Test kết nối service-to-service trong cluster
oc exec -n $NS <pod-name> -- curl -v http://<service-name>:<port>/health -w "\nTotal: %{time_total}s\n"
# Xem NetworkPolicy có block traffic không
oc get networkpolicy -n $NS
B6. Kiểm tra Storage / PVC
# PVC nào đang Pending hoặc bound
oc get pvc -n $NS
# Storage class và provisioner
oc get storageclass
# Kiểm tra I/O trong container
oc exec -n $NS <pod-name> -- iostat -x 2 5
oc exec -n $NS <pod-name> -- df -h
B7. Kiểm tra Events toàn cluster
# Events warning trong 1 giờ qua
oc get events -A --sort-by='.lastTimestamp' | grep Warning | tail -50
# Events liên quan OOM
oc get events -A | grep -i "OOMKilled\|OutOfMemory\|Evicted"
# Events liên quan node pressure
oc get events -A | grep -i "DiskPressure\|MemoryPressure\|PIDPressure"
PHẦN C — KIỂM TRA ORACLE RAC 19.30
C1. Kiểm tra tình trạng RAC cluster
TƯ VẤN: Click Here hoặc Hotline/Zalo 090.29.12.888
=============================
Website không chứa bất kỳ quảng cáo nào, mọi đóng góp để duy trì phát triển cho website (donation) xin vui lòng gửi về STK 90.2142.8888 - Ngân hàng Vietcombank Thăng Long - TRAN VAN BINH
=============================
Nếu bạn không muốn bị AI thay thế và tiết kiệm 3-5 NĂM trên con đường trở thành DBA chuyên nghiệp hay làm chủ Database thì hãy đăng ký ngay KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE, được Coaching trực tiếp từ tôi với toàn bộ bí kíp thực chiến, thủ tục, quy trình của gần 20 năm kinh nghiệm (mà bạn sẽ KHÔNG THỂ tìm kiếm trên Internet/Google) từ đó giúp bạn dễ dàng quản trị mọi hệ thống Core tại Việt Nam và trên thế giới, đỗ OCP.
- CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
- Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
2 khóa học online qua video giúp bạn nhanh chóng có những kiến thức nền tảng về Linux, Oracle, học mọi nơi, chỉ cần có Internet/4G:
- Oracle cơ bản: https://bit.ly/admin_1200
- Linux: https://bit.ly/linux_1200
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội
=============================
cơ sở dữ liệu, cơ sở dữ liệu quốc gia, database, AI, trí tuệ nhân tạo, artificial intelligence, machine learning, deep learning, LLM, ChatGPT, DeepSeek, Grok, oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c/21c/23c/23ai, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, docker, k8s, micro service, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty