Cette page explique comment résoudre les problèmes courants de provisionnement de logiciels que vous pouvez rencontrer.
Résoudre les problèmes d'amorçage du plan de contrôle
Pour résoudre les problèmes liés au processus du plan de contrôle d'amorçage, consultez les ressources suivantes dans le cluster KIND :
Examinez le pod
anthos-cluster-operator
:kubectl logs deployment/anthos-cluster-operator -c operator -n kube-system
Inspectez les ressources
AddOn
:kubectl get AddOn -A
Vous pouvez également afficher les ressources avec la commande
gpc-addons
pour en savoir plus.Consultez les ressources
AddOnSet
:kubectl get AddOnSet -A
Si l'amorçage du plan de contrôle ne se termine pas après la création du cluster d'infrastructure de l'organisation, par exemple lors d'un pivot de ressources, exportez manuellement le fichier
kubeconfig
:kubectl get secret root-admin-kubeconfig -n root -o jsonpath="{.data.value}" | base64 -d > /root/path/to/root-admin-kubeconfig.yaml
Résoudre les problèmes de création de clusters
Pour résoudre les problèmes liés à la création du cluster, procédez comme suit :
Examinez l'état actuel du cluster et vérifiez si l'objet
Harbor-operator
ou Harbor existe et vérifiez son état à partir du cluster KIND dans la ressourceAddOnSet
en exécutant la commande suivante :kubectl get addonset -n fleet-root root-admin -o yaml
Après avoir exécuté cette commande, recherchez l'étape actuelle dans
status.currentStage
.Depuis le cluster d'infrastructure de l'organisation, vérifiez les ressources dans l'espace de noms
harbor-system
. Si vous avez déployé l'objetHarborCluster
à l'aide de la commandekubectl get harborcluster harbor -n harbor-system
, cela indique que l'installation est passée à la deuxième étape, l'étape Harbor.Inspectez le champ
status
dans l'objetHarborCluster
:kubectl -n harbor-system get harborcluster harbor
Si l'état indique
healthy
, vérifiez sa fonctionnalité via le portail Web à l'aide de la commandedocker push
.Accédez au portail Web à l'URL signalée. Par exemple :
https://10.200.0.36:10443
.Dans le programme d'amorçage, exécutez la commande
docker push
.Si l'état est
unhealthy
, consultez les détails des conditions d'état en exécutant l'entrée suivante :kubectl -n harbor-system get harborcluster harbor -o yaml
Si l'état indique
healthy
, accédez à la section Vérifier l'état d'Istio. Si l'étathealthy
ne s'affiche pas, passez à la section suivante, Évaluer les ressources de l'espace de noms Harbor.
Évaluer les ressources d'espace de noms Harbor
Ces étapes ne doivent être effectuées que si les ressources harbor-system
n'ont pas l'état healthy
. Pour vérifier l'état de vos ressources harbor-system
, consultez Résoudre les problèmes de création de clusters.
Évaluez les ressources de l'espace de noms
harbor-system
:kubectl get all -n harbor-system
Vérifiez l'état des ressources liées à l'opérateur Harbor, y compris les opérateurs PostgreSQL et Redis qui sont créés en tant que sous-graphiques lors de la deuxième étape du processus de création du cluster d'infrastructure de l'organisation. Vérifiez que les opérateurs suivants sont à l'état
Running
:deployment/harbor-operator-harbor-operator deployment/harbor-operator-postgres-operator deployment/harbor-operator-redisoperator
Vérifiez que l'état des ressources des composants PostgreSQL, Redis et Harbor est
healthy
. Si certains pods ne sont pas à l'étathealthy
, examinez les détails du pod en échec à l'aide des commandes suivantes :kubectl get pod -o wide kubectl describe pod
Vous pouvez également afficher les journaux de l'opérateur de gestion à l'aide de cette commande :
kubectl logs -f deploy/harbor-operator-postgres-operator
Pour vérifier la ressource PostgreSQL, consultez
statefulset/postgresql-harbor-system-harbor
.Pour vérifier la ressource Redis, consultez les éléments suivants :
- Instance Redis :
statefulset/rfr-harbor-redis
- Sentinel Redis :
deployment/rfs-harbor-redis
Les composants principaux de Harbor ne sont déployés que lorsque les deux composants sont prêts.
Si certains pods de composants principaux Harbor échouent, examinez les journaux du pod en échec. Dans certains cas, un problème de communication se produit avec les instances PostgreSQL ou Redis.
Par exemple, si le composant principal de Harbor ne parvient pas à se connecter à PostgreSQL ou à Redis avec les identifiants fournis, il peut y avoir un problème avec l'opérateur Harbor, qui est responsable de la configuration des identifiants avant le déploiement des composants principaux de Harbor.
- Instance Redis :
Vérifier l'état d'Istio
Pour vérifier que l'état du pod est istio
, tel que istio-system
et service/istio-ingressgateway
, vérifiez si le port 10443 est exposé.