getting VNF details for Tacker VM

Asked by Kaliyaperumal

I am from Verizon. we are using Tacker as MANO for one trial usecase. I have a question on tacker. There are APIs to create the vnf, update the vnf, delete the vnf. I am not seeing any API for getting the VNF details. I think this needs to be covered on lifecycle management. Once VNF is created , I want to get the instance details like IP Address on interface, etc. If we look at the NIFV UI in openstack, it has the VNF name. But there is no linkage to instance ID using this VNF name. How do we get these info for tacker created VM?. is it already available in some other API or Tacker team is working on it?. It will be really great help if tacker team provide info on this.
We are using devstack master branch for tacker.

I think Kopinath from my group would have already asked some questions to Sripriya on tacker.

thanks
kali

Question information

Language:
English Edit question
Status:
Needs information
For:
tacker Edit question
Assignee:
Sripriya Edit question
Last query:
Last reply:
Revision history for this message
Sripriya (sseetha) said :
#1

Hi Kali,

There is Tacker API to get VNF details.

From the command line, you can use python-tackerclient to show VNF information using the below command

tacker vnf-show <vim name or id>

Currently, we do no support accessing the VNF information from Horizon. Bu that will be a good RFE to implement within Tacker.

Cheers,
Sripriya

Revision history for this message
Kaliyaperumal (rkaliss) said :
#2

Sripriya,

 Thanks for your prompt response.

But when I run the vnf-show command it is not giving the details. It just gives the details of the VM while captured during the VM creation.

Pls see my screenshots below.

Also I have a question. If you see the output of vnf-create, you will see, instance id. But when I go to instance details screen in openstack. that id is completely different. So I am not able to link with instance from any of the vnf_create outputs except tenenat_id. It would be great help if you provide some inputs on this.

training@Innova6:~/Downloads$ tacker vnf-create --name vnf-name --vnfd-id 2b5a5bd1-34a8-4187-a4bb-86e42f015a76
Created a new vnf:
+-------------+--------------------------------------+
| Field | Value |
+-------------+--------------------------------------+
| description | OpenWRT Router |
| id | 424dbe8f-b02d-45a7-8e47-dca112344def |
| instance_id | 653753d2-7796-4fa4-8b29-9d6a807f6b67 |
| mgmt_url | |
| name | vnf-name |
| status | PENDING_CREATE |
| tenant_id | 8c05a1e0878a4b26ba4ceb808fef42b1 |
| vnfd_id | 2b5a5bd1-34a8-4187-a4bb-86e42f015a76 |
+-------------+--------------------------------------+

training@Innova6:~/Downloads$ tacker vnf-show 424dbe8f-b02d-45a7-8e47-dca112344def
+-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field | Value |
+-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| attributes | {"heat_template": "description: OpenWRT Router\nheat_template_version: 2013-05-23\noutputs: {}\nresources:\n vdu1:\n properties:\n availability_zone: nova\n config_drive: true\n flavor: m1.tiny\n image: openwrt-snapshotimage\n metadata: {param0: key0, param1: key1}\n networks:\n - {network: net_mgmt}\n - {network: net1}\n type: OS::Nova::Server\n", "monitoring_policy": "{\"vdus\": {}}"} |
| description | OpenWRT Router |
| id | 424dbe8f-b02d-45a7-8e47-dca112344def |
| instance_id | 653753d2-7796-4fa4-8b29-9d6a807f6b67 |
| mgmt_url | |
| name | vnf-name |
| status | ACTIVE |
| tenant_id | 8c05a1e0878a4b26ba4ceb808fef42b1 |
+-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

Revision history for this message
Sripriya (sseetha) said :
#3

Hi,

The instance_id in vnf-show command refers to heat stack_id and not the actual VM itself. I understand the nomenclature used here is confusing. If you fetch the resources for the given stack_id, you will be able to see the actual instance id of the VM. Right now from Tacker, you do not have the option to see the VM instance id. However, you should be able to see the Instance IP address in the mgmt_url column, I see mgmt_url empty in your screenshot. Can you confirm if spinning a normal openwrt VM as a nova instance in the tenant is acquiring IP successfully?

I'll create a RFE to update instance_id as stack_id to avoid the confusion.

Cheers,
Sripriya

Revision history for this message
Kaliyaperumal (rkaliss) said :
#4

Hi Sripriya,

Thanks again for your prompt response.

Here is what I do. I installed the latest master branch with tacker as explained the installation steps. Once installed, then I go openstack UI by logging in admin/devstack and it brings me to the demo project.
Then I use the NFV tab in UI to onboard the vnfd using the openWRT image and onboard the VNF using the vnfd in the same NFV UI. Even for this, when I do the vnf-show, it is not giving the ip details. Also I tried to look at the vnfd id in tacker.log and use that vnfid to create the VM via vnf-create command. Then I did vnf-show with id generated in vnf-create command. But if I go to instance details screen in admin project, then it brings the instance with all details but vnf-show is not showing the details.

you were mentioning above getting the entire details using instance_id as stack_id. what command used for this and how do get the details.

If would be great help if you let me know the ways to get the instance details. or how do I verify this?.

thanks
kali

Revision history for this message
Sridhar Ramaswamy (srics-r) said :
#5

In the sample output in #2 above the VNF is in PENDING-CREATE state and mgmt-url field is empty. Can you wait until VNF goes to ACTIVE state and then do a 'vnf-show' ? mgmt-url should display a dictionary of ip addresses.

+1 to link this to a bug to change "instance_id" -> "stack_id"

Can you help with this problem?

Provide an answer of your own, or ask Kaliyaperumal for more information if necessary.

To post a message you must log in.