Lorsque vous déployez une application Spring Cloud ou Dubbo développée localement sur Serverless App Engine (SAE), vous pouvez utiliser le registre de services intégré à SAE ou un registre de services hébergé par Microservices Engine (MSE). Cette rubrique explique comment configurer l'enregistrement et la découverte de services basés sur Nacos pour une application dans la console SAE.
Prérequis
Un réseau privé virtuel (VPC) est créé et disponible. Pour plus d'informations, consultez la rubrique Création et gestion d'un réseau privé virtuel.
Avant d'exécuter l'application, ajoutez le port d'accès au registre de services Nacos (par exemple, 8848) à un groupe de sécurité. Pour plus d'informations, consultez la rubrique Ajout d'une règle de groupe de sécurité.
Vous avez créé un moteur MSE Nacos et un namespace pour l'instance.
Recommandations
Si vous disposez d'un grand nombre d'applications de microservices, privilégiez les types de registres de services suivants, classés par ordre de recommandation décroissant :
Registre MSE Nacos
Registre de services géré en interne
Registre de services intégré à SAE
Pour plus d'informations, consultez les rubriques MSE Nacos et Nacos open source.
Limites
Pour plus d'informations sur les limites liées à l'utilisation d'un moteur MSE Nacos, consultez la rubrique Application des SDK MSE Nacos et versions restreintes des SDK Nacos.
Points d'entrée
Le point d'entrée varie selon le scénario.
Création d'une application
Connectez-vous à la console SAE. Dans le volet de navigation de gauche, sélectionnez Applications > Applications. Sélectionnez la région et le namespace cibles, puis cliquez sur Create Application.
Après avoir configuré les paramètres sur la page Basic Information, cliquez sur Next: Advanced Settings.
Modification d'une application en cours d'exécution
Le redéploiement d'une application entraîne son redémarrage. Afin d'éviter des erreurs imprévisibles telles que des interruptions d'activité, nous vous recommandons de déployer les applications pendant les heures creuses.
Connectez-vous à la console SAE. Dans le volet de navigation de gauche, sélectionnez Applications > Applications. Sélectionnez la région et le namespace cibles, puis cliquez sur le nom de votre application cible.
Sur la page Basic Information de l'application, cliquez sur Deploy Application.
Modification d'une application arrêtée
Connectez-vous à la console SAE. Dans le volet de navigation de gauche, sélectionnez Applications > Applications. Sélectionnez la région et le namespace cibles, puis cliquez sur le nom de votre application cible.
Sur la page Basic Information de l'application, cliquez sur Modify Application Configuration.
Configuration de l'enregistrement et de la découverte de services
Recherchez et développez la section Service Registration and Discovery. Définissez le paramètre Nacos-based Registry Service and Discovery sur MSE Nacos Professional Edition, puis sélectionnez votre MSE Nacos Instance et le Namespace correspondant.
Vérification des résultats
Pour vérifier le déploiement, accédez à la page Basic Information de l'application, puis cliquez sur l'onglet Instances. Dans la colonne Actions de la liste des instances, cliquez sur Webshell et exécutez les commandes de vérification dans la fenêtre Webshell. Pour plus d'informations, consultez la rubrique Utilisation de Webshell pour diagnostiquer les applications.
Vérifiez que le service est correctement enregistré.
curl -X GET 'http://192.168.XX.XX:8848/nacos/v1/ns/instance/list?serviceName=service-provider'
service-provider: nom du service.192.168.XX.XX:8848: adresse IP et port de l'hôte sur lequel Nacos s'exécute. Remplacez192.168.XX.XXpar le point de terminaison interne de votre moteur MSE Nacos. Pour obtenir le point de terminaison interne, connectez-vous à la console MSE, cliquez sur l'instance cible sur la page Instances, puis recherchez le point de terminaison sur la page Basic Information de l'instance.
La sortie suivante indique que le service est correctement enregistré :
[/home/admin]$ curl -X GET 'http://mse-xxx-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance/list?serviceName=service-provider'
{"name":"DEFAULT_GROUP@@service-provider","groupName":"DEFAULT_GROUP","clusters":"","cacheMillis":10000,"hosts":[],"lastRefTime":1679984302840,"checksum":"","allIPs":false,"reachProtectionThreshold":false,"hitWeightProtection":false,"valid":true,"dom":"service-provider"} [/home/admin]$
Vérifiez que le chemin d'accès de bout en bout pour l'application de microservice fonctionne.
Exécutez l'une des commandes suivantes. 127.0.0.1:18082 correspond à l'adresse IP et au port d'accès de l'hôte sur lequel s'exécutent les applications fournisseur et consommateur.
-
curl http://127.0.0.1:18082/echo-rest/{your-custom-variable} -
curl http://127.0.0.1:18082/echo-feign/{your-custom-variable}
Une réponse de type 192.168.0.222:hello indique que l'application consommateur a appelé avec succès l'application fournisseur, ce qui confirme que le chemin d'accès aux microservices fonctionne correctement.
[/home/admin]$ curl http://127.0.0.1:18082/echo-rest/hello
192.168.0.222:hello
[/home/admin]$