Sobes.tech
Junior

Kubeadm ile çalıştınız mı?

sobes.tech yapay zeka

AI'dan gelen yanıt

Evet.

Kubeadm, makinenizde minimum bir Kubernetes kümesi hızlı ve kolay kurmanıza yardımcı olan bir araçtır. Kontrol planının başlatılması ve worker düğümlerinin eklenmesi gibi ana yapılandırma adımlarını otomatikleştirir.

Kubeadm kullanırken temel adımlar:

  1. Ön hazırlık: Tüm küme düğümlerine Docker veya başka bir konteyner çalışma zamanı, kubelet, kubectl ve kubeadm kurulumları. Ağ köprüsünün yapılandırılması ve swap'ın devre dışı bırakılması.
  2. Kontrol planının başlatılması: kubeadm init komutu master olacak düğümde çalıştırılır. Bu, gerekli sertifikaları, etcd kümesini oluşturur ve kontrol planı bileşenlerini (API sunucusu, Kontrol yöneticisi, Zamanlayıcı, Kube-proxy) statik podlar veya hizmetler olarak yerleştirir.
  3. Ağ eklentisinin dağıtımı (CNI): Master düğüm başlatıldıktan sonra, podlar arasındaki iletişimi sağlamak için bir ağ eklentisi (örneğin, Calico, Flannel, Weave Net) yüklenmelidir.
    # Calico yükleme örneği
    kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
    
  4. Worker düğümlerinin eklenmesi: Her worker düğümde, kubeadm join komutu çalıştırılır, bu komut kubeadm init tarafından sağlanır. Bu komut worker düğümünü kümeye bağlar, kubelet ve kube-proxy'yi kurar ve düğümü kontrol planına kaydeder.
    # Join komutu örneği
    kubeadm join <master_düğüm_ip>:<api_sunucu_portu> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
    
  5. Erişim yapılandırması: Master düğümden kubeconfig yapılandırması kopyalanır, böylece kubectl kullanılarak kümeyle çalışılabilir.
    # kubectl yapılandırması için örnek komutlar
    mkdir -p $HOME/.kube
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    

Kubeadm, dağıtım sürecini basitleştirir, ancak kümenin yaşam döngüsünü (güncellemeler, ölçeklendirme, izleme) yönetmek için tam bir araç değildir. Üretim ortamları için genellikle daha gelişmiş araçlar veya Kubernetes dağıtımları kullanılır. Yine de, kubeadm öğrenmek ve test kümeleri oluşturmak için mükemmel bir başlangıçtır.