From TestNF 3.1.0, we support TestNF upgrade from lower version(2.3.x, 3.0.x) to latest one.
Login to TCA GUI, make sure latest TestNF csar is uploaded, and TestNF instance with lower version is Instantiated successfully.
Click upgrade button to start upgrading.
Select target TestNF package and click NEXT button.
Check new node customization items and click NEXT button.
Provide helm repository information and click NEXT button. For non-airgapped environment, could use https://vmwaresaas.jfrog.io/artifactory/helm-registry/ directly without username and password. For airgapped environment, it should be the repository address where TestNF helm charts store.
Select right port groups for each NIC, and upload new values.yml if needed. Then click NEXT button.
Click NEXT button and review all parameters. If no questions, click UPGRADE button.
After several minutes, would see upgrade result in GUI.
For upgrading from TestNF 2.3.x, the following extra steps should be taken before doing any upgrade operations on TCA GUI.
In TestNF 2.3, below network-attachment-definitions resources are created in target namespace by default.
capv@classy-e2e-wc1-cp-control-plane-xnn2x [ ~ ]$ kubectl get network-attachment-definitions -n testnf-du NAMESPACE NAME AGE testnf-du ipvlan 14m testnf-du macvlan 14m testnf-du sriov-pass 14m
If still want to these existing resources, please set below section in values.yaml when triggering upgrade.
nads: []
If want to create and use new nads, please set below section in values.yaml when triggering upgrade.
annotations: k8s.v1.cni.cncf.io/networks: ipvlan-new,macvlan-new,sriov-pass-new nads: - apiVersion: "k8s.cni.cncf.io/v1" kind: NetworkAttachmentDefinition metadata: name: ipvlan-new annotations: k8s.v1.cni.cncf.io/resourceName: vlan1 spec: config: '{ "cniVersion": "0.3.0", "name": "ipvlan", "plugins": [ { "type": "ipvlan", "master": "vlan1", "ipam": { "type": "host-local", "ranges": [ [{ "subnet": "192.167.11.0/24", "rangeStart": "192.167.11.1", "rangeEnd": "192.167.11.255" }] ] } } ] }' - apiVersion: "k8s.cni.cncf.io/v1" kind: NetworkAttachmentDefinition metadata: name: macvlan-new annotations: k8s.v1.cni.cncf.io/resourceName: vlan2 spec: config: '{ "cniVersion": "0.3.0", "name": "macvlan", "plugins": [ { "type": "macvlan", "master": "vlan2", "ipam": { "type": "host-local", "ranges": [ [{ "subnet": "192.167.12.0/24", "rangeStart": "192.167.12.1", "rangeEnd": "192.167.12.255" }] ] } } ] }' - apiVersion: "k8s.cni.cncf.io/v1" kind: NetworkAttachmentDefinition metadata: name: sriov-pass-new annotations: k8s.v1.cni.cncf.io/resourceName: intel.com/sriovpass spec: config: '{ "cniVersion": "0.3.0", "name": "sriov-pass-network", "plugins": [ { "type": "host-device", "ipam": { "type": "host-local", "ranges": [ [{ "subnet": "192.167.13.0/24", "rangeStart": "192.167.13.1", "rangeEnd": "192.167.13.255" }] ] } }, { "type": "sbr" }, { "type": "tuning", "sysctl": { "net.core.somaxconn": "500" }, "promisc": true } ] }'