high availability là gì

High Availability Là Gì? Cách Đạt Được High Availability

High Availability là gì? Trong thế giới công nghệ thông tin ngày càng phát triển, sự kết nối liên tục và hoạt động không gián đoạn của hệ thống mạng máy tính trở thành yếu tố cốt lõi để nâng cao năng lực cạnh tranh và hiệu quả kinh doanh của các doanh nghiệp. Vì thế, thuật ngữ High Availability đã xuất hiện. Để hiểu hơn về thuật ngữ High Availability, hãy xem bài viết dưới đây nhé!

High Availability là gì?

định nghĩa High Availability là gì

High Availability (HA) là một thuật ngữ trong lĩnh vực công nghệ thông tin, chỉ khả năng của một hệ thống, ứng dụng hoặc dịch vụ duy trì hoạt động liên tục và không bị gián đoạn trong môi trường sản xuất. Mục tiêu của High Availability là đảm bảo rằng hệ thống luôn sẵn sàng và có thể hoạt động ổn định mà không bị gián đoạn do sự cố phần cứng, phần mềm hoặc môi trường.

Để đạt được High Availability, các hệ thống thường được thiết kế với các phương pháp và công nghệ như sao lưu dự phòng, cân bằng tải, tự phục hồi, khôi phục dự phòng, và kiểm soát lỗi tự động. Khi có sự cố xảy ra trên một phần của hệ thống, hệ thống HA sẽ tự động chuyển giao sang các tài nguyên dự phòng hoặc kích hoạt các biện pháp khắc phục để đảm bảo rằng dịch vụ vẫn được duy trì mà không gây ảnh hưởng đến người dùng cuối.

High Availability thường được ứng dụng trong các lĩnh vực quan trọng như các trung tâm dữ liệu, hệ thống mạng, ứng dụng web, hệ thống giao dịch tài chính, và các ứng dụng kinh doanh quan trọng khác, nơi sự gián đoạn hoạt động có thể gây thiệt hại lớn về mặt tài chính, hình ảnh hoặc hiệu suất.

Cách thức hoạt động của High Availability

Tìm hiểu High Availability là gì ta thấy thực tế là không phải mọi hệ thống luôn sẵn sàng hoạt động 100%. Do đó, các hệ thống có tính sẵn sàng cao thường là các hệ thống hoạt động với hiệu suất tối đa để đảm bảo tính liên tục và độ bền của hệ thống. Để đảm bảo tính sẵn sàng cao, khi thiết kế HA phải tuân theo 3 nguyên tắc sau:

  • Điểm lỗi duy nhất (SPOF): Toàn bộ hệ thống bị lỗi nhưng nguyên nhân phải từ một điểm lỗi duy nhất. Ví dụ: một máy chủ đang chạy một ứng dụng thì máy chủ sẽ là điểm lỗi duy nhất ảnh hưởng đến tính khả dụng của ứng dụng khi nó bị lỗi.
  • Xây dựng dự phòng: Khi sử dụng hệ thống High Availability, điều quan trọng là phải có dự phòng trong trường hợp một thành phần bị lỗi. Hành động này sẽ đảm bảo quá trình chuyển đổi từ X sang Y trong khi vẫn duy trì hiệu suất và bảo mật dữ liệu.
  • Khả năng phát hiện lỗi: Thiết kế của hệ thống High Availability nhất định phải phát hiện lỗi nhanh chóng và tốt nhất là có thể tự động hóa việc xử lý lỗi.

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

Biết High Availability là gì hãy chú ý để đáp ứng các yêu cầu của bộ cân bằng tải, các máy chủ (server) trong hệ thống HA được phân phối theo cụm và được tổ chức theo kiến trúc theo tầng. Nếu một máy chủ trong một cụm bị lỗi, một máy chủ khác trong cụm khác sẽ thay thế và tiếp quản công việc. Tính sẵn sàng cao khó đảm bảo trong một hệ thống phức tạp vì có nhiều điểm sai sót so với một hệ thống đơn giản.

High Availability có quan trọng không?

High Availability có quan trọng không?

Các hệ thống có tính sẵn sàng cao thường là các hệ thống có tác động đáng kể đến cuộc sống của con người về mặt sức khỏe, phúc lợi kinh tế, phúc lợi xã hội, cung cấp thực phẩm,… Nếu các hệ thống nói trên giảm hiệu quả hoạt động, doanh nghiệp và cuộc sống của người dân sẽ bị ảnh hưởng rất lớn.

Xe tự hành là một ví dụ điển hình của hệ thống High Availability. Nếu cảm biến phía trước bị lỗi trong quá trình vận hành xe, xe sẽ tiếp tục hoạt động, nhưng hiệu suất chắc chắn sẽ bị ảnh hưởng và có thể xảy ra va chạm.

Các giải pháp High Availability là gì?

Có 5 giải pháp High Availability sẽ được cấu hình cho cơ sở dữ liệu trong MS SQL Server. Chúng bao gồm: Replication, Log Shipping, Clustering, Mirroring, AlwaysON Availability Groups.

Replication

Dữ liệu gốc sẽ được sao chép đến đích bằng cách sử dụng các tác vụ sao chép (agent/job) trong giải pháp này. Nó sử dụng công nghệ ở cấp độ đối tượng.

Các thuật ngữ ở trong Replication:

  • Distributor: Đây là một mục tùy chọn. Nó chưa cho phép lưu trữ dữ liệu đã sao chép đối với Subscriber.
  • Publisher: Nó đề cập đến máy chủ nguồn.
  • Subscriber: Nó đề cập đến máy chủ đích.

Log Shipping

Dữ liệu gốc sẽ được sao chép đến điểm đích và sử dụng công nghệ ở mức độ cơ sở dữ liệu thông qua những tác vụ sao lưu Transaction Log.

Các thuật ngữ liên quan:

  • Secondary Server: Máy chủ đích.
  • Primary Server: Máy chủ nguồn.
  • Máy chủ tiến hành giám sát cũng như được giám sát bởi trạng thái Log Shipping. Bạn sẽ có tùy chọn sử dụng loại máy chủ này hay không.

Clustering

Clustering

Tìm hiểu High Availability là gì, ta nhận ra phương pháp thiết lập High Availability này sử dụng dữ liệu được lưu trữ ở các vị trí chung, chẳng hạn như máy chủ sơ cấp và máy chủ thứ cấp. Giải pháp này sử dụng công nghệ ở mức bản cài đặt (instance) và yêu cầu cấu hình Windows Clustering trong các vùng lưu trữ dùng chung.

Các thuật ngữ liên quan:

  • Passive Node: Vị trí SQL Services không chạy.
  • Active Node: Vị trí SQL Services chạy.

Mirroring

Cấu hình High Availability cho cơ sở dữ liệu trong MS SQL Server bằng cách sao chép dữ liệu sơ cấp sang dữ liệu thứ cấp thông qua các giao dịch mạng, nhờ sử dụng các điểm kết nối hình chiếu với số cổng. Sử dụng các công nghệ cấp cơ sở dữ liệu.

Các thuật ngữ liên quan:

  • Mirror Server: máy chủ đích.
  • Principal Server: Máy chủ nguồn.
  • Witness Server: một giải pháp cho khả năng chịu lỗi tự động. Máy chủ này là tùy chọn, tùy thuộc vào yêu cầu của người tiêu dùng.

Always On Availability Groups

Giao dịch mạng sẽ chuyển dữ liệu sơ cấp sang dữ liệu thứ cấp. Sử dụng công nghệ ở cấp nhóm CSDL. Do đó, Windows Clustering sẽ không cần thiết lập vị trí lưu trữ dùng chung.

Cách cấu hình High Availability cho Mirroring và Log Shipping

Bước 1: Nhận bản sao đầy đủ của cơ sở dữ liệu gốc cũng như bản sao T-log.

Bước 2: Chuyển tập tin sao lưu đến máy chủ đích.

Always On Availability Groups

Bước 3: Khôi phục cơ sở dữ liệu bằng tệp sao lưu trên máy chủ đích với việc chọn tùy chọn norecovery.

Bước 4: Cấu hình cho High Availability (Mirroring/Log Shipping).

Cách đo lường High Availability là gì?

Khi một hệ thống không bao giờ bị lỗi và hoạt động 100%, tính sẵn sàng của nó sẽ được đo lường tương ứng. Công thức tính % sẵn sàng là: Tính sẵn sàng = (số phút trong một tháng – số phút ngừng hoạt động) *100/số phút trong một tháng. Các số liệu sau đây được sử dụng để đánh giá tính khả dụng:

  • Thời gian trung bình giữa các lần hư hỏng (MTBF): Khoảng thời gian giữa hai lần hỏng hóc trong một hệ thống.
  • Thời gian chết trung bình (MDT): Lượng thời gian trung bình mà hệ thống không chạy.
  • Mục tiêu thời gian khôi phục (RTO): Đây là khoảng thời gian dự kiến dành cho việc khắc phục thảm họa.

Các số liệu này sẽ được sử dụng bởi các hệ thống nội bộ hoặc nhà cung cấp dịch vụ để đáp ứng các cam kết của khách hàng, chẳng hạn như 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ụ cung cấp cho khách hàng một tỷ lệ phần trăm khả dụng của hệ thống để tham khảo. 

>> Xem thêm: SLA là gì?

Biết High Availability là gì hãy nhớ khi một hệ thống hoặc thỏa thuận cấp độ dịch vụ (SLA) đảm bảo tính khả dụng 99,999%, khoảng thời gian mà dịch vụ không khả dụng có thể như sau:

Khoảng thời gian Hệ thống thời gian không khả dụng (giây)
Hằng ngày 0,9 giây
Hàng tuần 6,0 giây
Hàng tháng 26,3 giây
Hàng năm 5 phút 15,6 giây

Với mức độ khả dụng 99,9%, một công ty có khoảng 8 giờ 45 phút ngừng hoạt động mỗi năm. Trong khi đó, nếu bạn tuân theo tiêu chuẩn hai chín là 99%, sẽ có 3 ngày không hoạt động mỗi năm.

Cách đạt được High Availability là gì?

Cách đạt được High Availability

Một hệ thống có tính sẵn sàng cao sẽ nhanh chóng phục hồi sau bất kỳ trạng thái lỗi nào để người dùng cuối không bị gián đoạn.

  • Các điểm lỗi đơn lẻ sẽ được loại bỏ để toàn bộ hệ thống không bị ảnh hưởng.
  • Đảm bảo rằng dữ liệu của bạn được bảo mật và sao lưu.
  • Sử dụng bộ cân bằng tải, phân phối khối lượng công việc cho các máy chủ.
  • Hệ thống phát hiện lỗi tích hợp phát hiện lỗi nhanh chóng và chính xác.
  • Theo dõi và ghi lại tình trạng của các máy chủ cơ sở dữ liệu phụ trợ một cách thường xuyên.
  • Khi mất điện hoặc thiên tai, tài nguyên được phân phối theo địa lý.
  • Chuyển đổi dự phòng đơn giản và đáng tin cậy.
  • Trước khi triển khai, các thành phần hệ thống được thiết kế tốt và kiểm tra chức năng.

Lời kết

Vậy là chúng ta đã cùng tìm hiểu High Availability là gì, cách thức hoạt động, tầm quan trọng và cách đo lường của nó. Có thể thấy, thông qua việc đảm bảo sự ổn định và liên tục hoạt động, High Availability giúp tăng cường hiệu suất và đáng tin cậy của hệ thống. Nó cũng giảm thiểu rủi ro mất dữ liệu, thời gian chết của hệ thống và tác động tiêu cực đến khách hàng và doanh nghiệp.

Nếu quan tâm đến những chủ đề tương tự, các bạn có thể truy cập Website hoặc Fanpage của Máy Chủ Sài Gòn để xem thêm.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

ZaloHotlineFacebook Messenger