Sobes.tech
Middle

Čo je Node API v Kubernetes?

sobes.tech AI

Odpoveď od AI

API Node v Kubernetes je súbor objektov API (Node, NodeStatus), ktoré predstavujú informácie o výpočtových uzloch klastru. Umožňuje spravovať uzly, získavať ich aktuálny stav (zdroje, zaťaženie, podmienky) a využívať tieto informácie na umiestňovanie podov.

Kľúčové aspekty:

  • Objekt Node: Reprezentuje inštanciu výpočtového uzla (fyzického alebo virtuálneho) v klastre. Obsahuje metadáta, špecifikácie a stav uzla.
    apiVersion: v1
    kind: Node
    metadata:
      name: some-node-name # Názov uzla
    spec:
      # Špecifikácia uzla (môže byť prázdna, spravovaná kontrolérmi)
    status:
      # Stav uzla (vyplnený kubeletom)
    
  • NodeStatus: Podpole objektu Node, ktoré obsahuje informácie o aktuálnom stave uzla. Aktualizuje ho démon kubelet, ktorý beží na uzle.
    • addresses: IP adresy uzla (InternalIP, ExternalIP, Hostname).
    • capacity: Celkové dostupné zdroje (CPU, Memory, ephemeral-storage).
    • allocatable: Množstvo zdrojov dostupných pre pody po odpočítaní systémových potrieb.
    • conditions: Zoznam podmienok, ktoré opisujú stav uzla (napr., Ready, OutOfDisk, MemoryPressure).
    • nodeInfo: Informácie o prostredí behu (verzia kubelet, OS, architektúra).
  • Interakcia:
    • kubelet na každom uzle poskytuje informácie (NodeStatus) cez Node API kontroléru uzlov v riadiacom pláne.
    • Kontroléry (napríklad scheduler) používajú tieto informácie na rozhodovanie o umiestnení podov.
    • Administrátori môžu použiť kubectl na interakciu s Node API (získať zoznam uzlov, ich stav).
    # Zobraziť zoznam uzlov
    kubectl get nodes 
    
    # Zobraziť úplné informácie o konkrétnom uzle
    kubectl describe node <názov-uzla> 
    

Node API je základnou súčasťou Kubernetes, ktorá umožňuje systému sledovať a efektívne využívať zdroje klastru.