您好,登錄后才能下訂單哦!
Kong 的官方有很多詳細(xì)的參考說明,比如配置文件、命令行、Admin API、代理、負(fù)載均衡,接下來我們簡單看一下,都提供什么內(nèi)容。
本文主要基于 Kong 1.3 版本進(jìn)行描述,如有更新,請查看最新文檔。
通過對配置文件的 深入理解,可以優(yōu)化 Kong 集群、使用的數(shù)據(jù)庫、配置 Nginx ,
官方的參考資料是 Configuration Reference
Kong 在啟動(dòng)時(shí),可以通過 -c
或者 --conf
參數(shù)來指定配置文件,比如:
kong start -c /path/to/kong.conf
可以使用 check 命令來校驗(yàn)配置文件的語法正確性,
$ kong check <path/to/kong.conf>
configuration at <path/to/kong.conf>
is valid
Kong 的配置在加載的時(shí)候也會(huì)去找同名的環(huán)境變量,所有也可以通過環(huán)境變量來配置 Kong,而且環(huán)境變量的優(yōu)先級(jí)高于配置文件??梢酝ㄟ^環(huán)境變量來配置 Kong 這樣方便了基于容器的部署和運(yùn)行。如果要使用環(huán)境變量,需要以 KONG_
字段開頭。
所提供的CLI(命令行接口)允許您啟動(dòng)、停止和管理 Kong 實(shí)例。CLI 可以管理本地節(jié)點(diǎn)(如在當(dāng)前機(jī)器上)??梢詤⒖脊倬W(wǎng)文檔
CLI Reference
主要由如下命令
所有的命令都可以使用如下參數(shù)
Admin API 的說明可以參考官網(wǎng)文檔:
Admin API Reference
Admin API 接受 2 兩種連接類型在每個(gè)終端。
分別是
共有 9 個(gè)對象,分別是:
在本文檔中,我們將通過詳細(xì)解釋Kong的路由功能和內(nèi)部工作原理來介紹它的代理功能。
Kong 公開了幾個(gè)接口,可以通過兩個(gè)配置屬性進(jìn)行調(diào)整:
Kong 經(jīng)常用到的術(shù)語有:
Kong 為多個(gè)后端服務(wù)提供了多種負(fù)載平衡請求的方法: 一種簡單的基于 DNS 的方法,另一種是更動(dòng)態(tài)的環(huán)形平衡器,該平衡器還允許在不需要DNS服務(wù)器的情況下進(jìn)行服務(wù)注冊。
負(fù)載均衡可以參考官網(wǎng)文檔
Load Balancing Reference 來了解。
當(dāng)使用基于 DNS 的負(fù)載平衡時(shí),后端服務(wù)的注冊是在 Kong 之外完成的,而 Kong 只接收來自 DNS 服務(wù)器的更新。
如果主機(jī)名沒有解析為上游名稱或 DNS 主機(jī)文件中的名稱,則使用包含主機(jī)名(而不是IP地址)的主機(jī)定義的每個(gè)服務(wù)都將自動(dòng)使用基于 DNS 的負(fù)載平衡。
DNS 記錄 ttl 設(shè)置(生存時(shí)間)決定信息刷新的頻率。當(dāng)使用 ttl 為 0 時(shí),每個(gè)請求都將使用自己的 DNS 查詢進(jìn)行解析。這將帶來性能損失,但是更新/更改的延遲將非常低。
A 記錄
一個(gè) A 記錄對應(yīng)一個(gè)或者多個(gè) IP 地址,因此,當(dāng)主機(jī)名解析為 A 記錄時(shí),每個(gè)后端服務(wù)必須有自己的IP地址。
因?yàn)闆]有權(quán)重信息,所以所有條目在負(fù)載平衡器中都將被視為同等權(quán)重,并且平衡器將進(jìn)行直接的循環(huán)。
SRV 記錄
SRV記錄包含所有IP地址的權(quán)重和端口信息。后端服務(wù)可以通過IP地址和端口號(hào)的唯一組合來標(biāo)識(shí)。因此,一個(gè)IP地址可以在不同的端口上承載相同服務(wù)的多個(gè)實(shí)例。
因?yàn)闄?quán)重信息是可用的,所以每個(gè)條目將在負(fù)載平衡器中獲得自己的權(quán)重,并執(zhí)行加權(quán)循環(huán)。
DNS 的優(yōu)先級(jí)
1、前面解析的最后一個(gè)成功類型
2、SRV 記錄
3、A記錄
4、CNAME 記錄
這些可以在配置文件的 dns_order
進(jìn)行配置。
使用 Ring-balancer 時(shí),后端服務(wù)的添加和刪除將由 Kong 處理,不需要 DNS 更新。Kong 將作為服務(wù)注冊處。節(jié)點(diǎn)可以通過一個(gè)HTTP請求添加/刪除,并將立即啟動(dòng)/停止接收流量。
配置 Ring-balancer 工作需要有 Upstream 和 target 兩個(gè)實(shí)體。
virtual hostname
,可用于路由的 host
字段,例如一個(gè) upstream 是 weather.v2 會(huì)收到服務(wù) host=weather.v2.service 的所有請求。本來大致講述了 Kong 的配置文件、命令行、代理、負(fù)載均衡等內(nèi)容。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。