Skip to content

Cum să configurezi kubectl și fișierele kubeconfig

DodaTech Updated 2025-01-15 2 min read

In this tutorial, you'll learn about Cum să configurezi kubectl și fișierele kubeconfig. We cover key concepts, practical examples, and best practices.

Problema

Nu poți conecta kubectl la clusterul Kubernetes, primești erori de autentificare sau trebuie să comuți rapid între medii (dev, staging, producție) gestionate de provideri diferiți.

Soluția Pas cu Pas

1. Verifică configurația curentă

kubectl config view

Output:

apiVersion: v1
clusters:
- cluster: ...
  name: my-cluster
contexts:
- context:
    cluster: my-cluster
    user: admin
  name: my-context
current-context: my-context
kind: Config
users:
- name: admin
  user: ...

2. Verifică contextul activ

kubectl config current-context

Output:

my-context

3. Adaugă un cluster nou

kubectl config set-cluster production \
  --server=https://prod-cluster.example.com:6443 \
  --certificate-authority=ca.pem

4. Adaugă un user nou

kubectl config set-credentials prod-admin \
  --client-certificate=admin.pem \
  --client-key=admin-key.pem

5. Creează un context

kubectl config set-context prod-context \
  --cluster=production \
  --user=prod-admin \
  --namespace=production

Output:

Context "prod-context" created.

6. Comută între contexte

kubectl config use-context prod-context

Output:

Switched to context "prod-context".

7. Fisișierul kubeconfig implicit

kubectl config view --kubeconfig=$HOME/.kube/config

8. Folosește mai multe fișiere kubeconfig

export KUBECONFIG=$HOME/.kube/config:$HOME/.kube/dev-config
kubectl config view --merge --flatten > $HOME/.kube/merged-config

9. Șterge un context

kubectl config delete-context prod-context

Prevenție

  • Păstrează fișierele kubeconfig sigure (conțin certificate și token-uri).
  • Folosește nume de contexte descriptive (ex: gcp-dev, aws-prod, aks-staging).
  • Nu face commit la kubeconfig în Git. Adaugă-l în .gitignore.
  • Folosește KUBECONFIG environment variable pentru medii multiple simultan.
  • Folosește tool-uri ca kubectx și kubens pentru comutare rapidă.

Greșeli Comune

  1. Kubeconfig în Git — Expune certificate și token-uri de acces.
  2. Context greșit activ — Comenzi aplicate pe cluster-ul greșit (ex: producție în loc de dev).
  3. Token expirat — Autentificarea eșuează după expirarea token-ului OIDC.
  4. Fără namespace specificat — Comenzile se execută pe namespace-ul implicit din context.
  5. Merge incorect — Contexte cu același nume se suprascriu la merge.

Exercițiu

Configurează două contexte (dev și prod) cu clustere diferite, comută între ele, rulează kubectl get nodes pe fiecare și apoi șterge contextul de dev.

FAQ

### Unde se află fișierul kubeconfig implicit?

În $HOME/.kube/config. Poți specifica un alt fișier cu --kubeconfig sau variabila KUBECONFIG.

Cum configurez kubectl pentru un cluster AKS, EKS sau GKE?

Folosește comenzile specifice cloud provider-ului: az aks get-credentials, aws eks update-kubeconfig, gcloud container clusters get-credentials.

Cum combin mai multe fișiere kubeconfig?

Setează variabila KUBECONFIG cu toate fișierele separate de :, apoi folosește kubectl config view --flatten pentru a le combina.

Construit de dezvoltatorii Doda Browser, DodaZIP și Durga Antivirus Pro. Uneltele DodaTech se integrează seamless cu Kubernetes pentru productivitate și securitate sporite.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro