Thuật ngữ cloud-native (gốc đám mây) đề cập đến khái niệm xây dựng và chạy các ứng dụng để tận dụng lợi thế của điện toán phân tán (distributed computing) mà mô hình đám mây (cloud) cung cấp. Các ứng dụng cloud-native được thiết kế và xây dựng để khai thác quy mô, độ đàn hồi, khả năng phục hồi và tính linh hoạt mà đám mây cung cấp.
Theo định nghĩa của CNCF (Cloud Native Computing Foundation), các công nghệ cloud-native cho phép các tổ chức xây dựng và chạy các ứng dụng có thể mở rộng trong các đám mây công cộng (public cloud), đám mây riêng (private cloud) và đám mây lai (hybrid cloud). Các tính năng như bộ chứa (container), lưới dịch vụ (service meshes), kiến trúc vi dịch vụ (microservices), cơ sở hạ tầng bất biến (immutable infrastructure) và giao diện lập trình ứng dụng dạng khai báo (declarative API) minh họa rõ nhất cho cách tiếp cận này.
Các tính năng này hỗ trợ cho các hệ thống liên kết ít ràng buộc (loosely coupled system) trở nên dễ phục hồi, dễ quản lý và theo dõi. Chúng cho phép các kỹ sư thực hiện các thay đổi có tác động cao thường xuyên với nguồn lực tối thiểu.
Theo ông Giang: “Tính phức tạp của các ứng dụng ngày càng tăng nhanh, đi cùng sự đổi mới liên tục đáp ứng kỳ vọng của người dùng và một khả năng đáp ứng (responsiveness) vô cùng mạnh mẽ - đòi hỏi các hệ thống kinh doanh phải có chiến lược hơn và ngày càng linh hoạt hơn. Cloud-native giúp gia tăng tốc độ trong khi vẫn đảm bảo tính nhanh gọn (agile)”.
Các dịch vụ cloud-native cho phép phát triển ứng dụng hiện đại bằng cách sử dụng các công nghệ như Kubernetes, Docker, các chức năng phi máy chủ (serverless) hay các API. Ông Giang cũng cho biết thêm, các nhà cung cấp đám mây hàng đầu trong ngành như VTI Cloud cho phép cung cấp dịch vụ và công cụ đám mây để các nhà phát triển có thể giảm bớt các tác vụ vận hành và xây dựng ứng dụng nhanh hơn. Các dịch vụ cloud-native cung cấp cho các nhà phát triển một nền tảng toàn diện, dựa trên tiêu chuẩn để xây dựng, triển khai và quản lý các ứng dụng gốc đám mây như microservices và các chức năng không máy chủ.
Các ứng dụng cloud-native là các dịch vụ độc lập, được đóng gói dưới dạng bộ chứa (container) gọn nhẹ, độc lập, di động và có thể tùy chỉnh kích thước (mở rộng hoặc thu hẹp) nhanh chóng dựa trên nhu cầu. Bằng cách đóng gói mọi thứ vào một container (chẳng hạn như Docker container), bạn có thể tách ứng dụng và các phần phụ thuộc của nó khỏi cơ sở hạ tầng bên dưới. Điều này cho phép bạn deploy ứng dụng được chứa trong bất kỳ môi trường nào có chương trình chạy ứng dụng (runtime engine) của container. Điều quan trọng về hệ thống điều phối container Kubernetes là chúng quản lý vòng đời của các container. Các ứng dụng cloud-native thường được phân phối thông qua quy trình DevOps bao gồm các công cụ tích hợp liên tục và phân phối liên tục (CI/CD). Các quy trình CI/CD rất quan trọng để tự động hóa việc xây dựng, kiểm thử và triển khai (deploy) các ứng dụng cloud-native.
Giải thích về những lợi ích mà các ứng dụng Cloud Native mang đến cho các startup CNTT, ông Giang nêu rõ: các ứng dụng cloud-native (NCA) là các chương trình được thiết kế cho kiến trúc điện toán đám mây. Chúng có nhiều lợi ích như tính độc lập giúp bạn có thể quản lý và triển khai riêng lẻ; khả năng phục hồi giúp ứng dụng cloud-native có thể tồn tại và online ngay cả khi cơ sở hạ tầng ngừng hoạt động; dựa trên nguồn mở và công nghệ dựa trên tiêu chuẩn giúp giảm tình trạng khóa nhà cung cấp bị khóa và tăng tính di động; tính nhanh gọn cho phép các tùy chọn triển khai linh hoạt trên toàn mạng lưới giúp dễ dàng phát triển, triển khai và lặp lại; sử dụng tính năng tự động hóa của DevOps cho phép phân phối và triển khai liên tục các thay đổi phần mềm được release thường xuyên, có thể dùng blue-green và canary để thực hiện cải tiến cho ứng dụng mà không làm gián đoạn trải nghiệm người dùng; không có thời gian chết nhờ các trình điều phối container như Kubernetes.
Theo CEO của VTI Cloud – một trong những nhà cung cấp Cloud hàng đầu Việt Nam, việc phát triển ứng dụng cloud-native cung cấp các ứng dụng tốt hơn nhiều so với các ứng dụng được phát triển truyền thống không. Các lợi ích đối với các ứng dụng cloud-native là rất rõ ràng: các ứng dụng cloud-native có thể thay đổi quy mô vì các chức năng của chúng được chia thành các microservices và cho phép quản lý từng cá thể. Và vì không cần quan tâm đến hạ tầng cloud, các NCA có thể chạy theo cách phân tán cao, duy trì tính độc lập, phân bổ tài nguyên dựa trên nhu cầu của ứng dụng.
NCA đã trở thành cách thức then chốt để gia tăng chiến lược kinh doanh và giá trị kinh doanh vì chúng có thể cung cấp trải nghiệm nhất quán trên private, public và hybrid clouds. Việc chuyển đổi cho phép doanh nghiệp tận dụng tối đa điện toán đám mây bằng cách chạy các ứng dụng cloud-native có khả năng đáp ứng và đáng tin cậy, có thể mở rộng và giảm thiểu rủi ro.
Thông qua những chia sẻ rất chi tiết của ông Trịnh Minh Giang, có thể thấy rõ ràng những lợi ích mà Cloud Native mang lại nói chung và các ứng dụng Cloud Native nói riêng. Liên quan đến Smart City, CEO VTI Cloud bày tỏ quan điểm: “Đối với các dự án Smart City, hệ thống Cloud là đương nhiên và là điều tất yếu. Các doanh nghiệp startup chỉ cần làm việc với các đơn vị chuyên về Cloud như VTI Cloud để khai thác tối đa các ứng dụng Cloud Native. Việc còn lại của các startup CNTT lúc bấy giờ là chỉ cần tập trung vào sự sáng tạo cho các ứng dụng của mình”.