Skip to main content

Kubernetes Kümesine Bağlanma

Kubernetes, tam yönetilen kontrol düzlemi, yüksek erişilebilirlik ve otomatik ölçeklendirme içerir.
Standart Kubernetes araç zincirleri (kubectl, API & CLI) ile entegredir.

Gerekli Araçlar

Kümenizi yerel bir makineden ya da uzaktan yönettiğiniz bir sunucudan kontrol etmek için aşağıdaki araçlara ihtiyacınız vardır:

  • kubectl — Kubernetes’in resmi komut satırı aracı. Kümenize bağlanmak ve işlemler yapmak için kullanılır. kubectl version ile kurulumunuzun çalıştığını ve kümenizin sürümüyle uyumlu olduğunu kontrol edebilirsiniz.
    oaicite:1
  • Kubeconfig yönetimi — Kubeconfig dosyasını manuel olarak düzenleyebilir veya kubectl config komutlarıyla bağlam (context) ayarlarını yapabilirsiniz.

Kimlik Doğrulama Belirtme (Token veya Sertifika)

Küme oluşturulduktan sonra, kubectl yapılandırma dosyanıza bir kimlik doğrulama token’i ya da bir sertifika eklemeniz gerekir.

oaicite:3

Sürüm Gereksinimleri

Token oluşturmak için aşağıdaki Kubernetes sürümü gereksinimleri geçerlidir:

oaicite:4

  • Kubernetes 1.16 ve sonrası sürümler desteklenir.
  • Daha eski sürümlerde kimlik doğrulama için sertifika kullanılması gerekebilir.

Doctl’ın eski sürümleri veya eski Kubernetes sürümleri kullanılıyorsa, token yerine sertifika verilir.

oaicite:5

kubectl ile Belge (Config) Alma (Önerilen Yöntem)

Kubeconfig dosyası provider'ın panelinden indirilir. Dosyayı ~/.kube/config içine kopyaladıktan sonra:

Kümenizin kubeconfig dosyasını almak için:

kubectl get nodes

Bu işlem, kümenizin kubeconfig dosyasını indirir, mevcut ~/.kube/config dosyasıyla birleştirir ve kimlik doğrulama için gerekli olan token veya sertifikayı otomatik olarak yönetir.

Arka planda ise şu şekilde çalışır:

  • Geri alınabilir OAuth token: Eğer yukarıda listelenen sürüm gereksinimlerini karşılıyorsanız, bir OAuth token alırsınız. Bu token’ı kontrol panelindeki Applications & API bölümünden görüntüleyebilir ve gerekirse iptal edebilirsiniz.
  • Otomatik sertifika yenileme: Daha eski Kubernetes veya doctl sürümlerinde, 7 gün geçerli bir sertifika oluşturulur. Bu sertifika otomatik olarak yenilenir ve iptal edilemez.

Kubernetes kümelerini daha yeni patch veya minor sürümlere yükselterek sertifika yerine token kullanmaya geçebilirsiniz.

Kontrol Panelinden Config Dosyasını İndirme

Küme yapılandırma dosyasını manuel olarak da kontrol panelinden indirebilirsiniz.

  1. Kümenizin adına tıklayarak Overview sekmesine gidin.
  2. Configuration bölümünde Download Config File seçeneğine tıklayarak kubeconfig dosyasını indirin.
  3. İndirilen dosya <clustername>-kubeconfig.yaml olarak adlandırılır.
  4. Bu dosyayı ~/.kube dizinine koyun ve kubectl komutuna --kubeconfig parametresiyle geçirin.

Örneğin:

kubectl --kubeconfig=~/.kube/<clustername>-kubeconfig.yaml get nodes

Kimlik doğrulama için kullanılan yöntem, Kubernetes sağlayıcınıza bağlıdır.

  • Çoğu sağlayıcıda, yapılandırma dosyasında bir token bulunur.

  • Daha eski sürümlerde ise sertifika tabanlı kimlik doğrulama kullanılabilir.

Küme ile Bağlantı Kurma

Küme yapılandırma dosyası hazır olduğunda, kubectl kullanarak kümeler oluşturabilir, yönetebilir ve uygulamalar dağıtabilirsiniz.
kubectl komutları ve seçenekleri hakkında daha fazla bilgi için resmi kubectl dokümantasyonuna göz atabilirsiniz.


Context’ler

Kubernetes’te bir context, erişim parametrelerini kolayca yönetmek için kullanılan isimlendirilmiş bir gruptur.
Her kümenin yapılandırma dosyasında, küme özel değerler içeren bir context bölümü bulunur. Bu yapı genellikle şu şekilde görünür:

Aşağıda bir Kubernetes context yapılandırma örneği verilmiştir:

contexts:
- context:
cluster: example-cluster
user: example-cluster-admin
name: example-cluster
current-context: example-cluster

kubectl kullandığınızda, çalıştırdığınız komutlar varsayılan context üzerinde etkili olur.
Eğer farklı bir context kullanmak istiyorsanız, --context bayrağını eklemeniz gerekir.

Örneğin:

kubectl get nodes --context=example-cluster

Geçerli varsayılan context’i kontrol etmek için şu komutu kullanın:

kubectl config current-context

Current-context is not set hatası alırsanız, varsayılan bir bağlam ayarlamanız gerekir.

Kullanılabilir tüm bağlamları listelemek için şunu kullanın:

kubectl config get-contexts

Terminal çıktısı şu şekilde görünecektir:

CURRENT   NAME              CLUSTER           AUTHINFO            NAMESPACE
* example-cluster example-cluster example-cluster-admin

Varsayılan context, çıktıda CURRENT sütununda yıldız işareti (*) ile belirtilir. Varsayılan context’i farklı bir context ile değiştirmek için şu komutu kullanın:

kubectl config use-context example-cluster

Namespaces

Kubernetes’te namespace, küme kaynaklarını birden fazla kullanıcı arasında bölmenin bir yoludur.
Aynı küme üzerinde birçok kullanıcının çalıştığı senaryolarda oldukça faydalıdır.

  • Bir küme içinde birden fazla namespace oluşturabilirsiniz.
  • Bir namespace içindeki kaynaklar diğer namespace’lerden gizlenir.

Daha fazla bilgi için Kubernetes Namespaces Walkthrough dokümantasyonuna göz atabilirsiniz.