An error occurred at the FT of CNF LCM with Helm chart on the
sol-kubernetes job due to the time it took to remove the Kubernetes
resources for the entire heal operation.
There is not enough time to wait for the status to COMPLETED, and the
heal operation itself succeeded.
This patch extends the timeout period to avoid errors.
Implements new interface for Kubernetes VIM to handle Helm chart.
It enables Users to include Helm chart files as MCIOP in their VNF
Packages, to instantiate and to terminate CNF with them.
And update sample of MgmtDriver to install and configure Helm package
for using Helm cli command in the deployed Kubernetes cluster VNF, and
to restore the registered helm repositories and charts after the master
node is healed.
Implements: blueprint helmchart-k8s-vim
Implements Container based VNF heal operation support with ETSI
NFV-SOL002 and SOL003 v2.6.1 VNF Lifecycle Management. For "Heal VNFC
with SOL002", users can heal Pod (mapped as VNFC) that is singleton or
created using controller resources such as Kubernetes Deployment,
DaemonSet, StatefulSet and ReplicaSet. For "Heal VNF instance with
SOL003", users can heal entire VNF instance by termination and
instantiation of the VNF.
* Store Pod information to vnfcResourceInfo after instantiation.
* Update vnfcResourceInfo after scale operation.
Implements: blueprint support-cnf-heal
Implements Container based VNF scale operation support with ETSI
NFV-SOL003 v2.6.1 VNF Lifecycle Management. Users can scale the number
of pod replicas managed by controller resources such as Kubernetes
Deployment, StatefulSet, and ReplicaSet.
* Check the vnf_state before scale operation in controller as other
* Enable to store multiple flavour to `vnfd_attribute` when
`Conductor._onboard_vnfd()` method called.
* For FT, sqlalchemy is used, which calls functions in pymysql.py,
so the dependency module PyMySQL needs to be added.
Implements: blueprint support-cnf-scale
This patch add a kubernetes cluster for the kubernetes related
functional tests of the VNF LCM in the zuul environment.
There is no impact to the existing jobs because this patch only
add a new job, however we may need to watch the load on the Zuul
environment due to its parallel jobs.
A new node-set consists of four nodes;
* Controller: Keystone, Nova, Neutron, Glance, Cinder, Octavia,
MySQL, MQ, ETCD
* Controller-tacker: Tacker, Tacker-conductor
* Controller-k8s: kuryr-k8s, kuryr-CNI, k8s-api, kubelet
* Compute: Nova-compute
All kubernetes resources are created on the controller-k8s node.
This patch includes the following changes:
* Added a execution command for the functional test of related
k8s for the VNF LCM in tox.ini.
* Registered a vim of the `kubernetes` type by ansible. Also
added related materials.
* Moved the functional test files for k8s to other new directory.
* Fixed a minor invalid definition in the definition file used
for functional testing.