-
Notifications
You must be signed in to change notification settings - Fork 452
默认子网
oilbeater edited this page Jun 27, 2022
·
3 revisions
Wiki 下的中文文档将不在维护,请访问我们最新的中文文档网站,获取最新的文档更新。
Kube-OVN 中以子网来组织 IP,每个 Namespace 可以归属于不同的子网,Namespace 下的 Pod 会自动从所属的子网中获取 IP 并共享子网的网络配置(CIDR,网关类型,访问控制,NAT控制等)。
为了方便用户的快速上手使用,Kube-OVN 内置了一个默认子网,所有未显式声明子网归属的 Namespace 会自动从默认子网中分配 IP,并使用默认子网的网络信息。其中默认子网使用了分布式网关并对出网流量进行 NAT 转换,其行为和 flannel 的默认行为一致,用户无需额外的配置即可使用到大部分的网络功能。
默认子网 spec 中的 default 字段为 true,一个集群下只有一个默认子网,且创建后无法更改。
查看默认子网:
[root@node2 ~]# kubectl get subnet ovn-default -o yaml
apiVersion: kubeovn.io/v1
kind: Subnet
metadata:
creationTimestamp: "2019-08-06T09:33:43Z"
generation: 1
name: ovn-default
resourceVersion: "1571334"
selfLink: /apis/kubeovn.io/v1/subnets/ovn-default
uid: 7e2451f8-fb44-4f7f-b3e0-cfd27f6fd5d6
spec:
cidrBlock: 10.16.0.0/16
default: true
excludeIps:
- 10.16.0.1
gateway: 10.16.0.1
gatewayType: distributed
natOutgoing: true
private: false
protocol: IPv4
默认子网的配置需要在安装时指定,请参考配置内置网络
[root@node2 yamls]# kubectl run nginx --image=nginx:alpine
kubectl run --generator=deployment/apps.v1 is DEPRECATED and will be removed in a future version. Use kubectl run --generator=run-pod/v1 or kubectl create instead.
deployment.apps/nginx created
[root@node2 yamls]# kubectl get pod -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
nginx-74d5899f46-d7qkn 1/1 Running 0 8s 10.16.0.2 node3 <none> <none>