Thứ Sáu, 10 tháng 4, 2026

[VIP5] CHECKLIST CHẨN ĐOÁN HIỆU NĂNG HỆ THỐNG CRM

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

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master