k8s中的endpoint


service select:

service通過selector和pod建立關聯。

k8s會根據service關聯到pod的podip信息組成一個endpoint。

若service定義中沒有selector字段,service被創建時,endpoint controller不會創建endpoint。

 

service負載分發策略有兩種:

RoundRobin: 輪訓模式,即輪序請求轉發到后段的各個pod上。(默認模式)

SessionAffinty: 基於客戶端ip地址進行會話保持的模式,第一次客戶端訪問后段某個pod,之后的請求都會轉發到這個pod上。

 

k8s服務發現方式:

DNS: 可以通過cluster add-on的方式輕松輕松的創建KubeDNS來對集群內的service進行服務發現,這也是官方強烈推薦的方式。為了讓pod中的容器可以使用kube-dns來解析域名,k8s會修改容器的/etc/resolv.conf配置。

 

k8s服務發現原理:

endpoint

endpoint是集群中的一個資源對象,儲存在etcd中,用來記錄一個service對應的pod的訪問地址。

service配置serlector,endpoint controler才會自動創建對應的endpoint對象;否則,則不會創建endpoint對象。

 

endpoint controlor

endpoint controlor是k8s集群的其中一個組件,其功能如下:

負責生成和維護所有的endpoint對象的控制器。

負責監聽

 

 

 

 

 

 源文章地址:

https://blog.csdn.net/luanpeng825485697/article/details/84296765?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164199455616780265488959%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=164199455616780265488959&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-4-84296765.first_rank_v2_pc_rank_v29&utm_term=endpoint#

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM