【K8s】整體認識K8s之與集群外部訪問--service

這一篇文章主要是對service發現新的理解


為什么要使用service服務發現?


首先pod的IP,是動態的,當我們重啟一個pod的時候,它會給它分配一個新的IP,但是如果微服務a想要去調用微服務b,他是需要知道微服務b所有健康pod的當前地址的,這使得服務發現變得很困難,服務發現機制又是微服務架構的核心需求

第二個就是負載均衡,當我們有多個pod的副本用于同一個應用的時候,我們希望流量能夠均勻的分發到這些pod上,所以我們需要一個機制來抽象后邊所有的pod,這個機制就是service發現。當你向service發送請求的時候kube-proxy組件它會通過IPVS或者iptables將請求負載均衡到后端健康的pod上

并且客戶端它是需要一個穩定的,不變的地址來連接這個服務的,就是service它發揮作用的地方,在創建一個service對象的時候,k8s會為其分配一個虛擬的在集群中穩定的IP地址,這個然后service會被自動注冊到集群的DNS服務中,那么客戶端就可以直接通過一個穩定的DNS名稱來訪問服務


headless service、clusterIP、NodeIP、LoadBalancer、Ingress、GateWay API等六種類型service


headless service、clusterIP、NodeIP、LoadBalancer、Ingress

【K8s】Service發現:跟蹤后端的IP-CSDN博客

【K8s】Service發現 2-CSDN博客

GateWay API

Gateway API 是 Kubernetes 新一代的流量管理接口。在ingress的yaml文件里,基礎設施和業務邏輯同時定義,Gateway API的進步就是,讓這個過程可以角色分離,讓不同團隊(基礎設施、集群運維、應用開發等)都能夠獨立且安全地管理流量。
它主要有三個核心組件:
1.GatewayClass (網關類):定義了集群中哪種負載均衡器可用,以及由哪個控制器(如 Nginx,
Istio 等)來管理,它是一個集群級別的、全局性的資源。
2.Gateway (網關):是根據 GatewayClass 模板在集群中創建的一個實際流量入口點,它配置
了監聽的端口(如 80, 443)、協議、TLS 證書,并決定允許哪些命名空間的應用(通過 Route)
附加到它上面。
3.Route (路由):將來自 Gateway 的流量,根據匹配規則(如主機名、路徑、請求頭),轉發
到具體的后端服務(Service),它是應用開發者定義服務如何暴露的地方。
這個模型清晰地劃分了職責:GatewayClass(模板) → Gateway(實例) → HTTPRoute(規則)
1.集群管理員提供 GatewayClass (比如,我們支持 Nginx 網關)。
2.運維團隊創建一個 Gateway (比如,在生產環境創建一個監聽 443 端口的 Nginx 網關實例)。
3.應用開發者創建一個 HTTPRoute (比如,將 api.myapp.com/v1 的流量路由到我的 v1-
service)。
這種分離使得網絡管理更加安全、靈活且易于擴展,是它相對于傳統 Ingress 的最大優勢??

?

?

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/95123.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/95123.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/95123.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

k8s(自寫)

kubernetes k8s是什么?Kubernetes是什么?架構是怎么樣的?6分鐘快速入門_嗶哩嗶哩_bilibili kubernetes是google開源神器,介于應用服務和服務器之間,能夠通過策略協調和管理多個應用服務,只需要一個yaml文…

實現微信小程序的UniApp相機組件:拍照、錄像與雙指縮放

在微信小程序開發中,相機功能已成為許多應用的核心組成部分。本文將介紹如何使用UniApp框架實現一個功能豐富的相機組件,支持拍照、錄像、前后攝像頭切換以及雙指縮放等功能。功能概述這個相機組件具備以下核心功能:拍照功能:支持…

python pyqt5開發DoIP上位機【診斷回復的函數都是怎么調用的?】

目錄 文章合集 一、底層網絡接收:`_receive_loop`(觸發起點) 調用時機: 核心代碼: 作用: 二、數據解析:`handle_received_data`(判斷是否為診斷回復) 調用時機: 核心代碼(診斷回復相關部分): 作用: 三、UI顯示:`add_trace_entry`(展示到界面) 調用時機: 信號…

談物質的運動與運動的物質

運動的物質是不是物質的運動,如果假設是(第一假設),那末運動的物質是物質的運動,而運動是物質的根本屬性,又運動的物質是物質,則物質的運動是物質,既然運動是物質的根本屬性&#xf…

【MLLM】多模態理解Ovis2.5模型架構和訓練流程

note 模型架構:延續 Ovis 系列創新的結構化嵌入對齊設計。 Ovis2.5 由三大組件構成:動態分辨率 ViT 高效提取視覺特征,Ovis 視覺詞表模塊實現視覺與文本嵌入的結構對齊,最后由強大的 Qwen3 作為語言基座,處理多模態嵌…

3.3單鏈表專題

順序表這種在標準庫已經實現好了,直接調用 pushback pushfront 這些o(1)表示不額外開辟空間src為value繼續走,下一個不是value,src值給dst空間,dst,dst剛好等于2,就是新數組長度。若從前向后兩個數組元素依…

linux系統學習(15.啟動管理)

目錄 一、運行級別 1.運行級別 2.運行級別命令 (1)runlevel (2)init 運行級別 3.永久修改啟動級別(ubantu20.04) 二、啟動過程 🔹 總結 三、啟動引導程序grub配置文件 一、運行級別 1.運行級別 2.運行級別命令 (1)runlevel (2)ini…

檢索優化-混合檢索

混合檢索(Hybrid Search)是一種結合了 稀疏向量(Sparse Vectors) 和 密集向量(Dense Vectors) 優勢的先進搜索技術。旨在同時利用稀疏向量的關鍵詞精確匹配能力和密集向量的語義理解能力,以克服…

Day17(前端:JavaScript基礎階段)

接續上文:Day16(前端:JavaScript基礎階段)_前端題目 csdn-CSDN博客 點關注不迷路喲。你的點贊、收藏,一鍵三連,是我持續更新的動力喲!!! 主頁:一位搞嵌入式的 genius-CSDN博客 系列文章專欄: https://blog.csdn.ne…

OpenCV 輪廓分析實戰:從檢測到形狀匹配的完整指南

輪廓(Contour)是圖像中連續且具有相同灰度值的像素集合,是描述目標形狀、位置和結構的核心特征。在計算機視覺中,輪廓分析廣泛應用于目標定位、形狀識別、尺寸測量等場景(如工業零件檢測、手寫數字識別)。本…

2025最新uni-app橫屏適配方案:微信小程序全平臺兼容實戰

以下為uni-app實現微信小程序橫屏適配技術方案,包含核心原理、配置方法、代碼示例和注意事項:一、橫屏適配原理 微信小程序默認采用豎屏模式,橫屏適配需通過以下機制實現: 全局配置:在app.json中聲明支持橫屏頁面級配置…

深入解析Nginx常見模塊1

在Web服務器和反向代理服務器領域,Nginx憑借其高性能、穩定性和豐富的功能獲得了廣泛的應用。本文將介紹一些Nginx中常見的模塊,幫助你更好地理解和使用它們。 Nginx模塊簡介 Nginx的模塊系統是其強大功能的核心所在,它允許用戶根據需要靈活配置服務器的行為。Nginx的模塊大…

淺談new與::operator new

目錄 前言 1.為什么C要引入new/delete? 2.operator new與operator delete函數 它們的實際作用 Placement New(定位new表達式) 總結 前言 在寫上一篇博客“vector的模擬實現”時,我一直很好奇vector的private成員為什么要用三個封…

Java中Integer轉String

在 Java 中,將 Integer 轉換為 String 有多種方法,以下是常見的幾種方式:1. 使用 Integer.toString() 方法javaInteger num 123; String str Integer.toString(num); // 直接調用 Integer 的靜態方法2. 使用 String.valueOf()javaInteger n…

智能裝備如何與軟件結合?

一、什么是智能裝備? 智能裝備是具備“感知-決策-執行-自適應”閉環能力的智能化系統,本質是“傳統物理裝備”與“數字智能”的深度融合。它不僅能完成預設動作(如傳統機械臂焊接),還能通過傳感器“觀察”環境、用算法…

react性能優化有哪些

React 性能優化的手段比較多,既有代碼層面的,也有構建層面的,還涉及到運行時調優。我幫你系統性梳理一份:🔹 一、渲染性能優化1. 減少不必要的渲染React.memo:對函數組件做淺比較,避免相同 prop…

騰訊云OpenCloudOS 9系統部署OpenTenBase數據庫詳細教程

OpenTenBase簡介OpenTenBase是一個關系型數據庫集群平臺,提供寫入可靠性和多節點數據同步功能。可以在一臺或多臺主機上配置OpenTenBase,并將數據存儲在多個物理主機上。OpenTenBase架構組件:Coordinator Node (CN):應用程序訪問入…

【計算機視覺】Pixel逐像素分類Mask掩碼分類理解摘要

目標檢測和實例分割是計算機視覺的基本任務。目標檢測的傳統方法中通常利用邊界框技術進行對象定位,然后利用逐像素分類為這些本地化實例分配類。但是當處理同一類的重疊對象時,或者在每個圖像的對象數量不同的情況下,這些方法通常會出現問題…

C++之stack類的代碼及其邏輯詳解

1. stack介紹及使用方法stack是一種后進先出的數據結構,所以在C的STL庫中也同樣遵循了這一點,我們在使用的時候不支持隨機訪問或迭代器遍歷。注意事項調用 top() 或 pop() 前需確保棧非空,否則可能引發未定義行為。stack 沒有 clear() 函數&a…

Spring Cache實現簡化緩存功能開發

一. 介紹Spring Cache 是 Spring 框架提供的緩存抽象層,它簡化了在應用中添加緩存功能的開發工作。通過 Spring Cache,開發者無需關注具體緩存實現的細節,只需通過注解就能快速實現方法級別的緩存管理。核心特點1. 與具體緩存實現解耦&#x…