Debug dei componenti Calico

Virtual Private Cloud Infrastruttura classica

Si riscontrano problemi con i componenti di Calico, come i pod che non vengono distribuiti o problemi di rete intermittenti.

Si riscontrano problemi con i componenti di Calico, come i pod che non vengono distribuiti o problemi di rete intermittenti.

Calico I problemi di rete possono essere difficili da diagnosticare senza registrazioni dettagliate. Il livello di log predefinito per i componenti di Calico è impostato su " info", che fornisce informazioni operative di base ma potrebbe non includere dettagli sufficienti per risolvere problemi di rete complessi.

Aumenta il livello di registrazione dei componenti di Calico impostandolo su " debug " per raccogliere informazioni più dettagliate sul problema. La registrazione a livello di debug fornisce un output dettagliato che può aiutare a identificare la causa principale dei problemi di rete.

Aumento del livello di log per i componenti calico-typha

Completare la seguente procedura per aumentare il livello di log per il componente calico-typha.

  1. Eseguire il seguente comando per modificare la distribuzione di calico-typha.

    oc edit deploy calico-typha -n calico-system
    
  2. Modificare la variabile di ambiente di TYPHA_LOGSEVERITYSCREEN da info a debug.

          containers:
        - env:
          - name: TYPHA_LOGSEVERITYSCREEN
            value: debug
    
  3. Salvare e chiudere il file per applicare le modifiche e riavviare la distribuzione di calico-typha.

Aumento del livello di log per i componenti calico-cni

Completare la seguente procedura per aumentare il livello di log per il componente calico-cni.

  1. Immettere il seguente comando per modificare calico-config ConfigMap.

    oc edit cm -n calico-system cni-config
    
  2. Modificare la variabile di ambiente di cni_network_config > plugins > log_level in debug.

      cni_network_config: |-
      {
        "name": "k8s-pod-network",
        "cniVersion": "0.3.1",
        "plugins": [
          {
            "type": "calico",
            "log_level": "debug",
    
  3. Salva e chiudi il file. La modifica non avrà effetto fino a quando i pod calico-node non vengono riavviati.

  4. Riavvia i pod calico-node per applicare le modifiche.

    oc rollout restart daemonset/calico-node -n calico-system
    

    Output di esempio

    daemonset.apps/calico-node restarted
    

Aumento del livello di log per i componenti calico-node

Completare la seguente procedura per aumentare il livello di log per il componente calico-node.

  1. Esegui il seguente comando:

    oc edit ds calico-node -n calico-system
    
  2. Nella coppia nome - valore FELIX_USAGEREPORTINGENABLED (o dopo una delle coppie nome - valore della variabile di ambiente FELIX_* ), aggiungere la seguente voce.

    - name: FELIX_LOGSEVERITYSCREEN
      value: Debug
    
  3. Salvare la modifica. Dopo aver salvato le tue modifiche, tutti i pod nel daemonset calico-node completano un aggiornamento progressivo che applica le modifiche. calico-cni applica inoltre eventuali modifiche ai livelli di registrazione nella kube-system/calico-config ConfigMap ConfigMap.

Aumento del livello di log per i componenti calico-kube-controllers

Completare la seguente procedura per aumentare il livello di log per il componente calico-kube-controllers.

  1. Modifica la distribuzione eseguendo il comando seguente.

    oc edit deploy calico-kube-controllers -n calico-system
    
  2. Nella coppia nome - valore DATASTORE_TYPE, aggiungere la seguente voce.

    - name: LOG_LEVEL
      value: debug
    
  3. Salvare la modifica. Il pod calico-kube-controllers viene riavviato e applica le modifiche.

Raccolta dei log Calico

  1. Elenca i pod e i nodi presenti nel tuo cluster e prendi nota del nome del pod, dell'indirizzo IP del pod e del nodo di lavoro su cui si verifica il problema.

    oc get pods -o wide -n calico-system
    
  2. Ottieni i log per il pod calico-node sul nodo di lavoro in cui si è verificato il problema.

    oc logs calico-typha-aaa11111a-aaaaa -n calico-system
    
  3. Ottieni i log per il pod calico-kube-controllers.

    oc logs calico-kube-controllers-11aaa11aa1-a1a1a -n calico-system
    
  4. Segui le istruzioni per Debug utilizzando oc exec per ottenere /var/log/syslog, containerd.log, kubelet.log e kern.log dal nodo di lavoro.