Condividi tramite


Il file di configurazione non è disponibile durante la connessione

Questo articolo descrive come risolvere i problemi che si verificano quando non è possibile connettersi a un cluster servizio Azure Kubernetes a causa di un file di configurazione mancante o non valido.

Prerequisiti

Sintomi

Durante un tentativo di connessione al cluster, viene visualizzato un messaggio di errore simile al testo seguente:

Unable to connect to the server: dial tcp [::1]:8080: connectex: No connection could be made because the target machine actively refused it. 

error: You must be logged in to the server (the server has asked for the client to provide credentials)

Cause

Lo strumento kubectl e altri strumenti di connessione Kubernetes usano un file di configurazione locale denominato config. Il file di configurazione contiene le credenziali di autenticazione e i dettagli per la connessione al cluster. Per impostazione predefinita:

Ciò che accade durante una sessione Kubernetes tentata dipende quindi dall'utente che esegue il comando kubectl. Se è stato eseguito l'accesso come utente A ed è stato eseguito entrambi i comandi, ecco cosa accade:

  • Il az aks get-credentials comando tenta di aggiungere i nuovi parametri kubeconfig nel file C:\Users\A\.kube\config .

  • Il comando kubectl tenta di eseguire la ricerca nel file C:\Users\A\.kube\config .

Tuttavia, per kubectl, se il puntatore al file kubeconfig è stato modificato, il file usato per accedere al cluster dovrebbe trovarsi in un percorso diverso.

Nota

Un file kubeconfig è un riferimento a un file che contiene parametri di configurazione per l'accesso ai cluster Kubernetes. Non fa necessariamente riferimento a un file denominato kubeconfig.

L'errore si verifica se si verifica uno degli scenari seguenti:

Causa 1: il file di configurazione non esiste

Il file di configurazione non esiste nel computer.

Soluzione: salvare le credenziali

Caricare il file di configurazione eseguendo il comando nell'interfaccia della az aks get-credentials riga di comando di Azure, che salva le credenziali. Se non si vuole usare il percorso predefinito, specificare il --file <config-file-location> parametro con il percorso della configurazione , ad esempio ~/Dir1/Dir2/config o C:\Dir1\Dir2\config.

az aks get-credentials --resource-group <cluster-resource-group> \
    --name <cluster-name> \
    [--file <config-file-location>]

Causa 2: il file di configurazione si trova nella directory errata

Il file di configurazione si trova nel computer, ma si trova in una directory diversa da quella in cui il az aks get-credentials comando e/o lo strumento kubectl lo prevede.

Soluzione: spostare il file di configurazione , salvare di nuovo le credenziali o modificare la variabile di ambiente KUBECONFIG

Eseguire una o più delle azioni seguenti:

  • Spostare il file di configurazione nella directory in cui si vuole che si tratti.

  • Eseguire il comando az aks get-credentials. Specificare il percorso desiderato se non è il percorso predefinito.

    az aks get-credentials --resource-group <cluster-resource-group> \
        --name <cluster-name> \
        [--file <config-file-location>]
    
  • Usare una delle opzioni seguenti per modificare la posizione in cui kubectl cerca i parametri di configurazione:

Causa 3: il file di configurazione è scaduto o è danneggiato

Il file di configurazione si trova nel computer. Si tratta anche della directory prevista per il az aks get-credentials comando e lo strumento kubectl. Ma il file è scaduto o danneggiato.

Soluzione: ristabilire le credenziali

Ristabilire le credenziali, perché le credenziali esistenti potrebbero essere scadute o danneggiate. In tal caso, è possibile eseguire il az aks get-credentials comando con il --overwrite-existing parametro .

az aks get-credentials --resource-group <cluster-resource-group> \
    --name <cluster-name> \
    --overwrite-existing \
    [--file <config-file-location>]

Contattaci per ricevere assistenza

In caso di domande o bisogno di assistenza, creare una richiesta di supporto tecnico oppure formula una domanda nel Supporto della community di Azure. È possibile anche inviare un feedback sul prodotto al feedback della community di Azure.