<li id="japvw"><acronym id="japvw"></acronym></li><rp id="japvw"></rp>
<dd id="japvw"></dd>
<th id="japvw"></th>
      1. <dd id="japvw"></dd>

        F5 對接 Eureka 實現服務發現

        來源:
        作者:F5
        時間:2022-09-08
        183
        本章節為 F5 現代應用網關系列文章之 Eureka 部分。本次主要分享 MSDA 現代應用網關融合 Eureka 服務注冊發現中心,實現服務動態發現;通過這種融合,F5 就充當了傳統單體應用架構與現代分布式應用架構的鏈接橋梁。


        作者:張宇馳,喻純政 

        職務:解決方案顧問

        公司:F5


        本章節為 F5 現代應用網關系列文章之 Eureka 部分。本次主要分享 MSDA 現代應用網關融合 Eureka 服務注冊發現中心,實現服務動態發現;通過這種融合,F5 就充當了傳統單體應用架構與現代分布式應用架構的鏈接橋梁。



        Modern Application


        Eureka 簡介

        Eureka 是一個由 Netflix 開發的發現服務器。用戶可以通過發出 REST 請求來注冊服務,取消注冊,以及發現其他服務。除此以外,Eureka 還提供負載均衡的能力。


        Eureka 包含兩個組件:Eureka Client 和 Eureka Server。配合用戶的應用客戶端、應用服務端一起協同工作,以達到服務注冊及調用的效果。


        Eureka 具體的架構圖如下:

        Image

        圖片來自官網


        如圖所示,應用服務會把 IP 地址和端口注冊到 Eureka 上,并通過定時發送心跳包來告訴 Eureka 自己的健康狀態。為了防止服務的消費方(圖中的 Application Client)調用到已經下線的服務,應用服務在下線的時候,會給 Eureka 服務器發送消息,通知 Eureka 服務器把自己從服務列表刪除。服務的消費方會通過查詢 Eureka 服務器獲取自己想要調用服務的具體信息。


        當獲取到服務的具體信息后,就會發送對服務的直接調用了。Eureka 服務器本身也是以集群的方式部署的,不同節點直接會復制同步數據。


        通過這方法,微服務架構中的東西向流量調用才能有條不紊的進行。



        Eureka 特性

        Image

        1
        對等通信

        Eureka 可以通過集群的方式部署, Eureka Server 利用節點之間的對等通信機制,而并非采用常見的選舉機制,沒有主從節點之分,每一個節點的關系都是平等的。節點互相通信,交換信息來保持一致,提高了可用性,每個節點需要添加一個或多個有效的 serviceUrl 指向其他節點。每個節點都可被視為其他節點的副本。


        2
        故障轉移

        如果集群中某節點出現故障,Eureka 客戶端就會自動切換,請求新節點。故障節點恢復后會重新加入集群節點中。


        3
        心跳檢測

        Eureka 會和注冊的服務保持心跳檢測,默認時間為30秒,如果發現某服務不能在30秒發送心跳信息,并持續3次(90秒),Eureka 服務器會下線這個實例。


        4
        數據一致性

        Eureka 等服務注冊中心的主要使用場景就是分布式、微服務架構。在分布式系統中,一個繞不開的概念就是一致性原則。根據 CAP 理論,我們知道,一個分布式系統在一致性的策略上,最多只能滿足一致性、可用性和分區容錯性三者中的兩者。


        Eureka 在設計時滿足了可用性和分區容錯性兩項原則,也就是說,在 Eureka 集群中,只要有一臺 Eureka 能夠正常提供服務,就可以保證注冊服務可用,但是帶來的后果是 Eureka 會放棄強一致性,但這并不是完全放棄數據一致性,數據的最終一致性還是可以保障的。


        相信通過前幾期的文章,您已經了解到不同注冊中心的特點差異了,在一致性方面,市面主流服務注冊中心的的對比如下:

        Image


        Modern Application


        F5 LTM 通過 iApps LX  Eureka 的融合實現服務發現

        隨著架構技術的演進,分布式、微服務架構越來越流行,為如何把敏態的微服務組件與傳統 F5 硬件負載均衡設備聯動,是基礎架構團隊、網絡團隊、應用開發團隊三者面臨的一個難題?,F在我們可以利用 F5 上的 iApps LX 組件,使 F5 負載均衡設備和第三方注冊中心 Eureka 通信,實時獲取在 Eureka 上注冊的微服務組件信息,同時在 F5 設備上創建維護 Pool。

        具體流量交互過程:

        Image

        們給提前定義好的接口發送一個創建服務的請求,POST 請求的 payload 為 json 格式的 template,這個 template 的內容是支持我們自定義的,在這里我們需要包含服務發現的類型,比如我們指定 Eureka。我們還要在這個 json 里面提供 Eureka 的 ip 地址,需要發現的服務名等。


        當我們 iApps LX 組件收到這個 POST 請求的時候,就會觸發 iApps LX 里定義的事件函數,去向服務注冊中心發送 REST 請求,拿到數據。當然這個過程也完全支持用圖形化界面 GUI 的方式配置。



        Modern Application


        MSDA for Eureka 的配置過程

        與前幾篇文章介紹的操作方式相似,在創建之前,我們需要設置好 Eureka 注冊中心。

        Image

        然后我們就開始 F5 的配置。

        1
        第一步

        我們需要在 BIG IP 的 iApps LX 模塊中導入事先下載好的 f5-iapplx-msda-eureka rpm 包

        Image


        2
        第二步

        上傳完成后會生成一個新的msdazkTempletes,點擊查閱 iApps LX->Templates->Templates LX

        Image

        3
        第三步

        然后我們就可以通過 iApps LX->Application Services->Application LX 創建我們的服務

        Image

        4
        第四步

        我們需要在 GUI 上填入對應信息,如 Eureka 的 IP 地址,端口,以及要訪問的 URL,

        Image

        我們還可以配置負載均衡算法及健康檢查,如下圖:

        ImageImage


        5
        第五步

        設置完畢,GUI 會將我們填入的信息自動生成一份 Json 文件,如下圖所示:

        Image

        以下 json 文件為示例,具體以實際生成為準:

        Image

        6
        第六步

        我們點擊 Deploy,則 iApps LX 服務就可以成功部署了。部署完成如下圖:

        Image

        檢查Pool的創建

        Image

        Pool 的詳情如下

        Image

        通過在 Local Traffic 中新建 Virtual Servers,這樣我們就向外部用戶或傳統應用實現了微服務應用的暴露。


        利用 MSDA 實現基于 Eureka 的平臺的服務發現,可以讓現有單體架構可以快速融入分布式機構,并且打通傳統負載均衡設備與微服務架構的隔閡。您也可以下載我們的 rpm 包,自己親手實踐,下載鏈接見下文。



         Modern Application


         免費使用 

        歡迎使用 F5 BIG-IP 交付現代應用,并作為現代應用和傳統應用之間的鏈接橋梁


        下載 MSDA 和 MSRA 的 RPM 包:

        Image

        免責聲明:

        這些 iAppsLX RPM 軟件包并非 F5 公司官方支持的產品,如有任何問題或反饋,請向 GitHub repo 上提交 issue,或發送電子郵件至 msda@f5.com 。



        立即登錄,閱讀全文
        版權說明:
        本文內容來自于,本站不擁有所有權,不承擔相關法律責任。文章內容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權,請聯系管理員(zzx@kchuhai.com)刪除!
        掃碼登錄
        打開掃一掃, 關注公眾號后即可登錄/注冊
        加載中
        二維碼已失效 請重試
        刷新
        賬號登錄/注冊
        個人VIP
        小程序
        快出海小程序
        公眾號
        快出海公眾號
        商務合作
        商務合作
        投稿采訪
        投稿采訪
        出海管家
        出海管家
        美女在线看免费视频网站,秘霞网,免费a级毛片18禁止免费网站,免费观看性行为视频的网站
        <li id="japvw"><acronym id="japvw"></acronym></li><rp id="japvw"></rp>
        <dd id="japvw"></dd>
        <th id="japvw"></th>
          1. <dd id="japvw"></dd>