2 apiVersion: apiextensions.k8s.io/v1
3 kind: CustomResourceDefinition
5 name: network-attachment-definitions.k8s.cni.cncf.io
10 plural: network-attachment-definitions
11 singular: network-attachment-definition
12 kind: NetworkAttachmentDefinition
21 description: 'NetworkAttachmentDefinition is a CRD schema specified by the Network Plumbing
22 Working Group to express the intent for attaching pods to one or more logical or physical
23 networks. More information available at: https://github.com/k8snetworkplumbingwg/multi-net-spec'
27 description: 'APIVersion defines the versioned schema of this represen
28 tation of an object. Servers should convert recognized schemas to the
29 latest internal value, and may reject unrecognized values. More info:
30 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
33 description: 'Kind is a string value representing the REST resource this
34 object represents. Servers may infer this from the endpoint the client
35 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
40 description: 'NetworkAttachmentDefinition spec defines the desired state of a network attachment'
44 description: 'NetworkAttachmentDefinition config is a JSON-formatted CNI configuration'
48 apiVersion: rbac.authorization.k8s.io/v1
52 - apiGroups: ["k8s.cni.cncf.io"]
75 kind: ClusterRoleBinding
76 apiVersion: rbac.authorization.k8s.io/v1
80 apiGroup: rbac.authorization.k8s.io
84 - kind: ServiceAccount
86 namespace: kube-system
92 namespace: kube-system
97 name: multus-cni-config
98 namespace: kube-system
103 # NOTE: If you'd prefer to manually apply a configuration file, you may create one here.
104 # In the case you'd like to customize the Multus installation, you should change the arguments to the Multus pod
105 # change the "args" line below from
106 # - "--multus-conf-file=auto"
108 # "--multus-conf-file=/tmp/multus-conf/70-multus.conf"
109 # Additionally -- you should ensure that the name "70-multus.conf" is the alphabetically first name in the
110 # /etc/cni/net.d/ directory on each node, otherwise, it will not be used by the Kubelet.
113 "name": "multus-cni-network",
120 "cniVersion": "0.3.1",
121 "name": "default-cni-network",
127 "isDefaultGateway": true,
140 "kubeconfig": "/etc/cni/net.d/multus.d/multus.kubeconfig"
147 namespace: kube-system
169 serviceAccountName: multus
172 image: ghcr.io/k8snetworkplumbingwg/multus-cni:stable
173 command: ["/entrypoint.sh"]
175 - "--multus-conf-file=auto"
176 - "--cni-version=0.3.1"
188 mountPath: /host/etc/cni/net.d
190 mountPath: /host/opt/cni/bin
192 mountPath: /tmp/multus-conf
193 terminationGracePeriodSeconds: 10
203 name: multus-cni-config