日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

外网如何访问 Service?- 每天5分钟玩转 Docker 容器技术(139)

發(fā)布時(shí)間:2024/9/21 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 外网如何访问 Service?- 每天5分钟玩转 Docker 容器技术(139) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

除了 Cluster 內(nèi)部可以訪問 Service,很多情況我們也希望應(yīng)用的 Service 能夠暴露給 Cluster 外部。Kubernetes 提供了多種類型的 Service,默認(rèn)是 ClusterIP。

ClusterIP?
Service 通過 Cluster 內(nèi)部的 IP 對(duì)外提供服務(wù),只有 Cluster 內(nèi)的節(jié)點(diǎn)和 Pod 可訪問,這是默認(rèn)的 Service 類型,前面實(shí)驗(yàn)中的 Service 都是 ClusterIP。

NodePort?
Service 通過 Cluster 節(jié)點(diǎn)的靜態(tài)端口對(duì)外提供服務(wù)。Cluster 外部可以通過?
<NodeIP>:<NodePort>?訪問 Service。

LoadBalancer?
Service 利用 cloud provider 特有的 load balancer 對(duì)外提供服務(wù),cloud provider 負(fù)責(zé)將 load balancer 的流量導(dǎo)向 Service。目前支持的 cloud provider 有 GCP、AWS、Azur 等。

下面我們來實(shí)踐 NodePort,Service?httpd-svc?的配置文件修改如下:

添加?type: NodePort,重新創(chuàng)建?httpd-svc

Kubernetes 依然會(huì)為?httpd-svc?分配一個(gè) ClusterIP,不同的是:

  • EXTERNAL-IP?為?nodes,表示可通過 Cluster 每個(gè)節(jié)點(diǎn)自身的 IP 訪問 Service。

  • PORT(S)?為?8080:323128080?是 ClusterIP 監(jiān)聽的端口,32312?則是節(jié)點(diǎn)上監(jiān)聽的端口。Kubernetes 會(huì)從 30000-32767 中分配一個(gè)可用的端口,每個(gè)節(jié)點(diǎn)都會(huì)監(jiān)聽此端口并將請(qǐng)求轉(zhuǎn)發(fā)給 Service。

  • 下面測(cè)試 NodePort 是否正常工作。

    通過三個(gè)節(jié)點(diǎn) IP + 32312 端口都能夠訪問?httpd-svc

    接下來我們深入探討一個(gè)問題:Kubernetes 是如何將?<NodeIP>:<NodePort>?映射到 Pod 的呢?

    與 ClusterIP 一樣,也是借助了 iptables。與 ClusterIP 相比,每個(gè)節(jié)點(diǎn)的 iptables 中都增加了下面兩條規(guī)則:

    規(guī)則的含義是:訪問當(dāng)前節(jié)點(diǎn)?32312?端口的請(qǐng)求會(huì)應(yīng)用規(guī)則?KUBE-SVC-RL3JAE4GN7VOGDGP,內(nèi)容為:

    其作用就是負(fù)載均衡到每一個(gè) Pod。

    NodePort 默認(rèn)是的隨機(jī)選擇,不過我們可以用?nodePort?指定某個(gè)特定端口。

    現(xiàn)在配置文件中就有三個(gè) Port 了:
    nodePort?是節(jié)點(diǎn)上監(jiān)聽的端口。
    port?是 ClusterIP 上監(jiān)聽的端口。
    targetPort?是 Pod 監(jiān)聽的端口。

    最終,Node 和 ClusterIP 在各自端口上接收到的請(qǐng)求都會(huì)通過 iptables 轉(zhuǎn)發(fā)到 Pod 的?targetPort

    應(yīng)用新的?nodePort?并驗(yàn)證:

    nodePort: 30000?已經(jīng)生效了。

    小結(jié)

    本章我們討論訪問應(yīng)用的機(jī)制 Service,學(xué)習(xí)了如何創(chuàng)建 Service;Service 的三種類型 ClusterIP、NodePort 和 LoadBalancer,以及它們各自的適用場(chǎng)景。

    下一節(jié)我們開始學(xué)習(xí) Rolling Update。

    書籍:
    1.《每天5分鐘玩轉(zhuǎn)Docker容器技術(shù)》
    https://item.jd.com/16936307278.html

    2.《每天5分鐘玩轉(zhuǎn)OpenStack》
    https://item.jd.com/12086376.html

    總結(jié)

    以上是生活随笔為你收集整理的外网如何访问 Service?- 每天5分钟玩转 Docker 容器技术(139)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。