Thứ Sáu, 30 tháng 6, 2023

High Availability là gì? Cách thức hoạt động của HA

 Nội dung bài viết
  • High Availability là gì?
  • High Availability hoạt động như thế nào?
  • Vì sao High Availability lại quan trọng?
  • High Availability được đo lường như thế nào?
  • Làm thế nào để đạt được High Availability?
  • Thực tiễn tốt nhất về High Availability
  • High Availability và Cloud
  • Tổng kết về High Availability

Sự có mặt của High Availability đã giúp doanh nghiệp khai thác tối đa sức mạnh của hệ thống máy tính nhằm mang lại hiệu quả trong kinh doanh. Trong bài viết dưới đây sẽ cung cấp một số thông tin về High Availability để bạn hiểu và sử dụng khi cần.

High Availability là gì?

High Availability la gi

High Availability (HA) còn được gọi là “tính sẵn sàng cao” với khả năng để thiết bị, Server hoạt động liên tục, không bị lỗi hay gián đoạn trong một khoảng thời gian nhất định. Hiểu một cách đơn giản thì HA hoạt động nhằm đảm bảo một hệ thống đáp ứng tốt yêu cầu như đã thỏa thuận và luôn trong tư thế sẵn sàng 99,999%.

Người ta áp dụng hệ thống HA ở nhiều lĩnh vực khác nhau như quân sự, chăm sóc sức khỏe, ngành công nghiệp…Và cuộc sống con người ngày càng phụ thuộc vào các hệ thống đó. Đơn cử như khi xe tự lái đang hoạt động nhưng hệ thống vận hành không hoạt động sẽ làm ảnh hưởng và có thể gây ra tai nạn không đáng có.

Hệ thống HA được thiết kế bài bản, đúng quy trình và phải được kiểm tra kỹ lưỡng trước khi đưa vào sử dụng. Để luôn đáp ứng tính khả dụng nhà thiết kế cần quan tâm tới khả năng sao lưu dữ liệu và chuyển đổi dự phòng của hệ thống HA.

High Availability hoạt động như thế nào?

Thực tế cho thấy không phải bất cứ hệ thống nào cũng luôn ở trong tư thế sẵn sàng 100%. Do đó với những hệ thống có tính sẵn sàng cao thường hoạt động với hiệu suất tối đa để đảm bảo tính liên tục, bền bỉ cho hệ thống. Khi thiết kế HA phải tuân thủ ba nguyên tắc sau để đảm bảo tính sẵn sàng cao:

  • Điểm lỗi duy nhất (SPOF): Toàn bộ hệ thống có thể bị lỗi mà nguyên nhân là do lỗi từ một điểm duy nhất. Chẳng hạn như một Server chạy một ứng dụng thì Server này chính là điểm lỗi duy nhất tác động tới tính khả dụng của ứng dụng khi nó bị lỗi.
  • Xây dựng dự phòng: Với hệ thống HA xây dựng dự phòng rất quan trọng để thay thế khi một thành phần nào đo bị lỗi. Hành động này sẽ đảm bảo chuyển từ X sang Y nhưng vẫn đảm bảo hiệu suất và dữ liệu luôn được an toàn.
  • Khả năng phát hiện lỗi: Thiết kế hệ thống HA phải phát hiện lỗi nhanh và tốt hơn nữa là có thêm tính năng tự động hóa xử lý lỗi.

Khi nhiều người cùng truy cập vào một hệ thống trong một thời điểm thì việc cân bằng tải rất quan trọng để đảm bảo tính sẵn sàng cao. Khối lượng công việc sẽ được cân bằng tải sắp xếp và phân bổ để không một tài nguyên nào bị quá tải.

Để đáp ứng yêu cầu từ bộ cân bằng tải các Server trong hệ thống HA được phân bổ trong các cụm và tổ chức theo kiến trúc tầng. Trường hợp một Server thuộc một cụm nào đó bị lỗi thì sẽ có Server ở cụm khác thay thế và tiếp quản công việc. Trong một hệ thống phức tạp thì tính sẵn sàng cao khó đảm bảo bởi sẽ xuất hiện nhiều điểm lỗi so với hệ thống đơn giản.

Vì sao High Availability lại quan trọng?

Hệ thống High Availability thường là những hệ thống ảnh hưởng, tác động sâu rộng tới đời sống con người về mặt sức khỏe, kinh tế phúc lợi xã hội, tiếp tế thực phẩm…Nếu vì một nguyên nhân nào đó khiến các hệ thống nói trên giảm hiệu suất hoạt động thì doanh nghiệp và cuộc sống mọi người sẽ gặp nhiều bất lợi.

Xe tự lái là minh chứng điển hình cho hệ thống HA. Trong quá trình xe vận hành nếu cảm biến phía trước trục trặc thì xe vẫn hoạt động nhưng chắc chắn hiệu suất sẽ giảm và một vụ va chạm có thể xảy ra.

Hồ sơ sức khỏe điện tử (EHRs) là một trong những ví dụ thể hiện rõ sự phụ thuộc của con người vào hệ thống HA. Một bệnh nhân nhập viện trong tình trạng nguy kịch, điều đầu tiên bác sĩ cần làm là truy cập EHRs để có cái nhìn tổng thể về bệnh sử bệnh nhân để lên phương án điều trị.

High Availability được đo lường như thế nào?

Tính sẵn sàng của một hệ thống được đo tương ứng khi hệ thống thống đó không bao giờ bị lỗi và hoạt động 100%. Tỉ lệ % sẵn sàng được tính bằng công thức: Tính sẵn sàng = (số phút trong một tháng – số phút ngừng hoạt động) *100/phút trong một tháng. Dưới đây là các loại số liệu được dùng để đo tính sẵn sàng:

  • Thời gian trung bình giữa các lần hỏng hóc (MTBF): Tức là trong một hệ thống khoảng thời gian giữa hai lần xảy ra sự cố là bao lâu.
  • Thời gian chết trung bình (MDT): Tức là thời gian trung bình trong tình huống hệ thống ngừng chạy.
  • Mục tiêu thời gian phục hồi (RTO): Đây là khoảng thời gian dự kiến được dành để phục hồi sự cố.

Các hệ thống nội bộ hoặc nhà cung cấp dịch vụ sẽ sử dụng những số liệu nói trên để thực hiện cam kết với khách hàng như trong thỏa thuận mức độ dịch vụ (SLA). SLA là các hợp đồng trong đó nhà cung cấp dịch vụ đưa ra tỉ lệ phần trăm sẵn sàng của hệ thống cho khách hàng tham khảo. Trường hợp một hệ thống hoặc SLA cung cấp 99,999% tính sẵn sàng thì khoảng thời gian mà dịch vụ không khả dụng có thể như sau:

Khoảng thời gianHệ thống thời gian không khả dụng
Hằng ngày0,9 giây
Hàng tuần6,0 giây
Hàng tháng26,3 giây
Hàng năm5 phút 15,6 giây

Một công ty có khoảng 8h45 phút ngừng hoạt động trong một năm nếu tính sẵn sàng 99,9%. Trong khi đó nếu tuân theo tiêu chuẩn hai chín tức là 99% thì mỗi năm sẽ có 3 ngày không hoạt động.

Làm thế nào để đạt được High Availability?

Tính sẵn sàng cao sẽ đạt được nếu thực hiện đúng, đủ các bước sau:

  1. Thiết kế hệ thống HA đơn giản, chi phí thấp và tuân thủ đầy đủ các quy ước. Cần hạn chế điểm lỗi và tốt nhất là có chính sách dự phòng khi cần thiết.
  2. Xác định mức độ của tính sẵn sàng mà hệ thống có thể đáp ứng và chỉ số để đo lường mức độ đó.
  3. Triển khai phần cứng linh hoạt, hiệu quả, chất lượng.
  4. Đảm bảo hệ thống chuyển đổi dự phòng luôn trong tư thế sẵn sàng để khi xảy ra lỗi có thể thay thế, tiếp quản.
  5. Sử dụng số liệu và quan sát để theo dõi hiệu suất của hệ thống. Có bất cứ vấn đề gì bất thường cần ghi chép lại để điều chỉnh phù hợp.
  6. Tìm cách cải thiện hệ thống dựa trên những số liệu đã quan sát, thu thập được để đảm bảo hệ thống luôn phát triển và đáp ứng tốt trong mọi điều kiện.

Thực tiễn tốt nhất về High Availability

Khi gặp bất kỳ loại trạng thái lỗi nào một hệ thống có tính sẵn sàng cao sẽ nhanh chóng phục hồi để không làm gián đoạn cho người dùng cuối. Thực tiễn tốt nhất cho tính sẵn sàng cao bao gồm các yếu tố sau:

  • Các điểm lỗi đơn lẻ sẽ bị loại bỏ để không làm ảnh hưởng đến toàn bộ hệ thống.
  • Đảm bảo dữ liệu an toàn và được sao lưu.
  • Phân phối khối lượng công việc cho các Server bằng bộ cân bằng tải.
  • Tích hợp sẵn hệ thống phát hiện lỗi kịp thời, nhanh chóng.
  • Thường xuyên theo dõi, nắm bắt tình hình sức khỏe của các Server cơ sở dữ liệu phụ trợ.
  • Khi mất điện hoặc thiên tai thì tài nguyên sẽ được phân phối ở các vùng địa lý khác nhau.
  • Chuyển đổi dự phòng dễ dàng, đáng tin cậy.
  • Các bộ phận của hệ thống được thiết kế chỉn chu và được kiểm tra chức năng trước khi áp dụng.

High Availability và Cloud

Tính sẵn sàng cao ở mỗi hệ thống có sự khác nhau. Với môi trường Cloud có nhiều điểm khác biệt. Thông thường những nhà cung cấp dịch vụ Cloud cam kết tính sẵn sàng đạt 99,99%. Thế nhưng trong những năm gần đây con số này đã thay đổi lên tới 99,99%.

Tổng kết về High Availability

Trên đây là những chia sẻ của chúng tôi về High Availability. Hy vọng thông qua những kiến thức có được bạn sẽ nhận thức rõ hơn về phương pháp làm tăng hiệu suất thiết bị, Server và biết áp dụng để mang lại lợi ích cho bản thân và tổ chức.

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* 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
=============================
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

=============================
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, 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, sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, 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