Microsoft Azure cung cấp rất nhiều dịch vụ cho người dùng và đôi khi người dùng gặp vấn đề trong việc lựa chọn loại dịch vụ nào phù hợp cho giải pháp của họ.
Một ví dụ, Microsoft Azure có ít nhất 03 dịch vụ cung cấp container cho người dùng:
- Azure Container Instance
- Azure Kubernetes Service
- Azure Web App Service for container
Một dịch vụ khác là Azure Contaier Service ~ đã ngừng cung cấp từ 1/2020.
Để hiểu và lựa chọn loại dịch vụ phù hợp, bạn cần biết một vài điểm sau:
Chi phí
Theo quan điểm của tôi thì đây là vấn đề được ưu tiên nhất khi lựa chon sử dụng container.
- Azure Container Instances cung cấp phương thức nhanh và đơn giản để chạy container trên Azure không cần sử dụng VM. Vì vậy bạn chỉ cần phải trả cho thời gian sử dụng container group

Thông tin chi tiết tham khảo: https://azure.microsoft.com/en-us/pricing/details/container-instances/
- Azure Kubernetes Service (AKS) quản lý môi trường Kubernetes cho phép triển khai và quản lý các ứng dụng container nhanh chóng và tiện dụng không đòi hỏi các kỹ năng chuyên sâu. Bản cần phải thanh toán cho tài nguyên VMs, Storage, Network trong K8s cluster của bạn.
Thông tin chi tiết tham khảo: https://azure.microsoft.com/en-us/pricing/calculator/?service=kubernetes-service
- Web App service for container: cho phép triển khai containerized app trong môi trường production nhanh chóng vài giây. Bản chỉ cần phải trả theo App plan.
Thông tin chi tiết tham khảo: https://azure.microsoft.com/en-us/pricing/details/app-service/windows/
Khả năng Scale:
- ACI cung cấp khái niệm instance group là nhóm các instance được lập lịch chay trên cùng một máy host. Các container trong container group chia sẻ vòng đời, local network và storage volumes. Đặc điểm này tương tự như Kubernetes hay DC/OS. Tìm hiểu thêm tại: https://docs.microsoft.com/en-us/azure/container-instances/container-instances-container-groups
- AKS được scale do cách thiết, đáo ứng nhu cầu scale với tính năng autocaling application sẵn có. https://docs.microsoft.com/en-us/azure/aks/tutorial-kubernetes-scale
- Web Appss service for container cũng là giải pháp có tính mở rộng.
https://docs.microsoft.com/en-us/azure/monitoring-and-diagnostics/monitoring-autoscale-get-started
Công cụ giám sát và chuẩn đoán lỗi
- ACI cung cấp container logs và một vài các diagram cảnh báo, tuy nhiên điều này vẫn chưa đủ. Nếu có vấn đề xuất hiện với máy chủ host, bạn sẽ không thể xác định được vấn đề.
- AKS cung cấp tính năng quản lý hoàn toàn cho VMs mà bạn đang sử dụng và bạn có thể sử dụng điều khiển từ xa hoặc rất nhiều công cu khác như Kudu để kết nối xác định vấn đề đang xảy ra với ứng dụng của bạn.
- Web Apps service for container cung cấp một vài cảnh báo và công cụ Kudu để phân tích giải pháp của bạn. Ngoài ra bạn có thể giám sát App plan service theo nhu cầu của bạn
Tính năng
- ACI cung cấp 01 IP Public và DNS. Nhưng ACI không cung cấp SSL encrytion. Xem roadmap Microsoft tại đây:
https://azure.microsoft.com/en-us/roadmap/?query=container+instances/
- AKS cung cấp Public IP, DNS và SSL Encrytion. Để cấu hình bạn cũng không cần trang bị nhiều kiến thức mà chỉ cần thao tác qua giao diện UI.