簡體   English   中英

是否可以使用Kubernetes Pod在同一子網中加入硬件?

[英]Is it possible to join a hardware in the same subnet with Kubernetes pods?

我已經在裸機上設置了帶有絨布網絡的Kubernetes集群。 我已經在集群中部署並運行了一項服務。 該服務將廣播以發現同一子網中的其他終端設備。

問題在於,接收廣播的客戶端代理正在資源受限的硬件上運行。 這些設備與主節點和工作節點在同一子網中運行。 在pod(網絡掩碼:10.244.0.0/16)中部署的服務無法發現在主機OS子網(網絡掩碼:192.168.0.0/24)中運行的客戶端。 如何在Pod的子網中加入客戶端?

任何幫助表示贊賞。

問題在於它們實際上位於不同的子網中:Pod網絡和裸機網絡。 因此,您必須檢查哪些選項可用於不同子網之間的服務發現。 有些人建議使用跟蹤器(就像P2P網絡一樣工作) https://serverfault.com/a/304344/380575

您也可以嘗試將外部服務/端點添加到在群集外部運行的服務,但是我不確定這是否可行。

底線:如果您需要其他子網中的服務,則可以使用跟蹤器或為它們創建靜態端點。

我最終通過添加hostNetwork: true在pod配置hostNetwork: true主機和pod在同一子網中運行。 在這種情況下,容器正在使用主機網絡。 這里啟發

配置如下:

apiVersion: v1
kind: ReplicationController
metadata:
 name: worker
 namespace: default
spec:
 replicas: 4
 selector:
   name: worker
 template:
   metadata:
     labels:
       name: worker
 spec:
    hostNetwork: true
    containers:
       - image: 10.0.0.1:5000/worker
         name: worker
         imagePullPolicy: IfNotPresent

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM