インターネット上のパブリック ユーザーから直接アクセスできるようにする必要がある GKE 上の特定の K8s ポッドのいくつかに、2 つ目のインターフェイスを追加する必要があります。そこで、Multus を使用して、Macvlan cni を次のように定義しました。
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
name: macvlan-conf
spec:
config: '{
"cniVersion": "0.3.1",
"type": "macvlan",
"master": "eth0",
"mode": "bridge",
"ipam": {
"type": "host-local",
"subnet": "10.162.0.0/20",
"rangeStart": "10.162.0.100",
"rangeEnd": "10.162.0.150",
"routes": [
{ "dst": "0.0.0.0/0" }
],
"gateway": "10.162.0.1"
}
}'
10.162.0.1 は、GCP の K8s ノードのデフォルト ゲートウェイです。したがって、この場合、ポッドは外部にアクセスできる必要があると思います。しかしポッドでは、内部ポッド トラフィックをルーティングするデフォルト ゲートウェイが 1 つだけ存在します。また、権限の問題でルートを追加できません。
質問:
私の予想は間違っていますか?これらのポッドのパブリック インターフェイスを作成するには、Macvlan をどのように使用すればよいですか?