K8s Plugin Network Related CRD's for R5

K8s Plugin Network CRD

The purpose of this CRD is to create and delete dynamic network. For updating, delete is required followed by "create". 

Spec for K8s Plugin Network CRD

Spec
NetworkSpec CniType string // Ovn4nfv is the only supported type Ipv4Subnets []Ip4Subnet // Some CNI may support only one subnet Ipv6Subnets []Ip6Subnet // Optional Route []Routes // Optional - List of Routes for this Network Dns DnsSpec // Optional Ipv4Subnet Name string // Name of the subnet Subnet string // Subnet CIDR Gateway string // Optional Gateway CIDR if not provided assumed it is the first address in subnet ExcludeIps string // Optional list of IP address in a comma sperated list Ipv6Subnet Name string // Name of the subnet Prefix string // Prefix for Ipv6 Gateway string // Optional Gateway ExcludeIps string // Optional list of IP address in a comma sperated list Routes Destination string // Destination CIDR Gateway string // IP of next hop Dns NameServers []string // List of nameservers Domain string // Name of local domain Search []string // List of search domains Options []string // List of options

Network CRD

Network CRD
apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: name: networks.k8s.plugin.opnfv.org spec: group: k8s.plugin.opnfv.org version: v1 names: kind: Network plural: networks scope: Namespaced subresources: # status enables the status subresource. status: {} validation: openAPIV3Schema: type: object properties: spec: type: object properties: cniType: type: string ipv4Subnets: description: 'List of subnets for the network' type: array items: properties: name: type: string subnet: type: string

Example CR for Network CRD

Network CR Example
apiVersion: k8s.plugin.opnfv.org/v1 kind: Network metadata: name: ovn-priv-net spec: cniType: Ovn4nfv ipv4subnets: - subnet: 172.16.33.0/24 name: subnet1 gateway: 172.16.33.1/24 excludeIps: 172.16.33.2 172.16.33.5..172.16.33.10

Provider Network CRD

This CRD is to create a provider network on one or more nodes in the cluster. 

Spec for Provider Network CRD

Spec

Provider Network CRD

Provider Network CRD

Example CR for Provider Network CRD

Provider Network CR Example

Network Chaining CRD

The purpose of this CRD is to specify a chain of deployments to create a service chain. The order of the deployments in the list depicts the topology. For example the 

Spec for Network Chaining CRD

Spec

Network CRD

Network Chaining CRD

Example CR for NetworkChaining CRD

Network Chaining CR Example