Example Network Resource Configuration for Cluster with Virtual Nodes
Find out about how you might configure network resources for a cluster with virtual nodes when using Kubernetes Engine (OKE).
VCN
Resource | Example |
---|---|
VCN |
|
Internet Gateway |
|
NAT Gateway |
|
Service Gateway |
|
DHCP Options |
|
Subnets
Resource | Example |
---|---|
Public Subnet for Kubernetes API Endpoint |
Name: KubernetesAPIendpoint with the following properties:
|
Private Subnet for Virtual Nodes and Pods |
Name: nodespods with the following properties:
|
Public Subnet for Service Load Balancers |
Name: loadbalancers with the following properties:
|
Route Tables
Resource | Example |
---|---|
Route Table for Public Kubernetes API Endpoint Subnet |
Name: routetable-KubernetesAPIendpoint, with one route rule defined as follows:
|
Route Table for Private Virtual Nodes and Pods Subnet |
Name: routetable-nodespods, with two route rules defined as follows:
|
Route Table for Public Load Balancers Subnet |
Name: routetable-serviceloadbalancers, with one route rule defined as follows:
|
Security List Rules for Public Kubernetes API Endpoint Subnet
The seclist-KubernetesAPIendpoint security list has the ingress and egress rules shown here.
Ingress Rules:
State | Source | Protocol/Dest. Port | Description |
---|---|---|---|
Stateful | 0.0.0.0/0 | TCP/6443 | External access to Kubernetes API endpoint. |
Stateful | 10.0.10.0/19 (Nodes/Pods CIDR) | TCP/6443 | Virtual node to Kubernetes API endpoint communication. |
Stateful | 10.0.10.0/19 (Nodes/Pods CIDR) | TCP/12250 | Virtual node to control plane communication. |
Stateful | 10.0.10.0/19 (Nodes/Pods CIDR) | ICMP 3,4 | Path Discovery. |
Egress Rules:
State: | Destination | Protocol / Dest. Port | Description: |
---|---|---|---|
Stateful | All <region> Services in Oracle Services Network | TCP/443 | Allow Kubernetes API endpoint to communicate with regional OCI service endpoints. |
Stateful | 10.0.10.0/19 (Nodes/Pods CIDR) | TCP/ALL | Allow Kubernetes API endpoint to communicate with virtual nodes. |
Stateful | 10.0.10.0/19 (Nodes/Pods CIDR) | ICMP 3,4 | Path Discovery. |
Security List Rules for Private Nodes/Pods Subnet
The seclist-nodespods security list has the ingress and egress rules shown here.
Ingress Rules:
State: | Source | Protocol / Dest. Port | Description: |
---|---|---|---|
Stateful | 10.0.10.0/19 | ALL/ALL | Pod-to-pod communication. |
Stateful | 10.0.10.0/19 | ALL / 30000-32767 | Traffic from load balancer to pod and health check node port traffic for external-traffic-policy=local |
Stateful | 10.0.10.0/19 | TCP/UDP / 10256 | Traffic from load balancer to health check port for external-traffic-policy=cluster |
Stateful | 10.0.0.0/28 | ICMP 3,4 | Path discovery from API server. |
Stateful | 10.0.0.0/28 | TCP/ALL | API server to virtual node communication. |
Egress Rules:
State: | Destination | Protocol / Dest. Port | Description: |
---|---|---|---|
Stateful | 10.0.10.0/19 (Nodes/Pods CIDR) | ALL/ALL | Pod-to-pod communication. |
Stateful | 10.0.0.0/28 | TCP/6443 | Virtual node/pod to API server communication. |
Stateful | 10.0.0.0/28 | TCP/12250 | Virtual node/pod to API server communication. |
Stateful | 10.0.0.0/28 | ICMP 3,4 | Path discovery to API server. |
Stateful | All <region> Services in Oracle Services Network | TCP/443 | Virtual node/pod to regional OCI service endpoints communication. |
Stateful | 0.0.0.0/0 | ICMP 3,4 | Access from virtual node/pod to Kubernetes control plane. |
Stateful | 0.0.0.0/0 | ALL/ALL | Pod access to internet |
Security List Rules for Public Load Balancer Subnet
The seclist-loadbalancers security list has the ingress and egress rules shown here.
Ingress Rules:
State: | Source | Protocol / Dest. Port | Description: |
---|---|---|---|
Stateful |
0.0.0.0/0 |
TCP / 443/80 |
Incoming traffic to load balancer assuming listener port is 80/443 |
Egress Rules:
State: | Destination | Protocol / Dest. Port | Description: |
---|---|---|---|
Stateful | 10.0.10.0/19 (Nodes/Pods CIDR) | ALL / 30000-32767 | Traffic to pod and health check node port traffic for external-traffic-policy=local |
Stateful | 10.0.10.0/19 (Nodes/Pods CIDR) | TCP/UDP / 10256 | Traffic to health check port for external-traffic-policy=cluster |