国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

k8s外部訪問pod內部容器的端口-NodePort

這篇具有很好參考價值的文章主要介紹了k8s外部訪問pod內部容器的端口-NodePort。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、 如何從外部網絡訪問

Kubernetes的Pod IP和Cluster IP都只能在集群內部訪問,而我們通常需要從外部網絡上訪問集群中的某些服務,Kubernetes提供了下述幾種方式來為集群提供外部流量入口。

二、需求

有一pod,里面有rabbitmq服務,先想從外部通過ip:15672訪問MQ的管理員界面查看隊列消費情況。
k8s外部訪問pod內部容器的端口-NodePort

方法1(pod會重啟):

k8s外部訪問pod內部容器的端口-NodePort

方法2: NodePort(pod不會重啟,更適合生產環(huán)境)

NodePort在集群中的主機節(jié)點上為Service提供一個代理端口,以允許從主機網絡上對Service進行訪問。Kubernetes官網文檔只介紹了NodePort的功能,并未對其實現原理進行解釋。下面我們通過實驗來分析NodePort的實現機制。

執(zhí)行下面的命令創(chuàng)建一個nodeport類型的service。

kubectl apply -f rmq-np-svc.yaml

rmq-np-svc.yaml內容(注意:端口范圍只能是 30000-32767):

apiVersion: v1
kind: Service
metadata:
  namespace: yie-edge
  labels:
    baetyl-app-name: basic-service
  name: rabbitmq-np-service
spec:
  ports:
  - name: 15672-15672
    nodePort: 31672
    port: 15672
    protocol: TCP
    targetPort: 15672
  selector:
    baetyl-app-name: basic-service
  type: NodePort
status:
  loadBalancer: {}

三、Kubernetes中的nodePort,targetPort,port的區(qū)別和意義

nodePort
外部機器可訪問的端口。
比如一個Web應用需要被其他用戶訪問,那么需要配置type=NodePort,而且配置nodePort=31672,那么其他機器就可以通過瀏覽器訪問IP:31672訪問到該服務,例如http://172.19.12.13:31672。
例如rabbitmq可能不需要被外界訪問,只需被內部服務訪問,那么不必設置NodePort

targetPort
容器的端口(最根本的端口入口),與制作容器時暴露的端口一致

port
kubernetes中的服務之間訪問的端口,盡管rabbitmq容器暴露,15672端口,但是集群內其他容器需要通過15672端口訪問該服務,外部機器不能訪問rabbitmq服務,因為他沒有配置NodePort類型

四、操作

通過netstat命令可以看到Kube-proxy在主機網絡上創(chuàng)建了30080監(jiān)聽端口,用于接收從主機網絡進入的外部流量。k8s外部訪問pod內部容器的端口-NodePort

查看創(chuàng)建的service,可以看到kubernetes創(chuàng)建了一個名為rmq-np-svc的service,并為該service在主機節(jié)點上創(chuàng)建了31672這個Nodeport。

k8s外部訪問pod內部容器的端口-NodePort
k8s外部訪問pod內部容器的端口-NodePort文章來源地址http://www.zghlxwxcb.cn/news/detail-422074.html

到了這里,關于k8s外部訪問pod內部容器的端口-NodePort的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【K8S】外部訪問請求原理流程(service、kube-proxy、pod的關系)

    【K8S】外部訪問請求原理流程(service、kube-proxy、pod的關系)

    用戶發(fā)起請求,請求傳送到Ingress Ingress :作用是定義請求如何轉發(fā)到service的規(guī)則,ingress支持7層代理轉發(fā),它可以通過根據不同的域名或者URL訪問路徑把請求流量轉發(fā)到不同的service上,實現調度不同業(yè)務域、不同URL訪問路徑的業(yè)務流量。 Service: 提供了服務的負載均衡和反向代

    2024年01月17日
    瀏覽(25)
  • master節(jié)點上的nodeport端口不通(k8s踩坑)

    master節(jié)點上的nodeport端口不通(k8s踩坑)

    創(chuàng)建了一個nodeport類型的service,端口是80,按道理來說會在每個節(jié)點上開啟80端口,但是發(fā)現master節(jié)點上沒有開啟80端口,node1、node2上均開啟了80端口。 在 k8s 1.22.17 版本中已經無法使用 lsof -i:80 或netstat -lntup| grep 80 等方式查看service開啟的nodeport端口了,但是我們可以使用teln

    2024年02月15日
    瀏覽(27)
  • K8s進階之網絡:pod內不同容器、同節(jié)點不同pod通信、CNI插件、不同節(jié)點pod通信、Flannel容器網絡、Serivce連接外部網絡、服務發(fā)現、Nginx反向代理與域名、Ingress代理

    K8s進階之網絡:pod內不同容器、同節(jié)點不同pod通信、CNI插件、不同節(jié)點pod通信、Flannel容器網絡、Serivce連接外部網絡、服務發(fā)現、Nginx反向代理與域名、Ingress代理

    Pod是Kubernetes中最小的可部署單元,它是一個或多個緊密關聯的容器的組合,這些容器共享同一個網絡命名空間和存儲卷,因此Pod中的 所有容器都共享相同的網絡命名空間和IP地址——PodIP ,所以在同一個Pod內的容器間通信可以 通過localhost直接通信 。 k8s創(chuàng)建Pod時永遠都是首先

    2024年02月05日
    瀏覽(24)
  • 一文讀懂k8s的外網訪問方式,Ingress/NodePort/LoadBanlancer

    一文讀懂k8s的外網訪問方式,Ingress/NodePort/LoadBanlancer

    本文首發(fā)自「慕課網」,想了解更多IT干貨內容,程序員圈內熱聞,歡迎關注\\\"慕課網\\\"! 作者:一凡|慕課網講師 在k8s中創(chuàng)建的微服務,大部分都是在集群內部互相調用,這時候,使用DNS就可以很方面訪問。 比如:服務名是 my-service,端口號是8080,命名空間是yifan,那么就可以

    2024年02月10日
    瀏覽(23)
  • k8s ipvs 模式下不支持 localhost:<nodeport>方式訪問服務

    簡介 今天去定位一個nodeport的問題,發(fā)現curl 127.0.0.1:32000 訪問nodeport的時候會規(guī)律的hang住,本來以為是后端服務的問題,但是curl管理ip:nodeport 是正常的。這個就奇怪了,深入研究了下發(fā)現 ipvs模式下是不支持這樣訪問的,如果想使用 localhost: 得使用iptables模式。 下面是一個歪

    2024年02月22日
    瀏覽(19)
  • K8S內部pod之間相互調用案例和詳解

    K8S內部pod之間相互調用案例和詳解

    目錄 一、部署nginx容器 二、部署tomcat服務 三、使用nginx代理tomcat服務 四、測試 1、service是用于K8S的服務發(fā)現的重要組件,pod作為運行業(yè)務的承載方式,要想被客戶端訪問或者集群內部其它服務訪問,就需要提供一個訪問入口; ?2、傳統(tǒng)來說ip+端口是普適的訪問方式,但是

    2024年02月03日
    瀏覽(26)
  • K8S暴露pod內多個端口

    K8S暴露pod內多個端口

    公司統(tǒng)一用的某個底包跑jar服務,只暴露了8080端口? 由于有些服務在啟動jar服務后,會啟動多個端口,除了8080端口,還有別的端口需要暴露,我這里就還需要暴露9999端口。 注:解決辦法其實是可以直接改底包就好了,在底包中多暴露幾個端口,但是我這邊因為無法改底包,

    2024年02月14日
    瀏覽(22)
  • k8s 多容器pod進入指定容器

    k8s 多容器pod進入指定容器

    kubectl exec -it prometheus-prometheus-server-697cccff9c-qtrf7 -c prometheus-server sh

    2024年02月14日
    瀏覽(93)
  • K8S | 容器和Pod組件

    K8S | 容器和Pod組件

    對比軟件安裝和運行; 作為研發(fā)人員,通常自己電腦的系統(tǒng)環(huán)境都是非常復雜,在個人的習慣上,是按照下圖的模塊管理電腦的系統(tǒng)環(huán)境; 對于「基礎設施」、「主機操作系統(tǒng)」、「系統(tǒng)軟件」來說,通常只做配置修改; 對于自行安裝的軟件環(huán)境來說,個人通常這樣分類:

    2024年02月11日
    瀏覽(115)
  • k8s pod 容器間測試接口

    1、配置k8s 詳細的配置參考官網 2、獲取pod節(jié)點PODID信息 3、進入到pod容器內部 4、安裝CURL 5、調用測試接口 6、查看調用工程的Pod的日志

    2024年02月12日
    瀏覽(92)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包