深入玩轉K8S之外網如何訪問業務應用
可以通過Service來解決如上所遇到的問題,那麼什麼是Service呢?
Service是kubernetes最核心的概念,通過建立Service,可以為一組具有相同功能的容器應用提供一個統一的入口地址,並且將請求進行負載分發到後端的各個容器應用上。
簡單來說Service就是一個把所有Pod都池化的一個組,然後對外統一固定一個IP,具體是哪些Pod可以通過之前介紹到的Label標籤來進行設定。
在建立Service之前先看看我們在部署應用的時候建立的nginx.yml
下面來建立個Service看看
執行kubectl apply建立Servie nginx-svc
1 kubcetl apply –f nginx-svc.yml
建立完成之後nginx-svc會分配到一個cluster-ip,可以通過該ip訪問後端nginx業務。
建立完之後可以檢視service詳情檢視後端都包含哪些pod
1 kubectl describe service nginx-svc
那這時候有人說了,還是不能外網訪問啊,別急下面我們來進行外網地址訪問設定。在實際生產環境中,對Service的訪問可能會有兩種來源:Kubernetes叢集內部的程式(Pod)和Kubernetes叢集外部,為了滿足上述的場景,Kubernetes service有以下三種型別:
1.ClusterIP:提供一個叢集內部的虛擬IP(與Pod不在同一網段),以供叢集內部的pod之間通訊使用。
2.NodePort:在每個Node上開啟一個隨機埠並且每個Node的埠都是一樣的,通過<NodeIP>:NodePort的方式Kubernetes叢集外部的程式可以訪問Service。
3.LoadBalancer:利用Cloud Provider特有的Load Balancer對外提供服務,Cloud Provider負責將Load Balancer的流量導向Service。
本篇文章我們著重講下第二種方式,也就是NodePort方式,修改nginx-svc.yml檔案,也就是剛才前面建立的Service檔案,相信細心的同學會發現在之前截圖的時候已經做好了NodePort,因為我的環境已經配置好了所以這樣就不在截圖了,配置很簡單,可以網上看下截圖,就是新增一個type:NodePort,然後重新建立下nginx-svc,命令的話和建立的命令一樣,我們來看看建立完事的結果。
curl x.x.x.x:31337
那OK可能會有人說這個訪問是隨機的還是負載均衡的?答案是負載均衡的,依舊是採用iptables實現的,感興趣的可以自己研究下iptables裡面做的那些規則,這裡就不再贅述了。
本文轉自DockOne-深入玩轉K8S之外網如何訪問業務應用
相關文章
- 如何從外網訪問本地WEB應用?Web
- 如何透過holer從外網訪問本地Web應用Web
- 玩k8s? ----管理應用程式配置K8S
- 用訪問控制列表實現網路單向訪問(轉)
- 乾貨 | 玩轉雲檔案儲存——利用CFS實現web應用的共享訪問Web
- 如何從網際網路訪問k8s叢集中的服務以及如何排錯K8S
- 外網訪問內網應用原理分析及實現內網
- Holer實現手機APP應用外網訪問本地WEB應用APPWeb
- 如何從Spring之外的非託管物件訪問 Spring Bean?Spring物件Bean
- 用技術玩轉業務增長 -- 增長黑客黑客
- 請問在spring的業務層如何直接訪問 session ?SpringSession
- SUN工作站在網路中的深入應用(轉)
- Linux網路應用問答(轉)Linux
- 恆訊科技分析:如何禁止用IP訪問網站?網站
- 玩轉spring boot——MVC應用Spring BootMVC
- Nielsen:網民每日聊天應用訪問行為調查
- python如何訪問網頁Python網頁
- 如何從公網訪問內網Django內網Django
- 記一次透過K8S ingress訪問業務服務出現404問題K8S
- 控制對網站的訪問 (轉)網站
- WEB應用訪問緩慢的問題定位Web
- 交換技術:反向訪問列表在實際中的應用(轉)
- 深入理解k8s中的訪問控制(認證、鑑權、審計)流程K8S
- 移動應用設計:應用內搜尋和業務轉化
- 用perl訪問mysql資料庫(轉)MySql資料庫
- 採用ODBC介面訪問MySQL指南 (轉)MySql
- 深入淺出訪問者模式模式
- Angular應用解決跨域訪問的問題Angular跨域
- k8s通過Service訪問PodK8S
- 如何提高網站的可訪問性?網站
- 如何遮蔽某IP地址訪問網站網站
- jboss設定web應用的訪問路徑,即直接域名+埠訪問Web
- 玩轉 PHP 網路程式設計全套之 libevent 框架多人聊天應用PHP程式設計框架
- 用JDBC訪問一個資料庫(轉)JDBC資料庫
- 用SERVICE LOCATOR 模式實現命名訪問 (轉)模式
- 網頁訪問全過程剖析[轉].md網頁
- 如何解決網站限制IP訪問的問題網站
- 如何限定IP訪問Oracle資料庫-轉Oracle資料庫