TỔ CHỨC VÀ QUẢN LÝ KUBERNETES TRÊN PUBLIC CLOUD VÀ ON-PREMISE

Được thúc đẩy bởi các định luật vật lý, kinh tế và đất đai, tương lai của điện toán doanh nghiệp sẽ hướng tới kỷ nguyên nhiều nhà cung cấp cloud, được dự đoán bởi Giám đốc điều hành VMware Pat Gelsinger

Khi các doanh nghiệp tăng cường áp dụng cloud, chúng tôi đang thấy họ sử dụng nhiều nhà cung cấp đám mây dẫn đến triển khai trên một và nhiều nền tảng cloud. Theo nghiên cứu của 451 Research, một phần ba trong số các tổ chức sử dụng bốn nhà cung cấp đám mây trở lên. Các khảo sát khác của các tổ chức nghiên cứu và nhà cung cấp cũng làm nổi bật xu hướng mà hướng tới một tương lai nhiều nền tảng cloud. Xu hướng lai và đa đám mây được thúc đẩy bởi các nhu cầu khác nhau của các doanh nghiệp bao gồm

  • Cho phép các ứng dụng tại chỗ hoạt động với các ứng dụng dựa trên cloud
  • Trao quyền cho các nhà phát triển của họ sử dụng dịch vụ / nền tảng đám mây phù hợp cho nhu cầu ứng dụng của họ mà không bị ràng buộc bởi các nhà cung cấp đám mây
  • Đáp ứng nhu cầu địa lý để đảm bảo hiệu suất
  • Tuân thủ các quy định bảo mật dữ liệu

Multi-cloud ngày càng được các nhà lãnh đạo CNTT xem là nền tảng cơ bản cho sự đổi mới nhanh chóng, thường xuyên, nhất là trong bối cảnh của một môi trường hybrid. Tuy nhiên, cả hybrid-cloud và multi-cloud đều đưa ra những thách thức cho các tổ chức. Trong bài này, chúng tôi sẽ thảo luận ngắn gọn về những thách thức này và nêu bật cách Kubernetes giúp họ giảm thiểu những thách thức này.

 

Tính toán

Hybrid-cloud và multi-cloud đặt ra các vấn đề quản lý tài nguyên và hiệu quả độc đáo. Sẽ có sự không đồng nhất trong các máy chủ vật lý cơ bản cũng như kích thước máy ảo. Kế hoạch hóa capacity luôn là một vấn đề khó khăn với những môi trường không đồng nhất như vậy. Người dùng doanh nghiệp phải đối mặt với sự nhầm lẫn trong quá trình cung cấp vì rất hiếm khi các nhà cung cấp đám mây cho phép tùy chỉnh. Bây giờ nếu bạn sử dụng các mô hình định giá khác nhau như Reserved and Spot instances để sizing, thì điều đó sẽ làm phức tạp việc cung cấp tài nguyên, dẫn đến việc sử dụng và phân bổ tài nguyên dưới mức tối ưu.

 

Scaling là một vấn đề khác với Hybrid-cloud và multi-cloud. Trong khi môi trường tại chỗ có giới hạn trong việc mở rộng quy mô cơ sở hạ tầng, các nhà cung cấp đám mây khác nhau có cách mở rộng cơ sở hạ tầng riêng. Quản lý ứng dụng để mở rộng quy mô trong các môi trường không đồng nhất như vậy không phải là nhiệm vụ dễ dàng, đặc biệt khi cả chi phí và hiệu suất đều quan trọng như nhau.

 

Quản lý cơ sở hạ tầng bên dưới

Với các containers và Kubernetes, người dùng có thể chọn kích thước Pod phù hợp với nhu cầu của ứng dụng mà không phải lo lắng về sự mơ hồ của kích thước máy ảo bên dưới. Có nhiều tùy chọn để xây dựng cơ sở hạ tầng cơ bản cho Kubernetes. Mặc dù hầu hết người dùng dựa vào các on-demand instances (trong đó chi phí rất cao) hoặc các reserved instances (nơi chi phí thấp nhưng kế hoạch năng lực trở nên quan trọng), có một cách tiếp cận tốt hơn để đảm bảo hiệu quả tài nguyên với mức tiết kiệm chi phí lên tới 80%. Nếu các Spot instances được sử dụng hiệu quả, những khoản tiết kiệm chi phí này có thể được nhận ra. Tuy nhiên, Spot instances tồn tại trong thời gian ngắn và có thể được nhà cung cấp đám mây thu hồi lại bất cứ lúc nào.

 

Tuy nhiên, với các phân tích và tự động hóa phù hợp, người dùng có thể tận dụng các Spot, Reserved và On-Request instances để tiết kiệm chi phí, tuy nhiên, chúng tôi sẽ đề cập đến điều đó trong một blog khác / tiếp theo của chúng tôi. Kubernetes trừu tượng hóa sự phức tạp liên quan đến việc quản lý cơ sở hạ tầng ảo hóa và, với các plugin, thật dễ dàng sử dụng các trường hợp chuyên biệt như GPU.

 

Với lớp quản lý cơ sở hạ tầng phù hợp bên dưới, Kubernetes có thể được sử dụng để làm cho quy mô của các ứng dụng trở nên liền mạch. Kubernetes sử dụng mô hình khai báo cho phép các nhà phát triển mô tả trạng thái mong muốn của họ trong tệp YAML và Kubernetes xử lý tỷ lệ liền mạch mà không cần bất kỳ sự can thiệp nào của con người.

Kubernetes cung cấp một cái nhìn tập trung vào ứng dụng hơn về cơ sở hạ tầng tính toán, dẫn đến việc sử dụng tài nguyên hiệu quả hơn.

kubernetes on awsMạng

Với môi trường Hybrid-cloud, các doanh nghiệp phải đối mặt với sự phức tạp về hoạt động của việc quản lý mạng on-premise (mà bản thân nó là một nhiệm vụ phức tạp) với on-cloud. Mỗi nhà cung cấp đám mây có chính sách bảo mật và kết nối mạng riêng, điều này khiến cho việc chạy các ứng dụng trên các môi trường không đồng nhất Hybrid-cloud và multi-cloud rất khó khăn. Multi-tenancy là một vấn đề lớn khác có thêm chi phí hoạt động bổ sung trong môi trường Hybrid-cloud và multi-cloud. Bảo mật mạng trở nên quá phức tạp để xử lý khi phạm vi mạng vượt qua nhiều nhà cung cấp đám mây và môi trường tại chỗ.

 

Kubernetes trừu tượng hóa hầu hết các phức tạp này và thêm một lớp lập trình vào mạng. Bằng cách sử dụng Giao diện mạng chung (CNI), một API trừu tượng hóa tất cả các phức tạp liên quan đến việc quản lý các công cụ mạng khác nhau, các ứng dụng không cần phải lo lắng về sự phức tạp của mạng. Multi-tenancy được tích hợp vào Kubernetes, giúp dễ dàng cách ly các ứng dụng và khối lượng công việc khác nhau. Kubernetes cung cấp các điều khiển cần thiết để xử lý các chính sách bảo mật mạng. Với Kubernetes, các nhà phát triển có thể triển khai các ứng dụng mà không phải lo lắng về hệ thống bên dưới và CNI sẽ giúp bạn không cần phải tìm hiểu về các công nghệ mạng cụ thể.

 

Kubernetes cung cấp hỗ trợ cho Chính sách mạng cho phép người dùng chỉ định cách một nhóm pods giao tiếp với nhau trong và bên ngoài cluster. Điều này cung cấp phân khúc cấp 3 của mạng. Không giống như cách tiếp cận Docker của việc sử dụng chuyển tiếp cổng từ máy chủ đến container, Kubernetes sử dụng một cách tiếp cận khác áp đặt các yêu cầu để thực hiện mạng. Chính sách mạng Kubernetes kiểm soát giao tiếp giữa các Pods. Kubernetes cũng cung cấp CNI như một cách để các cụm tích hợp với cơ sở hạ tầng mạng cơ bản bao gồm Overlay Networks. Hầu hết các nhà cung cấp mạng và nhà cung cấp đám mây đều cung cấp CNI, giúp dễ dàng tận dụng các điều khiển chi tiết như security group của AWS. Các nhà cung cấp đám mây như AWS và Azure cho phép các security group cùng với Network Policy phân tích mạng. Do đó, Kubernetes cung cấp tính linh hoạt, để hoàn thiện mạng, để hoạt động trên bất kỳ môi trường đám mây hoặc on-premise nào.

 

Kubernetes cũng hỗ trợ các công nghệ Servicemesh khác nhau như Istio, Linkerd, v.v. để mở rộng bảo mật mạng cho microservice chạy trên nền tảng. Cùng với các tính năng như service discovery, traffic management, policy enforcement, v.v., Servicemesh cho phép một cách để xác minh danh tính của microservice và xác thực chúng để liên lạc giữa các dịch vụ. Điều này cho phép người dùng sử dụng Kubernetes trên các môi trường multi-cloud và hybrid-cloud mà không phải lo lắng nhiều về việc chạy microservice trên các mạng với mức độ tin cậy khác nhau.

Kubernetes cũng xử lý mã hóa liền mạch bằng cách yêu cầu tất cả các giao tiếp với API Kubernetes được mã hóa, do đó, giảm chi phí hoạt động để quản lý bảo mật bổ sung cần thiết để chạy các cluster trên multi-cloud và hybrid-cloud.

 

Lưu trữ

Lưu trữ là một thách thức quan trọng khác trong môi trường multi-cloud và hybrid-cloud. Mỗi nhà cung cấp đám mây đều có các dịch vụ lưu trữ riêng có sẵn với một bộ API đa dạng. Hầu hết các khối lượng công việc on-premise có các giải pháp lưu trữ mà các tổ chức muốn sử dụng. Chạy các ứng dụng của bạn trong một môi trường không đồng nhất như vậy là rất khó và ngay cả với các giải pháp lưu trữ được xác định bằng phần mềm, không dễ để quản lý. Kubernetes loại bỏ các ứng dụng đang chạy trong các môi trường không đồng nhất như vậy bằng cách cung cấp một bản tóm tắt có tên là Persistent Volumes giữ dữ liệu được duy trì bởi các ứng dụng trạng thái. API này cho phép các ứng dụng cung cấp và sử dụng nhiều loại lưu trữ được sử dụng trong môi trường multi-cloud và hybrid-cloud mà không cần bất kỳ chi phí hoạt động bổ sung nào.

 

Như Pat Gelsinger, CEO của VMware đã chỉ ra, các định luật Vật lý sẽ yêu cầu khối lượng công việc được phân phối trên các nhà cung cấp đám mây và on-premise để cung cấp trải nghiệm người dùng, đáp ứng nhu cầu của doanh nghiệp hiện đại. Kubernetes cung cấp sự trừu tượng mà có thể giúp các tổ chức chạy khối lượng công việc dựa trên dữ liệu, để cung cấp trải nghiệm người dùng vượt trội. Thực tế này cũng được nhấn mạnh bởi hướng đi của NetApp Kubernetes Service (NKS), cung cấp quản lý lưu trữ liền mạch trên nhiều nhà cung cấp đám mây như AWS, Azure và Google Cloud. Sự hỗ trợ cho on-premise dự kiến sẽ có ​​trong tương lai. Kubernetes đang giúp cho các kịch bản trên multi-cloud và hybrid-cloud trở thành hiện thực.

 

Sức mạnh của Kubernetes trên các đám mây

Kubernetes được xây dựng để tự động hóa sự phức tạp ra khỏi môi trường không đồng nhất và cung cấp một cách tiêu chuẩn hóa để đóng gói khối lượng công việc trên nhiều nhà cung cấp đám mây và cơ sở hạ tầng on-premise. Với cách tiếp cận khai báo, Kubernetes loại bỏ việc cấu hình tự động hóa để đáp ứng nhu cầu khối lượng công việc. Thay vào đó, nó cung cấp các hook cần thiết giúp triển khai ứng dụng trong môi trường multi-cloud và hybrid-cloud. Bảng sau đây giải thích các hook khác nhau trong Kubernetes, cung cấp sự tự động hóa cần thiết để triển khai ứng dụng liền mạch trong môi trường không đồng nhất.

kubernetes plusKubernetes mang đến tự động hóa quy mô lớn trên các môi trường không đồng nhất mà không phải đối phó với sự phức tạp liên quan đến việc quản lý chúng. Mức độ trừu tượng này, cùng với cách tiếp cận khai báo đối với việc điều phối và quản lý, làm cho Kubernetes trở thành sự trừu tượng đúng cho môi trường lai và nhiều đám mây. Điều này đưa ra khái niệm về tính di động của ứng dụng khi các doanh nghiệp nắm lấy các nhà cung cấp đám mây, mối quan tâm lớn đối với họ và một điều mà Kubernetes được định vị duy nhất để giải quyết.

Để biết ví dụ về khách hàng, hãy xem video XYZ hoặc bài đăng trên blog ABC trên trang web của chúng tôi. Trong blog tiếp theo, chúng tôi đề cập đến việc kết hợp sức mạnh của Kubernetes với các giải pháp Spotinst của chúng tôi và đi sâu hơn về những lợi ích mà nó mang lại cho các tổ chức của bạn.