The generic differences between the VM and containers are as follows:
- VMs usually consist of their own operating system (OS), measured in GBs. They contain multiple resource-intense functions.
- Containers package only an application and all its required files.
With OSM you can deploy NetApps both as containers and/or VMs. The spin-up time for containers are smaller than the VMs. As of now, in OSM, the containers are managed by the underlying Kubernetes. The Helm charts are referred in the VNF descriptors(VNFD) to deploy and instantiate the containers. Whereas for VM based VNFs, the VM image is reffered directly in the VNFD.
While containers and VMs have their own benefits and limitations. It is upto the NetApp developer to decide on the best-fit approach for their use case.