Utiliser un registre privé d'images pour les déploiements de Dynamic Engine
Avant de commencer
- Ne modifiez ni le chemin, ni le tag de l'image, pour chaque service Dynamic Engine.
Pourquoi et quand exécuter cette tâche
Lorsque le registre public n'est pas accessible, vous pouvez configurer un registre d'images alternatif pour obtenir les charts pour déployer Dynamic Engine ou le mettre à niveau. Cela permet aux clusters Kubernetes d'effectuer un pull des images requises depuis un registre privé ou interne.
Cette procédure indique comment configurer un registre d'images privé en tant que cache ou proxy pour les déploiements de Dynamic Engine.
- Dans cet exemple, le registre d'images privé est accessible à l'adresse myregistry.example.com et nécessite des identifiants.
- Le référentiel de proxy vers ghcr.io est accessible à l'adresse myregistry.example.com/docker-ghcr-io-remote.
Procédure
Résultats
Une fois terminée, toutes les versions de Dynamic Engine doivent être installées. Tous les déploiements nommés des charts Helm, comme dynamic-engine-crd, dynamic-engine et dynamic-engine-environment sont présents.
Tous les pods de l'espace de noms doivent être en cours d'exécution.
Dans Talend Management Console, le statut de cet environnement devient Ready (Prêt), confirmant qu'il est prêt à exécuter des tâches ou des plans.
Si le registre d'images est mal configuré ou si le pull des images est impossible, les pods affichent des erreurs ImagePullBackoff.
Ce tableau liste les erreurs fréquentes lors de l'installation ou de la mise à niveau des charts de Dynamic Engine : dynamic-engine-crd, dynamic-engine et dynamic-engine-environment.
| Erreur | Cause | Remédiation |
|---|---|---|
| Le chart est introuvable |
|
|
| L'utilisateur·trice n'est pas authentifié·e. | La commande de connexion n'est pas exécutée ou des identifiants sont manquants | Connectez-vous au registre d'images privé configuré. |
| L'utilisateur·trice n'a pas l'autorisation. | Autorisations insuffisantes sur le registre privé | Assurez-vous que votre utilisateur·trice peut effectuer des pulls d'images depuis le registre configuré. |
Avec un proxy correctement configuré, les commandes suivantes doivent retourner le même résultat :
- Afficher les charts du registre privé :
helm show chart oci://myregistry.example.com/docker-ghcr-io-remote/talend/helm/dynamic-engine \ --version $DYNAMIC_ENGINE_VERSION - Afficher les charts du registre public :
helm show chart oci://ghcr.io/talend/helm/dynamic-engine --version $DYNAMIC_ENGINE_VERSION
Ce tableau liste les erreurs les plus fréquentes lorsque le service dynamic-engine-operator tente d'installer ou de mettre à niveau un chart de services dans le Dynamic Engine ou dans l'espace de noms de l'environnement de Dynamic Engine.
| Erreur | Cause | Remédiation |
|---|---|---|
| Le chart est introuvable | Le registre d'images Docker n'est pas configuré correctement | Vérifiez la configuration du registre d'images. |
| L'utilisateur·trice n'est pas authentifié·e. | Les identifiants du registre d'images Docker ne sont pas configurés | Vérifiez la configuration du registre d'images. |
| L'utilisateur·trice n'a pas l'autorisation. | Les identifiants de registre d'image Docker n'ont pas d'autorisation de lecture | Vérifiez la configuration du registre d'images. |
Que faire ensuite
Après un déploiement réussi, vous pouvez ajouter des tâches à l'environnement de Dynamic Engine comme pour les moteurs standards. Pour plus de détails, consultez Ajouter une tâche de Job dans un environnement de Dynamic Engine.
Si votre cluster Kubernetes est en air gap, les opérations de Pull d'images sont routées via le registre privé. Ainsi, le cluster ne nécessite pas d'accès direct HTTP ou HTTPS en sortie.
Cependant, si les services Dynamic Engine doivent accéder aux endpoints HTTP ou HTTPS, ce qui est souvent le cas lorsque vous utilisez Qlik Talend Cloud, vous devez également configurer un proxy HTTP dans votre fichier de valeurs Helm.
Pour des instructions, consultez Utiliser un proxy HTTP pour les services Dynamic Engine dans des environnements en air gap.