07_check_calico.yml - Kullanım Kılavuzu

Modifies State k3s kubeadm

Amaç

Bu playbook, Calico CNI’nin mevcut sürümünü (calico-node DaemonSet image tag’i) raporlar ve isteğe bağlı olarak yeni bir manifest uygulayarak günceller.

⚠️ Calico bir apt paketi değil, cluster içinde çalışan bir DaemonSet’tir. calico_manifest_url verilirse gerçek bir güncelleme yapılır (salt-okunur değildir). Sürüm atlamadan önce Calico’nun resmi upgrade rehberini kontrol edin — bazı sürüm atlamalarında CRD güncellemesi de gerekir.

Gereksinimler

  • kubectl erişimi olan ilk control-plane node (master/singlenode grubundaki ilk host) üzerinden çalışır.
  • Güncelleme yapılacaksa calico_manifest_url değişkeni verilmelidir; verilmezse sadece mevcut sürüm raporlanır.

Çalıştırma Komutu

# Sadece mevcut sürümü görmek için:
ansible-playbook -i inventories/musteri_a/hosts.ini playbooks/07_check_calico.yml

# Güncellemek için:
ansible-playbook -i inventories/musteri_a/hosts.ini playbooks/07_check_calico.yml \
  --extra-vars "calico_manifest_url=https://raw.githubusercontent.com/projectcalico/calico/v3.31.1/manifests/calico.yaml"

Örnek Çıktı

TASK [Ping connectivity test] **************************************************
ok: [203.0.113.10]

TASK [Kubeconfig / kubectl access check (when: first control-plane node)] ***
ok: [203.0.113.10]

TASK [calico_manifest_url not provided warning (when: calico_manifest_url must NOT be set)] ***
ok: [203.0.113.10] => {
    "msg": "calico_manifest_url was not set; no update was applied. Example: --extra-vars \"calico_manifest_url=<official manifest URL>\""
}

TASK [Calico version report (when: first control-plane node and kubectl access)] ***
ok: [203.0.113.10] => {
    "msg": "Calico: quay.io/calico/node:v3.31.1 -> quay.io/calico/node:v3.31.1"
}