2017-01-09 2 views
0

J'ai une pile netflix oss fonctionnant sur une boîte Linux. cette pile a Eureka, et un tas de microservices (hello services) installés, tous en cours d'exécution dans des conteneurs individuels docker.Ajouter Zuul à l'installation OSS de Netflix

Il a été installé à l'aide de Maven et Spring Boot.

Ma question est: Comment puis-je ajouter Zuul à cette pile? J'ai trouvé des trucs sur le net mais ils installent Eureka aussi, et je suis affamé d'écraser l'Eureka actuel si je cours ça.

Répondre

0

Vous devez ajouter l'annotation @EnableZuulProxy à la classe principale

@SpringBootApplication 
@EnableZuulProxy 
@EnableHystrixDashboard 
public class ZuulApp{ 
    public static void main(String[] args) { 
     SpringApplication.run(ZuulApp.class, args); 
    } 
} 

et dans le fichier application.yml ajouter les routes avec les noms de vos eureka-microservices

zuul: 
    ignoredServices: '*' 
    routes: 
     microservice1: 
     path: /microservice1/** 
     stripPrefix: false 

     microservice2: 
     path: /microservice2/** 
     stripPrefix: false 

     ... 
     #If you have hystrix 
     hystrix: 
      threadpool: 
      default: 
       maxQueueSize: 100 
       queueSizeRejectionThreshold: 100 
      command:  
      default: 
      execution: 
       isolation: 
        thread: 
         timeoutInMilliseconds: 60000 
    #load balancing 
     ribbon: 
     MaxAutoRetries: 2 
     MaxAutoRetriesNextServer: 2   
     OkToRetryOnAllOperations: true 
     ServerListRefreshInterval: 2000 
     ConnectTimeout: 50000 
     ReadTimeout: 50000 

Par défaut Zuul fonctionne sur le port 8500.

La dépendance maven

0
  1. Vérifiez également que vous utilisez serviceid pour le routage d'URL. Par exemple:

    zuul: 
        routes: 
        httpbin: 
         path: /** 
         serviceId: httpbin 
    
  2. Zuul doit être au courant de eureka pour pouvoir récupérer les Corrigeons d'IP pour les différents services qui sont en cours d'exécution.

    ribbon: 
        eureka: 
        enabled: false 
    

La configuration ci-dessus vous assurer que vous pouvez ajouter dynamiquement plusieurs serveurs pour des services spécifiques à l'avenir sans modifier la configuration du serveur de routage Zull car il sera en mesure d'interroger et mettre à jour les serveurs des services spécifiques en cours d'exécution par interroger eureka