1. Cluster Bilgilerinin Alınması
Kubernetes API server adresini ve port bilgisini almak için aşağıdaki komutu çalıştırın:Kubernetes control plane adresini ve portunu not alın. Bu bilgi Apinizer’da reverse proxy tanımlanırken kullanılacaktır.
2. Apinizer’a Reverse Proxy Eklenmesi
Apinizer’da ilgili cluster için bir reverse proxy tanımı oluşturun. Backend adresi olarakkubectl cluster-info çıktısındaki adresi girin.
Request Policy Yapılandırması
Kubernetes API’sinin kubectl ile uyumlu çalışabilmesi için aşağıdaki header dönüşümlerini Request Policy → Business Rule bölümünden ekleyin:| Action Type | Source Variable | Variable Data Type | Target Value Source Type | Value |
|---|---|---|---|---|
Modify | accept-encoding | String | Specify the Value | identity |
Delete | accept-encoding | - | - | - |
Bu header dönüşümleri yapılmadığında kubectl, Kubernetes’ten gzip sıkıştırılmış ve özel formatlı yanıtlar talep eder. Apinizer bu yanıtları işlerken JSON kesilmesine neden olur ve
unexpected end of JSON input hatası alınır.3. Token Oluşturulması
Kubernetes cluster’a erişimi olan bir makinede aşağıdaki komutları sırasıyla çalıştırın: Service account oluşturma:Son komutun çıktısı olan token değerini kopyalayın ve güvenli bir yerde saklayın. Bu token bir sonraki adımda kubeconfig dosyasında kullanılacaktır. Token süresi dolduğunda bu adımı tekrarlayarak yeni token oluşturmanız gerekir.
4. Kubeconfig Dosyasının Hazırlanması
Windows’ta kubectl, cluster bağlantı bilgilerini%USERPROFILE%\.kube\config dosyasından okur. Bu dosya genellikle C:\Users\KULLANICI_ADINIZ\.kube\config konumunda bulunur.
Dosyayı oluşturmak için CMD’de aşağıdaki komutu çalıştırın:
insecure-skip-tls-verify: true ayarı, Apinizer’ın TLS sertifikasının Kubernetes sertifikasından farklı olması nedeniyle gereklidir.
