Eureka集群搭建


      服務注冊、發現是微服務架構的關鍵原理之一,由於微服務架構是由一系列職責單一的細粒度服務構成的網狀結構,服務之間通過輕量機制進行通信,這就必然引入一個服務注冊發現的問題,也就是說服務提供方要注冊報告服務地址,服務調用方要能發現目標服務。在我們的微服務架構中我們采用了Eureka來完成微服務的注冊與發現。微服務通過Eureka進行注冊,服務調用方通過Eureka找到目標服務。由於服務提供方以集群方式提供服務,Eureka也采用集群的方式來提供服務的注冊與發現,集群中的Eureka實例之間可以進行數據同步,所有Eureka實例中的服務注冊信息都是同步的。那么問題來了,Eureka集群中的實例怎么知道其他實例的存在呢,怎么來發現其他的實例呢?通常的做法是通過DNS,因此我們需要搭建DNS服務器。下面來介紹Euraka集群的搭建過程。

     一、搭建DNS服務器(Linux環境下)

     1、安裝DNS服務器組件,這里我們用的是bind

         命令:yum install -y bind bind-chroot bind-utils

     2、編輯配置DNS主配置文件

         命令:vi  /etc/named.conf

         

    3、修改named.rfc1912.zones文件

    命令: vi  /etc/named.rfc1912.zones

        添加所需要的zone

        

     4、添加設置DNS正向解析

         修改zone配置文件,正向解析

         命令:cd  /var/named/

                 cp named.localhost eureka.com.zone 

                 vi eureka.com.zone

         注意:要和主配置文件[/etc/named.rfc1912.zones]里面定義的zone文件名一致

        

     5、啟動DNS服務器

           命令:service named start

     6、測試檢測域信息是否正常

    檢查之前先看下配置文件有沒有讀取權限

    命令:ll /var/named

       

 

       如果沒有讀取權限,用chmod +r /var/named/* 命令添加即可

       

     7、重新啟動DNS服務器

         命令:service named restart

     8、DNS服務器地址配置

         第一種方式:此方式是暫時修改dns地址,當網絡重啟之后,則自動清除。

 

         命令:vi  /etc/resolv.conf

 

      

      第二種方式:此方式是永久修改dns地址,當網絡重啟之后,不會清除。

    命令:vi   /etc/sysconfig/network-scripts/ifcfg-enp0s25

        

     二、將eureka的dns配置放在jar包外面啟動微服務

 

          docker 命令:docker run –e eurekaServerDNSName=域名 鏡像

     三、EUREKA集群配置

           編寫Eureka 配置文件(application.yml)

            

 

            其中 eureka 的配置分為client 端和server 端:

            Eureka client配置中,eurekaServerURLContext: eureka 表示eureka注冊中心的路徑,默認為http://x.x.x.x:x/eureka/,在eureka的配置文件中加入此配置表

    示eureka作為客戶端向注冊中心注冊,從而構成eureka集群。

    Eureka server 配置中,enableSelfPreservation: false表示在此eureka服務器中關閉自我保護模式,所謂自我保護模式是指,出現網絡分區、eureka在短時間內丟失過

    多客戶端時,會進入自我保護模式,即一個服務長時間沒有發送心跳,eureka也不會將其刪除。默認為true:

          

         

     自我保護模式默認為開啟,這就涉及到閾值因子,默認為0.85,這些在eureka主界面上可以看出:

     

     閾值不能大於最小值,否則將會進入自我保護模式。

           以上是eureka集群的搭建過程,在搭建的過程中踩過很多坑,也有很多收獲,eureka相關的一些配置項就不在這里贅述了,內容比較多,有必要的話我再另外單獨介紹這部分內容。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM