《云計算與虛擬化技術叢書 Service Mesh實戰》—3.4.3 namer

      網友投稿 783 2025-04-04

      3.4.3 namer


      namer用于配置Linkerd的服務發現工具,Linkerd支持配置多個namer以滿足不同需求,每個namer可對應一種服務發現機制,它負責把服務名字經過dtab轉換得到的客戶端名字解析為IP地址和端口集合。當前版本Linkerd支持多種服務發現工具,如基于文件的服務發現機制、ZooKeeper、Consul等,甚至支持發現運行在k8s和marathon編排工具中的服務,使得Linkerd直接從k8s和marathon讀取服務相關信息。namer配置包括下列內容。

      kind:指定選擇哪種類型的服務發現工具,比如上一章中使用的基于文件的服務發現,其類型為io.l5d.fs,還有本章將使用的Consul,其類型為io.l5d.consul。對namer配置,kind是強制要求配置的,否則出錯。當前,Linkerd支持的namer類型有:

      io.l5d.fs

      io.l5d.serversets

      io.l5d.consul

      io.l5d.k8s

      io.l5d.marathon

      io.l5d.zkLeader

      io.l5d.curator

      io.l5d.rancher

      io.l5d.rewrite

      每種類型namer具體配置可參考官方文檔namers(https://linkerd.io/config/1.3.6/linkerd/index.html#namers),在此不作一一介紹,本章著重介紹類型為io.l5d.consul的namer,當然后續章節也會對類型為io.l5d.k8s的namer進行詳細介紹。

      prefix:prefix依賴于namer,默認為/+kind對應的值,如/io.l5d.consul,也可將其自定義為任意其他以/打頭的值。namer在解析名字時以/#+prefix作為前綴,如/#/io.l5d.consul/dc1/booking。

      transformers:用于轉換已解析得到的地址,后續會詳細介紹。

      experimental:標識namer是否處于試驗狀態,默認為false。

      另外,基于所選擇的namer類型,除配置上述通用配置外,可能還需配置特定額外配置,如示例中使用io.l5d.consul類型的namer除通用配置外,還需配置Consul地址和端口、是否包括服務標簽、是否使用Consul的健康監測數據判斷服務健康與否等,其配置如下。

      namers:

      - kind: io.l5d.consul

      prefix: /io.l5d.consul

      host: 127.0.0.1

      port: 8500

      includeTag: false

      setHost: false

      useHealthCheck: true

      還有,Linkerd提供兩種特殊的內置namer:inet和io.buoyant.rinet,其中inet對形如/$/inet/DNSOrIPAddress/Port的客戶端名字進行解析,若DNSOrIPAddress為DNS記錄,則查詢DNS記錄對應的IP地址,解析為IPAddress:Port集合,若為IPAddress,則直接解析為IPAddress:Port,比如/$/inet/127.0.0.1/4140會被解析為127.0.0.1:4140。而io.buoyant.rinet則對形如/$/io.buoyant.rinet/Port/DNSOrIPAddress的客戶端名字進行解析。需要特別注意的是inet和io.buoyant.rinet都以/$打頭,以此區分上述namer。

      除上述所列出的namer,Linkerd還提供一些工具namer,用于輔助實現dtab的復雜變換,但不用作服務發現,我們稱這些namer為rewriting namer,這包括以下工具。

      io.buoyant.http.domainToPathPfx:重寫形如/$/io.buoyant.http.domainToPathPfx/ / 的dtab路徑為以打頭的前綴,然后以/替換的.并反轉,如/$/io.buoyant.http.domainToPathPfx/pfx/foo.buoyant.io/resource/name被重寫為/pfx/io/buoyant/foo/resource/name。

      io.buoyant.http.subdomainOfPfx:重寫形如/$/io.buoyant.http.subdomainOfPfx///的dtab路徑為以打頭的前綴,然后丟棄部分,如/$/io.buoyant.http.subdomainOfPfx/buoyant.io/pfx/foo.buoyant.io/resource/name被重寫為/pfx/foo/resource/name。

      《云計算與虛擬化技術叢書 Service Mesh實戰》—3.4.3 namer

      io.buoyant.hostportPfx:重寫形如/$/io.buoyant.hostportPfx//:/etc的dtab路徑為以打頭的前綴,轉換:為/host/port,然后連接/etc,如/$/io.buoyant.hostportPfx/pfx/host:port/etc被重寫為/pfx/host/port/etc。需注意的是該namer不支持IPv6。

      io.buoyant.porthostPfx:重寫形如/$/io.buoyant.porthostPfx//:/etc的dtab路徑為以打頭的前綴,轉換:為/port/host,然后連接/etc,如/$/io.buoyant.porthostPfx/pfx/host:port/etc被重寫為/pfx/port/host/etc。

      與用于服務發現的namer不同的是rewriting namer以/$打頭,而且無需在namer配置中顯示配置即可使用。

      現假如已獲得客戶端名字/#/io.l5d.consul/dc1/booking,其告之prefix為/io.l5d.consul的namer將解析該客戶端名字成Consul數據中心為dc1,服務名字為booking對應的IP地址和端口集合,如192.168.1.12:39462 192.168.1.13:42251。

      虛擬化 云計算

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:wps表格如何批注(wps表格批注怎么寫)
      下一篇:怎么才能讓word不自動生成數字(word自動生成數字格式怎么改)
      相關文章
      内射少妇36P亚洲区| 亚洲一区无码精品色| 亚洲精品中文字幕无码蜜桃| 亚洲av日韩综合一区二区三区| 国产成人精品日本亚洲专一区| 亚洲成年人免费网站| 亚洲欧洲久久精品| 亚洲欧洲自拍拍偷综合| 久久精品蜜芽亚洲国产AV | 亚洲人成网www| 亚洲国产女人aaa毛片在线| 久久久亚洲欧洲日产国码农村| 人人狠狠综合久久亚洲88| 国产亚洲综合一区柠檬导航| 不卡精品国产_亚洲人成在线| 中文字幕精品亚洲无线码一区应用| 久久久久亚洲av成人无码电影| 亚洲人成色7777在线观看不卡| 亚洲情a成黄在线观看| 国产亚洲精品成人a v小说| 亚洲av再在线观看| 中文字幕亚洲激情| 在线精品亚洲一区二区三区| 亚洲精品无码久久久久去q| 久久精品国产亚洲AV麻豆~| 香蕉蕉亚亚洲aav综合| 亚洲高清视频在线播放| 亚洲另类春色国产精品| 亚洲 欧洲 日韩 综合在线| 亚洲日韩国产一区二区三区在线| 亚洲youwu永久无码精品| 全亚洲最新黄色特级网站| 久久精品国产精品亚洲| 中文字幕亚洲乱码熟女一区二区| 亚洲成色在线综合网站| 亚洲美女视频免费| 亚洲综合av一区二区三区| 豆国产96在线|亚洲| 久久精品国产亚洲AV不卡| 久久亚洲国产视频| 亚洲性69影院在线观看|