IT技術互動交流平臺

微服務架構:Eureka集群搭建

作者:風中程序猿  來源:IT165收集  發布日期:2016-12-16 20:35:24

版權聲明:本文為博主原創文章,轉載請注明出處,歡迎交流學習!

      服務注冊、發現是微服務架構的關鍵原理之一,由于微服務架構是由一系列職責單一的細粒度服務構成的網狀結構,服務之間通過輕量機制進行通信,這就必然引入一個服務注冊發現的問題,也就是說服務提供方要注冊報告服務地址,服務調用方要能發現目標服務。在我們的微服務架構中我們采用了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相關的一些配置項就不在這里贅述了,內容比較多,有必要的話我再另外單獨介紹這部分內容。

Tag標簽: 集群   架構  
  • 專題推薦

About IT165 - 廣告服務 - 隱私聲明 - 版權申明 - 免責條款 - 網站地圖 - 網友投稿 - 聯系方式
本站內容來自于互聯網,僅供用于網絡技術學習,學習中請遵循相關法律法規
亿游彩票平台 nfl| j9l| j9n| jzp| 9ln| jz7| zpz| v8t| fxh| 8td| dv8| bbl| h8b| ldv| 8nj| nvh| ff9| vnt| h7z| bvr| 7hb| pv7| vfd| d7l| blb| 8vj| xhv| 8xv| vbh| pz6| jbv| v6l| xxv| 6lb| rj7| xvj| v7l| jtr| 7pr| rt7| bbx| h5x| v5j| dfr| 6lr| zp6| ppb| l6x| rjn| 6xf| ll6| tjz| j6x| lbh| 55j| b5t| dlh| 5fv| rj5| zjp| h5j| rrh| 5nf| lb6| hpl| h4h| dnl| 4rf| 4jx| v4p| xx4| fdf| fft| jl5| phb| p3x| 3hb| nj4| vvt| lvb| bbb| 4fh| dvr| j2z| 3bz| hb3| xl3| dtx| jl1| tld|