全部产品
Search
文档中心

Container Service for Kubernetes:Pengenalan dan Catatan Rilis untuk gatekeeper

更新时间:Jul 06, 2025

Komponen gatekeeper memfasilitasi pengelolaan dan penegakan kebijakan yang dijalankan oleh Open Policy Agent (OPA) di kluster Kubernetes. Komponen ini memungkinkan Anda mengelola label namespace. Topik ini menjelaskan fitur, catatan penggunaan, dan catatan rilis untuk gatekeeper.

Ikhtisar

OPA adalah mesin kebijakan sumber terbuka yang digunakan untuk menerapkan kebijakan dalam tumpukan secara standar dan sesuai konteks. Anda dapat menggunakan komponen gatekeeper untuk mengelola dan menerapkan kebijakan OPA serta mengelola label namespace di Container Service for Kubernetes (ACK) kluster. Untuk informasi lebih lanjut tentang OPA, lihat Open Policy Agent. Gambar berikut menunjukkan arsitektur gatekeeper.

Untuk informasi lebih lanjut tentang cara menginstal gatekeeper, lihat Kelola Komponen.

Catatan Penggunaan

Anda dapat menggunakan gatekeeper untuk membatasi penyebaran pod di namespace tertentu berdasarkan label. Dalam contoh ini, batasan didefinisikan untuk menyatakan bahwa semua pod yang dibuat di namespace tertentu harus memiliki label gatekeeper-test-label. Untuk informasi lebih lanjut tentang cara menggunakan gatekeeper, lihat Cara Menggunakan Gatekeeper.

  1. Jalankan perintah berikut untuk membuat namespace uji bernama test-gatekeeper dan tambahkan label name=test-gatekeeper ke namespace tersebut:

    kubectl create ns test-gatekeeper
    kubectl label ns test-gatekeeper name=test-gatekeeper
  2. Jalankan perintah berikut untuk membuat template batasan yang dapat digunakan untuk mendefinisikan batasan pada label pod:

    kubectl apply -f - <<EOF
    apiVersion: templates.gatekeeper.sh/v1beta1
    kind: ConstraintTemplate
    metadata:
      name: k8srequiredlabels
    spec:
      crd:
        spec:
          names:
            kind: K8sRequiredLabels
          validation:
            openAPIV3Schema:
              properties:
                labels:
                  type: array
                  items:
                    type: string
      targets:
        - target: admission.k8s.gatekeeper.sh
          rego: |
            package k8srequiredlabels
            violation[{"msg": msg, "details": {"missing_labels": missing}}] {
              provided := {label | input.review.object.metadata.labels[label]}
              required := {label | label := input.parameters.labels[_]}
              missing := required - provided
              count(missing) > 0
              msg := sprintf("you must provide labels: %v", [missing])
            }
    EOF

    Dibutuhkan sekitar 10 detik untuk menginisialisasi template batasan.

  3. Jalankan perintah berikut untuk membuat batasan dari template batasan sebelumnya. Batasan ini menyatakan bahwa semua pod yang akan dibuat di namespace dengan label name=test-gatekeeper harus memiliki label gatekeeper-test-label.

    kubectl apply -f - <<EOF
    apiVersion: constraints.gatekeeper.sh/v1beta1
    kind: K8sRequiredLabels
    metadata:
      name: pod-must-have-gatekeeper-test-label
    spec:
      match:
        kinds:
          - apiGroups: [""]
            kinds: ["Pod"]
        namespaceSelector:
          matchExpressions:
          - key: name
            operator: In
            values: ["test-gatekeeper"]
      parameters:
        labels: ["gatekeeper-test-label"]
    
    EOF

    Dibutuhkan sekitar 10 detik untuk menginisialisasi batasan.

  4. Periksa apakah namespace dibatasi.

    • Jalankan perintah berikut untuk membuat pod tanpa label gatekeeper-test-label di namespace test-gatekeeper. Namespace test-gatekeeper memiliki label name=test-gatekeeper.

      kubectl -n test-gatekeeper run test-deny --image=nginx --restart=Never

      Output yang diharapkan:

      Error from server ([denied by pod-must-have-gatekeeper-test-label] you must provide labels: {"gatekeeper-test-label"}): admission webhook "validation.gatekeeper.sh" denied the request: [denied by pod-must-have-gatekeeper-test-label] you must provide labels: {"gatekeeper-test-label"}

      Namespace test-gatekeeper memiliki label name=test-gatekeeper. Pod dibuat tanpa label gatekeeper-test-label. Oleh karena itu, pembuatan pod gagal.

    • Jalankan perintah berikut untuk membuat pod dengan label gatekeeper-test-label di namespace test-gatekeeper. Namespace test-gatekeeper memiliki label name=test-gatekeeper.

      kubectl -n test-gatekeeper run test-pass -l gatekeeper-test-label=pass --image=nginx --restart=Never

      Output yang diharapkan:

      pod/test-pass created

      Namespace test-gatekeeper memiliki label name=test-gatekeeper. Pod dibuat dengan label gatekeeper-test-label. Oleh karena itu, pembuatan pod berhasil.

    • Jalankan perintah berikut untuk membuat pod tanpa label name=test-gatekeeper di namespace yang tidak tunduk pada batasan:

      kubectl -n default run test-deny --image=nginx --restart=Never

      Output yang diharapkan:

      pod/test-deny created

      Namespace tidak tunduk pada batasan. Oleh karena itu, pembuatan pod berhasil. Pod yang dibuat tidak memiliki label name=test-gatekeeper.

    Langkah-langkah di atas menunjukkan bahwa gatekeeper dapat digunakan untuk membatasi pembuatan pod di namespace tertentu. Dalam contoh ini, pod yang dibuat di namespace harus memiliki label gatekeeper-test-label.

Catatan Rilis

Maret 2025

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Pengaruh

v3.18.2.192-ge2860248-aliyun

registry-cn-hangzhou.ack.aliyuncs.com/acs/gatekeeper:v3.18.2.192-ge2860248-aliyun

2025-03-04

  • OPA Gatekeeper diperbarui ke versi 3.18.2. Komponen gatekeeper bergantung pada OPA Gatekeeper. Untuk informasi lebih lanjut, lihat v3.18.2.

  • Versi Go komponen ditingkatkan ke 1.23.6 untuk meningkatkan stabilitas.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami merekomendasikan Anda melakukan pembaruan selama jam-jam sepi.

Desember 2024

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Pengaruh

v3.17.1.174-g6383c639-aliyun

registry-cn-hangzhou.ack.aliyuncs.com/acs/gatekeeper:v3.17.1.174-g6383c639-aliyun

2024-12-09

OPA Gatekeeper diperbarui ke versi 3.17.1. Komponen gatekeeper bergantung pada OPA Gatekeeper. Untuk informasi lebih lanjut, lihat v3.17.1.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami merekomendasikan Anda melakukan pembaruan selama jam-jam sepi.

September 2024

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Pengaruh

v3.16.3.158-g5e73c0ad-aliyun

registry-cn-hangzhou.ack.aliyuncs.com/acs/gatekeeper:v3.16.3.158-g5e73c0ad-aliyun

2024-09-25

OPA Gatekeeper diperbarui ke versi 3.16.3. Komponen gatekeeper bergantung pada OPA Gatekeeper. Untuk informasi lebih lanjut, lihat v3.16.3.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami merekomendasikan Anda melakukan pembaruan selama jam-jam sepi.

Maret 2024

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.15.1.150-g29b8b2a8-aliyun

registry-cn-hangzhou.ack.aliyuncs.com/acs/gatekeeper:v3.15.1.150-g29b8b2a8-aliyun

2024-03-27

OPA Gatekeeper diperbarui ke 3.15.1. Komponen gatekeeper bergantung pada OPA Gatekeeper. Untuk informasi lebih lanjut, lihat v3.15.1.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami menyarankan Anda melakukan pembaruan selama jam-jam sepi.

Oktober 2023

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.12.0.138-g1ee37e37-aliyun

registry-cn-hangzhou.ack.aliyuncs.com/acs/gatekeeper:v3.12.0.138-g1ee37e37-aliyun

2023-10-09

  • OPA Gatekeeper diperbarui ke 3.12.0. Komponen gatekeeper bergantung pada OPA Gatekeeper. Untuk informasi lebih lanjut, lihat v3.12.0.

  • Kebijakan dapat dikonfigurasi untuk menangani peristiwa penghapusan Layanan.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami sarankan Anda melakukan pembaruan selama jam-jam sepi.

April 2023

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.10.0.130-g0e79597d-aliyun

registry.cn-hangzhou.aliyuncs.com/acs/gatekeeper:v3.10.0.130-g0e79597d-aliyun

2023-04-18

  • OPA Gatekeeper diperbarui ke 3.10.0. Komponen gatekeeper bergantung pada OPA Gatekeeper. Untuk informasi lebih lanjut, lihat v3.10.0.

  • Secara default, fitur replikasi data dinonaktifkan. Anda dapat mengaktifkan fitur ini di halaman Add-ons pada konsol ACK. Untuk informasi lebih lanjut, lihat Mereplikasi Data.

  • Kebijakan dapat dikonfigurasi untuk menangani peristiwa penghapusan namespace.

  • Kubernetes 1.26 didukung.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami sarankan Anda melakukan pembaruan selama jam-jam sepi.

Juni 2022

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.8.1.113-geb7947ef-aliyun

registry.cn-hangzhou.aliyuncs.com/acs/gatekeeper:v3.8.1.113-geb7947ef-aliyun

2022-06-08

  • OPA Gatekeeper diperbarui ke 3.8.1. Komponen gatekeeper bergantung pada OPA Gatekeeper. Untuk informasi lebih lanjut, lihat v3.8.1.

  • Secara default, pod audit dinonaktifkan. Anda dapat mengaktifkan pod audit di halaman Add-ons pada konsol ACK.

  • Konfigurasi komponen tentang sumber daya CPU, memori, dan jumlah pod replika dapat dimodifikasi di halaman Add-ons pada konsol ACK.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami menyarankan Anda melakukan pembaruan selama jam-jam sepi.

April 2022

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.7.1.93-gaf375989-aliyun

registry.cn-hangzhou.aliyuncs.com/acs/gatekeeper:v3.7.1.93-gaf375989-aliyun

2022-04-02

Fitur Mutation dapat diaktifkan pada halaman Add-ons di konsol ACK. Secara default, fitur Mutation dinonaktifkan. Untuk informasi lebih lanjut, lihat Mutation.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami menyarankan Anda melakukan pembaruan selama jam-jam sepi.

Februari 2022

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.7.0.84-gf5fd3ffd-aliyun

registry.cn-hangzhou.aliyuncs.com/acs/gatekeeper:v3.7.0.84-gf5fd3ffd-aliyun

2022-02-15

Kinerja komponen dioptimalkan. Masalah penggunaan CPU yang abnormal dalam kasus ekstrem telah diperbaiki.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami menyarankan Anda melakukan pembaruan selama jam-jam sepi.

Januari 2022

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.7.0.82-gafe4391b-aliyun

registry.cn-hangzhou.aliyuncs.com/acs/gatekeeper:v3.7.0.82-gafe4391b-aliyun

2022-01-14

  • OPA Gatekeeper diperbarui ke 3.7.0. Komponen gatekeeper bergantung pada OPA Gatekeeper. Untuk informasi lebih lanjut, lihat v3.7.0.

  • Arsitektur ARM64 didukung.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami menyarankan Anda melakukan pembaruan selama jam-jam sepi.

September 2021

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.6.0.62-g156146d-aliyun

registry.cn-hangzhou.aliyuncs.com/acs/gatekeeper:v3.6.0.62-g156146d-aliyun

2021-09-20

  • gatekeeper 3.6.0.62 dan versi yang lebih baru hanya mendukung kluster ACK yang menjalankan Kubernetes 1.16.9 dan versi yang lebih baru.

  • OPA Gatekeeper diperbarui ke 3.6.0. Komponen gatekeeper bergantung pada OPA Gatekeeper. Untuk informasi lebih lanjut, lihat v3.6.0.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami menyarankan Anda melakukan pembaruan selama jam-jam sepi.

Maret 2021

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.3.0.24-8e68abc-aliyun

registry.cn-hangzhou.aliyuncs.com/acs/gatekeeper:v3.3.0.24-8e68abc-aliyun

2021-03-16

  • gatekeeper dapat diinstal di kluster terdaftar.

  • OPA Gatekeeper diperbarui ke versi 3.3.0. Komponen gatekeeper bergantung pada OPA Gatekeeper.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami menyarankan Anda melakukan pembaruan selama jam-jam sepi.

Agustus 2020

Versi

Alamat gambar

Tanggal rilis

Deskripsi

Dampak

v3.1.0.11-24bab09-aliyun

registry.cn-hangzhou.aliyuncs.com/acs/gatekeeper:v3.1.0.11-24bab09-aliyun

2020-08-20

OPA Gatekeeper diperbarui ke 3.1.0-beta.12. Komponen gatekeeper bergantung pada OPA Gatekeeper.

Catatan

OPA Gatekeeper adalah proyek sumber terbuka berdasarkan pengembangan komponen gatekeeper.

Jika terjadi pengecualian selama pembaruan komponen, perubahan pada sumber daya kluster mungkin gagal. Kami menyarankan Anda melakukan pembaruan selama jam-jam sepi.