J'utilise GCloud, j'ai un cluster kubernate et une instance de cloud SQL. P>
J'ai une simple application nœud.js, qui utilise la base de données. Lorsque je déploie avec L'erreur dans les journaux Docker est: p>
(noeud: 1) Non grodéePromiseReakewarning: Erreur: Connect Enoent / Cloudsql / X-Alcove-224309: Europe-West1: Apprentissage
Au Pipeconnectwrap.afterconnect [comme onComplete] (NET.JS: 1097: 14) P> LI>
ol>
Pouvez-vous vous expliquer comment vous connecter à Cloud SQL à partir de l'application de nœud dockerisé. P> de l'application gcloud déployer code> il a un accès à une base de données. Cependant, lorsque je construis un dockerImage et l'expose, il ne peut pas atteindre la base de données. P>
base_settings: cloud_sql_instances code>. J'utilise la même valeur dans
SocketPath code> config pour la connexion MySQL. LI>
3 Réponses :
Lorsque vous déployez votre application sur App sur App sur App sur App sur l'App sur Le moteur Kubettes n'utilise pas de fichier App.YAML et ne fournit pas ce conteneur de voiture latéral pour vous. pour le mettre en place. Le Doc public montre comment le faire en créant Secrets pour vos informations d'identification de base de données et mettez à jour votre fichier de déploiement avec la configuration du conteneur latéral. Un exemple indiqué dans le document ressemblerait à: p> Application GCloud Déploy CODE>, la plate-forme l'exécute dans un conteneur avec un conteneur de voiture latéral en charge de l'exécution du cloud_sql_proxy (vous le demandez en spécifiant le
base_settings: cloud_sql_instances code> dans votre fichier app.yaml).
En règle générale, la meilleure méthode consiste à se connecter à l'aide d'un conteneur Sidecar à l'intérieur du même pod que votre application. Vous pouvez trouver des exemples sur la page "Connexion du moteur de Google Kubernettes" ici < / a>. Il y a aussi un codelab ici qui va plus en profondeur et pourrait être utile. p>
Pourquoi le conteneur Sidecar est-il la meilleure approche?
@RICOW, je le préfère habituellement pour quelques raisons différentes: Sécurité - Le proxy SQL Cloud Cryption entre elle-même et l'instance, mais ne fait pas de côté client SSL. En utilisant le Sidecar, vous évitez d'exposer tout trafic non crypté. Contrôle - En emballant le Sidecar avec application, vous garantissez que seules les applications censées avoir accès à la base de données, font. Isolement - Comme chaque POD a sa propre instance, tout problème avec une podage spécifique reste limité à cette pod. Cela aide à prévenir les problèmes dans une cosse qui renverse et en affectant une autre.
La documentation mentionne qu'il est possible de se connecter en utilisant une adresse IP interne. Quelqu'un a-t-il essayé? P>
Ce n'est pas une réponse. Veuillez utiliser la section Commentaires pour commentaires ou questions supplémentaires.