Questa pagina descrive in dettaglio come risolvere i problemi comuni di provisioning del software che potresti riscontrare.
Risolvere i problemi relativi al bootstrapping del control plane
Per risolvere i problemi relativi al processo del control plane di bootstrap, controlla le seguenti risorse all'interno del cluster KIND:
Esamina il pod
anthos-cluster-operator
:kubectl logs deployment/anthos-cluster-operator -c operator -n kube-system
Esamina le risorse
AddOn
:kubectl get AddOn -A
Per ulteriori informazioni, puoi anche visualizzare le risorse con il comando
gpc-addons
.Consulta le risorse di
AddOnSet
:kubectl get AddOnSet -A
Se l'avvio del control plane non viene completato dopo la creazione del cluster di infrastruttura dell'organizzazione, ad esempio durante un pivot delle risorse, esporta il file
kubeconfig
manualmente:kubectl get secret root-admin-kubeconfig -n root -o jsonpath="{.data.value}" | base64 -d > /root/path/to/root-admin-kubeconfig.yaml
Risolvere i problemi relativi alla creazione del cluster
Per risolvere i problemi relativi alla procedura di creazione del cluster:
Esamina la fase attuale del cluster e verifica se l'oggetto
Harbor-operator
o Harbor esiste e controllane lo stato dal cluster KIND nella risorsaAddOnSet
eseguendo il seguente comando:kubectl get addonset -n fleet-root root-admin -o yaml
Dopo aver eseguito questo comando, trova la fase attuale in
status.currentStage
.Dal cluster dell'infrastruttura dell'organizzazione, controlla le risorse nello spazio dei nomi
harbor-system
. Se hai eseguito il deployment dell'oggettoHarborCluster
tramite il comandokubectl get harborcluster harbor -n harbor-system
, significa che l'installazione è passata alla seconda fase, la fase Harbor.Esamina il campo
status
nell'oggettoHarborCluster
:kubectl -n harbor-system get harborcluster harbor
Se lo stato indica
healthy
, verifica la sua funzionalità tramite il portale web utilizzando il comandodocker push
.Accedi al portale web all'URL segnalato. Ad esempio
https://10.200.0.36:10443
.Nel bootstrapper, esegui il comando
docker push
.Se lo stato è
unhealthy
, esamina i dettagli delle condizioni di stato eseguendo la seguente voce:kubectl -n harbor-system get harborcluster harbor -o yaml
Se lo stato è
healthy
, vai alla sezione Controlla lo stato di Istio. Se lo stato non mostrahealthy
, vai alla sezione successiva, Valuta le risorse dello spazio dei nomi Harbor.
Valuta le risorse dello spazio dei nomi Harbor
Questi passaggi devono essere eseguiti solo se le risorse harbor-system
non
hanno lo stato healthy
. Per controllare lo stato delle risorse harbor-system
, consulta Risolvere i problemi relativi alla creazione del cluster.
Valuta le risorse dello spazio dei nomi
harbor-system
:kubectl get all -n harbor-system
Controlla lo stato delle risorse correlate all'operatore Harbor, inclusi gli operatori PostgreSQL e Redis creati come grafici secondari durante la seconda fase del processo di creazione del cluster dell'infrastruttura dell'organizzazione. Verifica che i seguenti operatori siano nello stato
Running
:deployment/harbor-operator-harbor-operator deployment/harbor-operator-postgres-operator deployment/harbor-operator-redisoperator
Verifica che le risorse per i componenti PostgreSQL, Redis e Harbor abbiano tutte lo stato
healthy
. Se alcuni pod non sono nello statohealthy
, esamina i dettagli del pod non riuscito utilizzando questi comandi:kubectl get pod -o wide kubectl describe pod
Puoi anche visualizzare i log dell'operatore di gestione utilizzando questo comando:
kubectl logs -f deploy/harbor-operator-postgres-operator
Per controllare la risorsa PostgreSQL, visualizza
statefulset/postgresql-harbor-system-harbor
.Per controllare la risorsa Redis, visualizza:
- Istanza Redis:
statefulset/rfr-harbor-redis
- Redis sentinel:
deployment/rfs-harbor-redis
I componenti principali di Harbor vengono implementati solo quando i due componenti sono pronti.
Se alcuni pod dei componenti principali di Harbor non funzionano, esamina i log del pod non funzionante. In alcuni casi, si verifica un problema di comunicazione con le istanze PostgreSQL o Redis.
Ad esempio, se il componente principale di Harbor non riesce a connettersi a PostgreSQL o Redis con le credenziali fornite, esiste un potenziale problema con Harbor Operator, che è responsabile della configurazione delle credenziali prima di eseguire il deployment dei componenti principali di Harbor.
- Istanza Redis:
Controlla lo stato di Istio
Per verificare che lo stato del pod sia istio
, ad esempio istio-system
e
service/istio-ingressgateway
, controlla se la porta 10443 è esposta.