Bài viết thuộc series Azure
Kiến trúc của Azure được chia làm hai phần chính: Physical Infrastructure và Management Infrastructure. Physical Infrastructure bao gồm Regions và Availability Zones. Management Infrastructure bao gồm Resources, Resources Groups, Subscriptions, …
Giới thiệu
Trong bài này ta tìm hiểu về Physical Infrastructure bao gồm hai thuật ngữ hay gặp nhất là Regions và Availability Zones.
Physical infrastructure
Hạ tầng vật lý của Azure gồm nhiều Datacenters phân bổ khắp nơi trên thế giới. Các Datacenters này được nhóm thành các Regions (vùng) và Availability Zones. Để xem toàn bộ hạ tầng của Azure ta truy cập trang Global infrastructure.
Regions
Azure Region là vùng địa lý chứa trung tâm dữ liệu của Microsoft Azure, được phân bố trên khắp thế giới để cung cấp dịch vụ đến người dùng ở nhiều địa điểm khác nhau. Ví dụ như là Korea Region cho Hàn Quốc, Japan Region cho Nhật Bản, China Region cho Trung Quốc. Khi sử dụng dịch vụ của Azure để triển khai ứng dụng cho khách hàng thì ta nên chọn Region gần khách hàng nhất để độ trễ thấp.
Nếu ứng dụng thuộc dạng Global ta có thể sử dụng nhiều Region cùng lúc, để khách hàng mỗi vùng sẽ truy cập tới ứng dụng nằm ở Region gần họ nhất. Ví dụ ứng dụng có hai khách hàng ở Mĩ và Nhật, nếu chỉ triển khai ứng dụng ở Japan Region thì khách Mĩ gọi tới ứng dụng ở Japan Region sẽ có độ trễ rất lớn. Thay vào đó ta triển khai ứng dụng ở cả hai Region, người dùng sẽ truy cập ứng dụng ở Region gần họ nhất.
Availability Zones
Một Region chia thành nhiều Availability Zones, mỗi AZ bao gồm một hoặc nhiều Datacenter nằm gần nhau. Việc chia một Region thành nhiều AZ khác nhau là để đảm bảo độ khả dụng cao của hạ tầng Azure. Ví dụ một AZ này mất điện hoặc sập thì vẫn còn AZ khác để chạy.
Khi ta triển khai ứng dụng ta cần quan tâm tới độ khả dụng của nó. Ta có cần triển khai trên toàn bộ AZ của một Region hay không? Hay là chỉ triển khai trên một Region? Thường thì ta luôn muốn ứng dụng có độ khả dụng cao (High Availability), nhưng khi triển khai lên toàn bộ AZ thì ta mất nhiều tiền hơn.
Ví dụ 3 con VM chạy ở 3 AZ tốn tiền gấp 3 lần chạy 1 con VM ở 1 AZ. Việc lựa chọn chạy thế nào phụ thuộc vào túi tiền và mức độ rủi ro ta có thể chịu khi một AZ sập.
Các dịch vụ của Azure được phần chia thành:
- Zonal services: các dịch vụ chỉ chạy trên một AZ, ví dụ là VM, nếu còn VM nằm trên một AZ mà AZ đó sập thì con VM đó cũng sập theo, ta phải chờ AZ đó hồi phục lại
- Zone-redundant services: các dịch vụ có thể chạy trên nhiều AZ, ví dụ là SQL Database, một AZ có sập thì nó vẫn chạy, tuy nhiên nguyên một Region sập thì nó cũng sập.
- Non-regional services: các dịch vụ có thể chạy trên toàn bộ Region
Kết luận
Vậy là ta đã tìm hiểu xong về kiến trúc vật lý của hạ tầng Azure. Region và Availability Zones là hai thuật ngữ rất quan trọng ta cần hiểu.
Tham gia nhóm chat của DevOps VN tại Telegram hoặc Slack.
Kém tiếng Anh và cần nâng cao trình độ giao tiếp: Tại sao bạn học không hiệu quả?