KUBERNETES OPERATORS
Samira Kabbour
CMO
QUẢN LÝ ỨNG DỤNG DỄ DÀNG HƠN VỚI KUBERNETES OPERATORS TRÊN GCP MARKET PLACE
Hiện tại nhu cầu tăng cao đối với nhiều doanh nghiệp trong viêc sử dụng GKE (Google Kubernetes Engine) dành cho container để quản lý các phần mềm, cung cấp nhiều tính năng hơn cho người dùng.
Tuy nhiên, người quản lý cụm container (cluster) và ứng dung thường gặp vấn đề với việc cung cấp tác quyển (authoring), phát hành (releasing) và quản lý ứng dụng trên nền tảng Kubernetes.
Nhằm giải quyết vấn đề này, Google Cloud cung cấp một tập các Kubernetes Operators trên marketplace để đóng gói tất cả các cách thức sử dụng tốt nhất, cũng như cung cấp giải pháp trọn gói cho một vài ứng dụng đặc biệt.
Vòng đời của một ứng dụng trên nền Kubernetes
Operator tự động hóa quản trình khởi tạo các tài nguyên côt lõi như Pod, Container, Persistent Volume (hay ổ đĩa dành cho container), dịch vụ,… cũng như các tài nguyên cần thiết để thực thi các công việc cụ thể, bao gồm deployment (triển khai cụ thể), statefulset, và việc điều phối, giám sát từng ứng dụng cụ thể.
Google làm việc với cộng đồng mã nguồn mở Kubernetes: Với SIG (Apps Special Interest Group) để giới thiệu và chuẩn hóa Application Resource (tài nguyên ứng dụng)
Application Resource định nghĩa nhiều loại tài nguyên khác nhau trong ứng dụng và quản lý chúng theo nhóm.
Application Resource bao gồm một API tiêu chuẩn cho việc khởi tạo, quan sát , và quản lý ứng dụng, dọn bộ nhớ (Garbage Collection), và quản lý các ràng buộc (dependency) trong nội bộ ứng dụng.
Hơn nữa nó còn cung cấp một cơ chế tiêu chuẩn để quan sát và quản lý ứng dụng bằng giao diện của GKE.
View của ứng dụng trên GKE UI
Operator là một khả năng đáng giá nhất của Kubernetes, khả năng mở rộng thông qua việc sử dụng CRD và các controller. Operator mở rộng Kubernetes API nhằm hỗ trợ việc hiện đại hóa từng phần của các công việc và cung cấp khả năng quản lý vòng đời nâng cao,…
Trong chợ ứng dụng của GCP (Marketplace) bạn cũng có thể tìm kiếm các Operator từ các nhà sản xuất phần mềm độc lập.
Operator của Google:
Đồng thời với việc định nghĩa tiêu chuẩu về ứng dụng, GCP còn cung cấp nhiều Operator quan trọng. Điều này nhấn mạnh khả năng mở rộng của Kubernetes, mô tả những phương thức sử dụng chính xác nhất để xuất bản và quản lý vòng đời của ứng dụng Kubernetes trên GCP.
Java Operators:
Thành phần quan trọng của Java là JVM (Java Virtual Machine – Máy ảo của Java) cho phép máy của bạn chạy Java bất kể đó là kiến trúc CPU như thế nào. Ở đây ta quan tâm đến các ứng dụng triển khai trên container của Java, JVM trên GKE như Spark, Elasticsearch, Kafka, Cassandra.
Một vài khó khăn khi chạy ứng dụng Java trong container, đó là JVM không hiểu được cơ chế cô lập (isolation) mà container xử dụng, sẽ dẫn đến nhiều hành vi dị thường khi tương tác với nhau.
Để giải quyết, Java Operator ra đời nhằm tự động hóa việc thiết lập cấu hình của JVM đối với ứng dụng chạy trên Kubernetes.
Spark operator:
Spark là công cụ phân tích phổ biến hiện nay, cho xử lý khối lượng dữ liệu lớn dạng batch, và luồng (streaming), học máy. Kubernetes hiện tại có Operator cho Apache Spark (beta).
Airlflow Operator:
Apache Airflow cho phép bạn quản lý các luồng công việc phức tạp theo kiểu DAG (directed acylic graph), cho phép quản lý ràng buộc, lập lịch (scheduling) những thành phần trong phần mềm.
Ngoài ra bạn cũng có thể tự xây dựng operator của riêng bạn thông qua công cụ Kubebuilder.
Cập nhật tự động cho ứng dụng Kubernetes
Nhằm đơn giản hóa quá trình quản lý, công cụ Managed Update (GCP marketplace) giúp bạn dễ dàng cập nhật và quay lại phiên bản cũ hơn (rollback) tự động với công cụ kiểm tra phần mềm cóa hoạt động tốt hay không (healthcheck)
Từ này bạn có thể dễ dàng quản lý ứng dụng hơn bao giờ hết
Bạn muốn có thêm thông tin, hay được tư vấn về Kubernetes, xin vui lòng liên hệ info@renovacloud.com