成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Consul實戰(zhàn):術(shù)語和命令解釋

開發(fā) 前端
本文主要介紹了后面會用到的一些術(shù)語和一些啟動命令選項,還有就Consul會用到的幾個端口,通過了解這些,方便在后面的文章中學(xué)習(xí)Consul鋪開道路。

[[378600]]

 這篇文章主要說下Consul里面用到最多的術(shù)語然后再說明下啟動命令背后發(fā)生的故事,為后面搭建一個Consul集群做準(zhǔn)備。

Agent

Consul集群中在后臺長時間運行的進程就是代理。代理通過consul agent啟動。代理能夠以客戶端或服務(wù)端模式運行。因為集群中每個節(jié)點都必須有一個代理,因此將節(jié)點稱為客戶端或服務(wù)器更為簡單。所有的代理都可以有DNS或HTTP接口,負(fù)責(zé)健康檢查和保持服務(wù)同步。

Client

客戶端是將所有RPC請求轉(zhuǎn)發(fā)到服務(wù)端的代理。客戶端是相對無狀態(tài)的。客戶端跑的唯一后臺程序就是參與LAN的gossip池。這種活動資源開銷最小,并且僅消耗少量的網(wǎng)絡(luò)帶寬。

Server

服務(wù)端是有擴展職責(zé)集的代理,擴展功能包括參與Raft仲裁,維護集群狀態(tài),響應(yīng)RPC請求,與其他數(shù)據(jù)中心交換WAN gossip,以及將查詢轉(zhuǎn)發(fā)給集群leader或遠(yuǎn)程數(shù)據(jù)中心。

Datacenter

數(shù)據(jù)中心是一個私有的,低延遲的,高帶寬的網(wǎng)絡(luò)環(huán)境。當(dāng)然這不包括穿越公網(wǎng)的通信,但出于我們的目的,單個EC2區(qū)域內(nèi)的多個可用區(qū)將被視為單個數(shù)據(jù)中心的一部分。

Consensus

共識協(xié)議就是集群選舉leader的一致性協(xié)議和交易順序的協(xié)議。由于這些事務(wù)適用于有限狀態(tài)機,因此我們對一致性的定義意味著復(fù)制狀態(tài)機的一致性。共識在Wikipedia上有更詳細(xì)的描述,后面的文章會說Consul的實現(xiàn)。

Gossip

Consul建立在Serf之上,Serf提供了完整的,可用于多種目的Gossip協(xié)議。Serf提供了成員管理,故障檢測和事件廣播等功能。后面會重點說Gossip協(xié)議。Gossip會涉及到隨機的節(jié)點到節(jié)點的UDP通信。

LAN Gossip

指的是局域網(wǎng)Gossip池,其中包含的節(jié)點都位于同一局域網(wǎng)或數(shù)據(jù)中心上。

WAN Gossip

指僅包含服務(wù)端的WAN Gossip池。這些Consul服務(wù)端主要位于不同的數(shù)據(jù)中心上,一般通過Internet或廣域網(wǎng)進行通信。

RPC

遠(yuǎn)程過程調(diào)用。一種請求/響應(yīng)模式,允許客戶端向服務(wù)器發(fā)出請求。

serf

serf 和Consul一樣,也是出自 Hashicorp 的開源項目, 實現(xiàn)了去中心化的 gossip協(xié)議,其中 gossip 協(xié)議定義了一種類似病毒感染的消息傳播過程。一些著名的開源項目,如 Docker 和這里說的 Consul,網(wǎng)絡(luò)管理和服務(wù)發(fā)現(xiàn)的核心組件是基于 serf 實現(xiàn)的,然而它們背后的 serf 似乎還鮮為人知,一方面其復(fù)雜的理論以及不完善的文檔讓人望而卻步;另一方面,gossip 協(xié)議天然的數(shù)據(jù) 弱一致性 也制約了 serf 的使用場景。想深入了解的可以看這里:

https://www.infoq.cn/article/principle-and-impleme-of-de-centering-system-in-serf

https://www.serf.io/intro/index.html

創(chuàng)建一個數(shù)據(jù)中心,需要先創(chuàng)建一個服務(wù)端集群。創(chuàng)建一個服務(wù)端的推薦方法是使用-bootstrap-expect選項。此選項是創(chuàng)建的Consul服務(wù)器節(jié)點的預(yù)期數(shù)量,并在有那么多服務(wù)器可用時自動引導(dǎo)。為避免出現(xiàn)不一致和腦裂(多個服務(wù)器將其視為leader的集群)情況,必須要把-bootstrap-expect指定相同的值,或者在所有服務(wù)器上完全不指定任何值。只有指定值的服務(wù)器才會嘗試引導(dǎo)群集。

假設(shè)正在啟動一個三個服務(wù)節(jié)點的集群。可以通過分別提供-bootstrap-expect 3的標(biāo)識來啟動節(jié)點A,節(jié)點B和節(jié)點C。節(jié)點啟動后,可以在服務(wù)輸出中看到一條警告消息。

  1. [WARN] raft: EnableSingleNode disabled, and no known peers. Aborting election. 

警告表明節(jié)點期望有2個對等節(jié)點,但還不知道。下篇文章會介紹如何啟動一個三個幾點的Consul集群,到時候會用到這個命令。

接上一篇文章的啟動命令

  1. docker run \ 
  2.     -d \ 
  3.     -p 8500:8500 \ 
  4.     -p 8600:8600/udp \ 
  5.     --name=badger \ 
  6.     consul agent -server -ui -node=server -bootstrap-expect=1 

之前在創(chuàng)建Consul節(jié)點的時候,指定了bootstrap-expect的值為1,這里就是一個單節(jié)點的Consul集群,因為是實驗性的課程,所以這里設(shè)置了1,1個節(jié)點也是可以的,同樣可以作為服務(wù)使用,只是在生產(chǎn)環(huán)境別這樣設(shè)置,sh

端口

一個服務(wù)端Consul節(jié)點最多需要6個不同的端口才能正常工作,某些端口需要使用TCP,UDP或同時使用這兩種協(xié)議。

在運行Consul之前,應(yīng)該確保可以訪問以下綁定端口。

 

用途 默認(rèn)端口
DNS: DNS服務(wù) (TCP 或者 UDP) 8600
HTTP: HTTP接口(只有TCP) 8500
HTTPS: HTTPs接口 建議端口 ,默認(rèn)關(guān)閉(8501)*
gRPC:gRPC接口 建議端口,默認(rèn)關(guān)閉 (8502)*
LAN Serf:    局域網(wǎng)端口(TCP和UDP) 8301
Wan Serf:Serf WAN端口(TCP和UDP) 8302
服務(wù)器:服務(wù)器RPC地址(僅TCP) 8300
Sidecar Proxy Min:包含的最小端口號,用于自動分配的sidecar服務(wù)注冊。 21000
Sidecar Proxy Max:  包含的最大端口號,用于自動分配的sidecar服務(wù)注冊。 21255

端口用途

  • DNS接口 用于解析DNS查詢
  • HTTP API 客戶端通過HTTP API請求服務(wù)端
  • HTTPS API(可選)默認(rèn)情況下處于關(guān)閉狀態(tài),但8501端口是多種工具默認(rèn)使用的。
  • gRPC API(可選)當(dāng)前,gRPC僅用于將xDS API公開給Envoy代理。默認(rèn)情況下它是關(guān)閉的,但是端口8502是各種工具默認(rèn)使用的。在-dev模式下默認(rèn)為8502。
  • Serf LAN 用于處理LAN中的gossip協(xié)議。所有代理都需要。
  • Serf WAN 服務(wù)器廣域網(wǎng)服務(wù)器使用它來通過廣域網(wǎng)傳播到其他服務(wù)器。從Consul 0.8開始,WAN連接泛洪功能要求Serf WAN端口(TCP / UDP)在WAN和LAN接口上進行監(jiān)聽。
  • RPC 服務(wù)器用來處理來自其他代理(agent)的請求。

總結(jié)

本文主要介紹了后面會用到的一些術(shù)語和一些啟動命令選項,還有就Consul會用到的幾個端口,通過了解這些,方便在后面的文章中學(xué)習(xí)Consul鋪開道路。

本文轉(zhuǎn)載自微信公眾號「碼小菜」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系碼小菜公眾號。

 

責(zé)任編輯:武曉燕 來源: 碼小菜
相關(guān)推薦

2021-01-21 10:02:45

Consul架構(gòu)安裝

2013-05-27 14:05:16

2011-10-10 14:30:22

刷機刷系統(tǒng)手機

2011-02-22 13:17:44

2019-06-19 09:00:00

GitLinux開源

2018-11-01 08:58:28

物聯(lián)網(wǎng)術(shù)語IOT

2022-01-06 09:41:45

區(qū)塊鏈比特幣技術(shù)

2014-02-12 14:12:29

2009-06-12 08:54:22

EJB術(shù)語J2EE

2010-03-01 16:13:06

Linux磁盤管理命令

2023-01-10 14:10:27

Linuxwho 命令

2023-02-14 16:45:54

2023-01-12 13:32:00

w 命令Linux

2023-09-14 07:07:31

敏感性專業(yè)術(shù)語視覺

2021-09-17 13:29:43

開發(fā)技能代碼

2023-09-13 14:47:34

性能測試開發(fā)

2019-07-01 17:23:35

安全IT技術(shù)

2010-06-07 19:57:36

UML和模式應(yīng)用

2022-01-26 09:36:53

Consul語言微服務(wù)

2014-08-05 11:38:57

linux
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 欧美日韩视频在线 | 狠狠综合久久av一区二区小说 | 日韩欧美视频 | 亚洲激情在线观看 | 九色国产 | 精品免费国产一区二区三区四区 | 久久久综合 | 在线日韩在线 | 国产一区二区三区欧美 | 一区二区三区视频在线观看 | 精品欧美乱码久久久久久1区2区 | 欧美日韩精品在线免费观看 | 99视频在线 | 91精品久久久久久久久久 | 亚洲激情一级片 | 自拍偷拍3p | 成人av在线大片 | 亚洲狠狠丁香婷婷综合久久久 | 久久国内精品 | 国产成人在线看 | 午夜伦4480yy私人影院 | 久久一区二区三区四区 | 日韩国产一区二区 | 一区二区三区国产好的精 | 亚洲人成人网 | 日韩欧美网| 成人免费一区二区三区视频网站 | 日韩视频a| 亚洲国产二区 | 视频一区二区中文字幕 | 久久久91 | www.午夜| 天天干天天干 | 99在线观看视频 | 二区在线观看 | 偷拍自拍第一页 | 亚洲黄色国产 | 成av人电影在线 | 国产视频中文字幕 | 日本电影韩国电影免费观看 | 91视频进入|