Skip to content

默认VPC如何与自定义VPC通信 #5145

Open
@dantegarden

Description

@dantegarden

kubeovn v1.13.5
kubernetes v1.31

我使用自定义vpc为租户创建隔离环境。Prometheus跑在默认vpc和默认子网里。Prometheus需要从租户启动的pod拉取metrics。目前无法通信,请问要怎样才能打通呢?

另外,我这里还使用了natgw为自定义vpc提供出网能力,以及vpc-dns。考虑到pod(deployment)是租户创建的,ip并不固定,用dnat映射似乎不太合适。
以下是一个租户的vpc配置

apiVersion: kubeovn.io/v1
kind: Vpc
metadata:
  labels:
    hosted: "true"
  name: vpc-supertester
spec:
  namespaces:
  - supertester
  staticRoutes:
  - bfdId: ""
    cidr: 0.0.0.0/0
    ecmpMode: ""
    nextHopIP: 11.96.0.254
    policy: policyDst
    routeTable: ""

---
apiVersion: kubeovn.io/v1
kind: Subnet
metadata:
  labels:
    hosted: "true"
  name: subnet-supertester
spec:
  cidrBlock: 11.96.0.0/24
  default: false
  enableLb: true
  excludeIps:
  - 11.96.0.1
  - 11.96.0.254
  - 11.96.0.255
  gateway: 11.96.0.1
  gatewayNode: ""
  gatewayType: distributed
  namespaces:
  - supertester
  natOutgoing: false
  private: false
  protocol: IPv4
  provider: ovn
  vpc: vpc-supertester

---
apiVersion: kubeovn.io/v1
kind: VpcNatGateway
metadata:
  labels:
    hosted: "true"
  name: natgw-supertester
spec:
  affinity: {}
  bgpSpeaker:
    asn: 0
    enableGracefulRestart: false
    enabled: false
    holdTime: 0s
    password: ""
    remoteAsn: 0
    routerId: ""
  externalSubnets:
  - ovn-vpc-external-network
  lanIp: 11.96.0.254
  qosPolicy: qos-supertester
  selector:
  - 'kubernetes.io/os: linux'
  - 'natgw: true'
  subnet: subnet-supertester
  vpc: vpc-supertester

---
apiVersion: kubeovn.io/v1
kind: IptablesEIP
metadata:
  labels:
    hosted: "true"
    ovn.kubernetes.io/subnet: ovn-vpc-external-network
    ovn.kubernetes.io/vpc-nat-gw-name: natgw-supertester
  name: eip-supertester
spec:
  externalSubnet: ovn-vpc-external-network
  macAddress: 8e:39:c4:8a:bd:40
  natGwDp: natgw-supertester
  qosPolicy: ""
  v4ip: 10.16.132.32
  v6ip: ""

---
apiVersion: kubeovn.io/v1
kind: IptablesSnatRule
metadata:
  annotations:
    ovn.kubernetes.io/vpc_eip: eip-supertester
  labels:
    hosted: "true"
    ovn.kubernetes.io/eip_v4_ip: 10.16.132.32
    ovn.kubernetes.io/vpc-nat-gw-name: natgw-supertester
  name: sr-supertester
spec:
  eip: eip-supertester
  internalCIDR: 11.96.0.0/24
status:
  internalCIDR: 11.96.0.0/24
  natGwDp: natgw-supertester
  ready: true
  redo: ""
  v4ip: 10.16.132.32
  v6ip: ""

---
apiVersion: kubeovn.io/v1
kind: VpcDns
metadata:
  labels:
    hosted: "true"
  name: dns-supertester
spec:
  replicas: 2
  subnet: subnet-supertester
  vpc: vpc-supertester

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions