Halaman ini menjelaskan cara melakukan migrasi dari ConfigManagement
API
ke PolicyController
API untuk mengelola Pengontrol Kebijakan.
PolicyController
API menawarkan kemampuan yang sama untuk menginstal dan
mengelola Pengontrol Kebijakan.
Mulai April 2025, configManagement
API versi 1.21 dan yang lebih baru
tidak lagi mendukung penginstalan atau update Policy Controller. Mencoba mengupgrade
atau menginstal Pengontrol Kebijakan dengan metode ini akan gagal dan menghasilkan error. Ikuti petunjuk di halaman ini untuk melakukan migrasi agar Anda dapat terus menggunakan Pengontrol Kebijakan.
Langkah-langkah untuk melakukan migrasi sepenuhnya berbeda-beda, bergantung pada metode penginstalan yang Anda gunakan untuk menginstal Pengontrol Kebijakan.
Jika menggunakan perintah PolicyController
gcloud CLI yang dimulai dengan gcloud container fleet policycontroller
, Anda sudah menggunakan PolicyController
API. Anda tidak perlu melakukan apa pun. Jika tidak, tinjau petunjuk untuk metode
yang Anda gunakan untuk menginstal Pengontrol Kebijakan:
config management
Jika Anda menggunakan perintah gcloud CLI yang dimulai dengan gcloud alpha container fleet config-management
,
beralihlah untuk menggunakan perintah Pengontrol Kebijakan gcloud CLI yang dimulai
dengan gcloud container fleet policycontroller
. Tinjau
dokumentasi gcloud CLI
untuk mengetahui daftar perintah. Anda tidak perlu melakukan tindakan lain.
Jika file apply spec
Google Cloud CLI Anda
memiliki blok policyController
, hapus blok tersebut untuk memastikan kompatibilitas dengan
Config Sync.
Terraform
Jika menggunakan resource Terraform yang mengonfigurasi Policy Controller dengan nama fitur "configmanagement"
, Anda harus beralih ke resource Terraform dengan nama fitur "policycontroller"
dengan menyelesaikan langkah-langkah berikut:
Salin file Terraform yang ada ke file baru, atau perbarui file Terraform, lalu tambahkan kode berikut:
resource "google_gke_hub_feature" "feature" { name = "policycontroller" location = "global" } resource "google_gke_hub_feature_membership" "feature_member" { feature = google_gke_hub_feature.feature.name # "policycontroller" location = "global" membership = MEMBERSHIP_NAME project = PROJECT_ID policycontroller { policy_controller_hub_config { install_spec = "INSTALL_SPEC_ENABLED" } } }
Ganti kode berikut:
MEMBERSHIP
: nama keanggotaan cluster terdaftar yang telah menginstal Policy Controller.PROJECT_ID
: project ID Anda.
Hapus blok
"policy_controller"
dari resource Terraform yang ada. Anda dapat menemukan blok di bagian blok"configmanagement"
. Jika menggunakan resource untuk hanya mengelola Pengontrol Kebijakan, Anda dapat menghapus seluruh blokconfigmanagement
. Jika Anda menggunakan resource untuk mengelola Config Sync, pastikan Anda hanya menghapus blok Policy Controller. Misalnya, blokconfigmanagement
Anda mungkin mirip dengan hal berikut:resource "google_gke_hub_feature_membership" "feature_member" { provider = google-beta location = "global" feature = "configmanagement" membership = google_gke_hub_membership.membership.membership_id configmanagement { version = "1.8.0" config_sync { source_format = "unstructured" git { } } # if you're still using the config_sync block, delete only the policy_controller block policy_controller { enabled = true template_library_installed = true referential_rules_enabled = true } } }
Impor setelan fitur langganan Pengontrol Kebijakan dengan menyelesaikan salah satu langkah berikut:
Jalankan perintah berikut:
terraform import "google_gke_hub_feature.feature" "projects/PROJECT_ID/locations/global/features/policycontroller" terraform import "google_gke_hub_feature_membership.feature_member" "projects/PROJECT_ID/locations/global/features/policycontroller/membershipId/MEMBERSHIP_NAME"
Tambahkan blok impor ke resource Terraform Anda:
import { to = google_gke_hub_feature_membership.feature_member id = "projects/PROJECT_ID/locations/global/features/policycontroller/membershipId/MEMBERSHIP_NAME" } import { to = google_gke_hub_feature.feature id = "projects/PROJECT_ID/locations/global/features/policycontroller" }
Terapkan setelan Pengontrol Kebijakan:
terraform apply
Opsional: Setelah impor selesai, Anda dapat menghapus blok impor dari resource Terraform. Atau, Anda dapat membiarkan pemblokiran impor dalam konfigurasi sebagai catatan asal resource.
Config Connector
Untuk berhenti menggunakan spesifikasi configmanagement.policyController
, selesaikan
langkah-langkah berikut:
Buat spesifikasi
GKEHubFeatureMembership
baru dengan kolompolicycontroller
yang diperlukan. Pastikan Anda menetapkan kolomresourceID
kepolicyController
.Jika Anda sudah memiliki
GKEHubFeatureMembership
yang menggunakan kolomspec.configmanagement.policyController
, hapus kolompolicycontroller
apa pun dari spesifikasiconfigmanagement
.
kubectl
Jika Anda menggunakan perintah kubectl
untuk mengelola Policy Controller dengan objek ConfigManagement
, beralihlah untuk menggunakan perintah Policy Controller gcloud CLI yang dimulai dengan gcloud container fleet policycontroller
. Anda tidak perlu melakukan tindakan lain.
Jika objek ConfigManagement
Anda memiliki blok policyController
, hapus blok tersebut agar kompatibel dengan Config Sync.
Sebaiknya tinjau referensi berikut untuk mempelajari lebih lanjut Policy Controller API:
- Menginstal Pengontrol Kebijakan dengan perintah
gcloud container fleet policycontroller
- Tinjau dokumentasi referensi
GKEHubFeature
Config Connector - Tinjau dokumentasi referensi
google_gke_hub_feature
Terraform