Language:

Search

Tự cho phép danh sách trắng (allowlist) các ứng dụng có đặc quyền trên GKE Autopilot

  • Share this:
Tự cho phép danh sách trắng (allowlist) các ứng dụng có đặc quyền trên GKE Autopilot

Chạy ứng dụng đặc quyền trên GKE Autopilot dễ dàng hơn bao giờ hết với Self-Service Allow Listing

Google Kubernetes Engine (GKE) Autopilot là một giải pháp quản lý Kubernetes mạnh mẽ, giúp đơn giản hóa việc vận hành và bảo trì cụm. Tuy nhiên, một số ứng dụng, đặc biệt là các ứng dụng giám sát, ghi log và bảo mật, yêu cầu các đặc quyền nâng cao mà Autopilot mặc định chặn. May mắn thay, Google đã giới thiệu Self-Service Allow Listing, một tính năng cho phép bạn chạy các ứng dụng này một cách an toàn và dễ dàng hơn. Bài viết này sẽ hướng dẫn bạn cách sử dụng tính năng này, dựa trên nội dung video giới thiệu của Google.

Tại sao bạn nên quan tâm đến Self-Service Allow Listing?

Trước đây, việc chạy các ứng dụng yêu cầu đặc quyền nâng cao trên GKE Autopilot là một quá trình phức tạp, đòi hỏi sự phối hợp chặt chẽ với đội ngũ kỹ thuật của Google. Self-Service Allow Listing đã thay đổi điều này bằng cách:

  1. Giảm độ phức tạp: Cho phép các nhà phát triển ứng dụng tạo và quản lý danh sách cho phép (allow list) của riêng họ.
  2. Tiết kiệm thời gian: Loại bỏ sự phụ thuộc vào Google, giúp quá trình triển khai nhanh chóng hơn.
  3. Tăng cường bảo mật: Cung cấp các cơ chế kiểm soát chi tiết để đảm bảo chỉ các ứng dụng được ủy quyền mới có thể truy cập các đặc quyền nâng cao.

Hướng dẫn chi tiết cho người dùng GKE Autopilot

Giả sử bạn muốn chạy ứng dụng "Whizz Sensor" để giám sát bảo mật trên cụm Autopilot của mình. Ứng dụng này yêu cầu quyền truy cập root vào các node, điều này bị chặn mặc định.

Introducing GKE Autopilot

Bước 1: Kiểm tra xem ứng dụng có hỗ trợ Self-Service Allow Listing hay không

Liên hệ với nhà cung cấp ứng dụng (ví dụ: Whizz) để xác nhận rằng họ đã onboarded với chương trình GKE Partner và cung cấp allow list cho ứng dụng của họ.

Bước 2: Cài đặt ứng dụng với flag cho phép allow list

Sử dụng Helm để cài đặt ứng dụng, đảm bảo rằng bạn truyền flag kích hoạt việc cài đặt allow list. Ví dụ:

helm install whizz-sensor whizz-charts/whizz-sensor --set allowList=true

Lưu ý: Tên chart và flag có thể khác nhau tùy thuộc vào ứng dụng. Tham khảo tài liệu của ứng dụng để biết chi tiết.

Bước 3: Xác minh việc cài đặt allow list

Sau khi cài đặt, kiểm tra cụm để đảm bảo rằng một đối tượng "allow list synchronizer" đã được tạo. Đối tượng này chịu trách nhiệm đồng bộ hóa allow list từ kho lưu trữ Git của đối tác.

Mẹo: Sử dụng kubectl get -o yaml để xem chi tiết cấu hình của allow list.

Sử dụng Private Image Mirrors với Self-Service Allow Listing

Một số tổ chức, đặc biệt là các tổ chức tài chính, sử dụng private registry để lưu trữ container images. Self-Service Allow Listing hỗ trợ việc này bằng cách cho phép các đối tác chỉ định SHA256 digest của image trong allow list.

Bước 1: Thêm SHA256 digest vào allow list

Nhà cung cấp ứng dụng (GKE Partner) sẽ thêm SHA256 digest của container image vào allow list của họ. Digest này xác định duy nhất image, ngay cả khi đường dẫn image khác nhau.

Bước 2: Chỉ định private registry khi cài đặt ứng dụng

Khi cài đặt ứng dụng, cung cấp thông tin về private registry của bạn, bao gồm cả SHA256 digest của image.

helm install whizz-sensor whizz-charts/whizz-sensor --set image.registry=my-private-registry.com --set image.repository=whizz/sensor --set image.tag=latest@sha256:a1b2c3d4e5f6...

Lưu ý: Đảm bảo rằng bạn đã cấu hình Kubernetes để có thể pull images từ private registry của bạn. Điều này có thể liên quan đến việc tạo Secret chứa thông tin đăng nhập registry.

Hướng dẫn cho GKE Partners: Tạo và quản lý Allow List

Nếu bạn là một nhà cung cấp ứng dụng muốn hỗ trợ Self-Service Allow Listing cho khách hàng của mình, đây là các bước bạn cần thực hiện:

Bước 1: Onboarding với chương trình GKE Partner

Liên hệ với Google để onboarding vào chương trình GKE Partner. Bạn sẽ được cung cấp một kho lưu trữ Git riêng để lưu trữ allow list của mình.

Bước 2: Tạo allow list file

Tạo một file YAML chứa cấu hình allow list cho ứng dụng của bạn. File này cần chỉ định chính xác các exemptions mà ứng dụng của bạn cần, bao gồm cả các đặc quyền và image digest.

Ví dụ về allow list file:

apiVersion: autopilot.gke.io/v1alpha1
kind: AllowList
metadata:
  name: privileged-app-allowlist
spec:
  exemptions:
    - type: Pod
      exemptions:
        - fieldPath: spec.containers[0].securityContext.privileged
          value: true
  imageDigests:
    - gcr.io/my-project/privileged-app@sha256:abcdef1234567890...

Lưu ý: Tuân thủ nghiêm ngặt tài liệu của Google về định dạng allow list. Đảm bảo rằng bạn chỉ yêu cầu các exemptions thực sự cần thiết.

Bước 3: Gửi allow list để phê duyệt

Gửi allow list của bạn để Google xem xét và phê duyệt. Quá trình này bao gồm một đánh giá bảo mật kỹ lưỡng để đảm bảo rằng ứng dụng của bạn không gây rủi ro cho hệ thống.

Bước 4: Triển khai allow list

Sau khi được phê duyệt, allow list của bạn sẽ được triển khai dần dần đến tất cả các khu vực GKE trong vòng một tuần.

Kết luận

Self-Service Allow Listing là một tính năng mạnh mẽ giúp đơn giản hóa việc chạy các ứng dụng yêu cầu đặc quyền nâng cao trên GKE Autopilot. Cho dù bạn là người dùng cuối hay là nhà cung cấp ứng dụng, tính năng này mang lại sự linh hoạt, kiểm soát và bảo mật cao hơn. Hãy bắt đầu khám phá và tận dụng Self-Service Allow Listing ngay hôm nay để tối ưu hóa việc triển khai ứng dụng của bạn trên GKE Autopilot.