1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-05 12:46:18 +01:00
Files
openshift-docs/modules/virt-creating-layer2-nad-cli.adoc
2024-02-13 16:18:05 +00:00

56 lines
2.2 KiB
Plaintext

// Module included in the following assemblies:
//
// * virt/vm_networking/virt-connecting-vm-to-ovn-secondary-network.adoc
:_mod-docs-content-type: PROCEDURE
[id="virt-creating-layer2-nad-cli_{context}"]
= Creating a NAD for layer 2 topology using the CLI
You can create a network attachment definition (NAD) which describes how to attach a pod to the layer 2 overlay network.
.Prerequisites
* You have access to the cluster as a user with `cluster-admin` privileges.
* You have installed the OpenShift CLI (`oc`).
.Procedure
. Create a `NetworkAttachmentDefinition` object:
+
[source,yaml]
----
apiVersion: k8s.cni.cncf.io/v1
kind: NetworkAttachmentDefinition
metadata:
name: l2-network
namespace: my-namespace
spec:
config: |2
{
"cniVersion": "0.3.1", <1>
"name": "my-namespace-l2-network", <2>
"type": "ovn-k8s-cni-overlay", <3>
"topology":"layer2", <4>
"mtu": 1300, <5>
"netAttachDefName": "my-namespace/l2-network" <6>
}
----
<1> The CNI specification version. The required value is `0.3.1`.
<2> The name of the network. This attribute is not namespaced. For example, you can have a network named `l2-network` referenced from two different `NetworkAttachmentDefinition` objects that exist in two different namespaces. This feature is useful to connect VMs in different namespaces.
<3> The name of the CNI plug-in to be configured. The required value is `ovn-k8s-cni-overlay`.
<4> The topological configuration for the network. The required value is `layer2`.
<5> Optional: The maximum transmission unit (MTU) value. The default value is automatically set by the kernel.
<6> The value of the `namespace` and `name` fields in the `metadata` stanza of the `NetworkAttachmentDefinition` object.
+
[NOTE]
====
The above example configures a cluster-wide overlay without a subnet defined. This means that the logical switch implementing the network only provides layer 2 communication. You must configure an IP address when you create the virtual machine by either setting a static IP address or by deploying a DHCP server on the network for a dynamic IP address.
====
. Apply the manifest:
+
[source,terminal]
----
$ oc apply -f <filename>.yaml
----