<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      k8s-Pod中的網絡通信(3)

      部署的pod都會涉及到和內外網絡通信,我們部署的pod 有一個ip,這個IP 是集群內部的IP ,只能在集群內被訪問,k8s中pod的網路通信是交給service來管理的,簡稱svc。負責將外部流量引入,和內部流量引出。

      1.外部流量訪問內部

      我們pod部署的時候是有一個標簽label的,service在創建的時候也會指定一個標簽,這樣就可以把對應label的pod關聯起來,podIP+端口形成一個端點-ednpoint,service也有自己的IP和端口,service的端口和宿主機的端口通過NodePort形成映射,這樣訪問宿主機的端口就能訪問到service,service再轉發到對應的pod上。

      service的這能力都是kude-proxy來實現的(部署k8s的時候對應的有一個kube-proxy:v1.28.15鏡像)。kude-proxy最終會把這這些映射規則轉化成iptables規則,來完成流量的轉發。

      image

       

      創建service的方式

      命令:expose

      清單文件:apply -f 文件

       

      kubectl expose deployment my-nginx-deploment --port=8001 --target-port=80 --type=NodePort

      創建一個service將流量引入到my-nginx-deploment部署的pod上,

      --port是service暴露的端口,

      --target-port是背后實際應用容器的端口,我們部署的nginx是80端口

      --type=NodePort 映射到宿主機端口 取值有這幾個 ClusterIP, NodePort, LoadBalancer, or ExternalName. Default is 'ClusterIP'.

       

      kubectl expose deployment my-nginx-deploment --port=8001 --target-port=80 --type=NodePort --dry-run=client -o yaml > my-nginx-svc.yaml

       

      image

       

      apply -f my-nginx-svc.yaml

      kubectl get svc 查看service

      kubectl describe svc my-nginx-deploment 查看詳細的信息

       

      image

       

      啟了一個service 給svc分配的ip是 10.108.229.67 這個IP 也是集群內部的IP,端口8001,指向了10.244.2.6:80,

      在集群其他節點可以訪問這個地址curl 10.104.212.94:8001 也能訪問我們之前啟動的nginx

      集群外部訪問的話就需要用到NodePort暴露的端口

      任意node宿主機節點IP:NodePort暴露的端口

      我的是

      192.168.255.102:31101

      192.168.255.103:31101

      都可以訪問到我們部署k8s里面的nginx了

       

      image

       

      2.內部訪問外部:

      pod——service——endpoint——外部服務

      外部訪問內部的時候endpoint 是pod的IP和端口,k8s自己可以知道是啥,內部訪問外部的,走出去的時候K8s就不知道關聯外部的endpoint了,這就需要手工配置endpoint了

      image

       

      我在vmware宿主機 IP:192.168.255.1 上面部署一個nginx:

      image

       

      創建資源清單文件:out-ng.yaml  內容如下

      apiVersion: v1
      kind: Service
      metadata:
        name: out-ng
      spec:
        ports:
          - port: 80
            targetPort: 80
        # 注意:沒有 selector!
      ---
      apiVersion: v1
      kind: Endpoints   # 手動配置的端點
      metadata:
        name: out-ng       # 必須和 Service 同名!
      subsets:
        - addresses:
            - ip: 192.168.255.1   # 外部服務的 IP
          ports:
            - port: 80

       

      kubectl apply -f out-ng.yaml 

       

      image

       

      分配給service 的ip是 10.107.74.203 對應端點的是192.168.255.1:80

      進入我們之前的pod里面,再訪問service 的ip,就能看到訪問到了我們外面機器部署的nginx

      kubectl exec my-nginx-deploment-799c59bc4d-nkgbc -it -- /bin/bash

      curl 10.107.74.203

      image

       

      我們現在建了兩個svc,內部訪問外部和外部訪問內部是不同的svc負責。

       

      posted @ 2025-11-02 20:32  白露非霜  閱讀(125)  評論(0)    收藏  舉報
      訪問量
      主站蜘蛛池模板: 久久99国产精品久久99小说| 亚洲国产日韩一区三区| 亚洲国产午夜精品理论片| 亚洲精品中文字幕尤物综合| 亚洲av无码国产在丝袜线观看| 色综合久久天天综线观看| 国产老头多毛Gay老年男| 久久亚洲精品人成综合网| 国产精品福利午夜久久香蕉| 亚州AV无码乱码精品国产| 成人午夜伦理在线观看| 久久人体视频| 免费无码又爽又刺激成人| 错那县| 色五开心五月五月深深爱| 成人啪精品视频网站午夜| 国产成人AV大片大片在线播放| 亚洲精品成人网久久久久久| 国产亚洲人成网站在线观看| 麻豆国产成人AV在线播放| 衣服被扒开强摸双乳18禁网站 | 香蕉久久国产精品免| 少妇激情一区二区三区视频小说| 欧美日韩视频综合一区无弹窗| 少妇人妻偷人精品免费| 亚洲性美女一区二区三区| 娇妻玩4p被三个男人伺候| 国产成人精品a视频| 亚洲午夜亚洲精品国产成人| 97se亚洲综合在线天天| 无码人妻丝袜在线视频| 国产精品色一区二区三区| 免费视频欧美无人区码| 国产一级老熟女自拍视频| 撕开奶罩揉吮奶头视频| 扒开双腿猛进入喷水高潮叫声| 国产午夜福利视频在线| 人妻少妇精品无码专区二区| 九九热久久这里全是精品| 熟妇人妻av中文字幕老熟妇| 熟女少妇精品一区二区|