Importing Application Entities

The structure and content of an application entities import file are very similar to the other hierarchical entities import files. But instead of having a child_entities object, they have either an itl_pattern array or a devices array.

Application entities are built using Initiator, Target, and LUN (ITL) combinations. You can specify ITL patterns. See ITL pattern rules in ???????????????for more details.

Each itl_pattern array is an object with as many as four components:

  • An edit_type: Default is add; remove is also an option

  • An initiator: An HBA Port or a WWN

  • A target: A storage port or a WWN

  • A lun: A LUN number

For the initiator field, you can specify a Host, HBA Card or Host Port.

  • NFS Conversation

  • MB Conversation

  • iSCSI Conversation

  • Host

  • HBA Card

  • HBA Port

  • ESX VM

  • Microsoft Hyper-V VM

  • PowerVM VIOS Partition

  • PowerVM Partition

Each devices array is an object with an “add” verb and an array of supported entity types.

There are some rules about how the itl_pattern elements are used and they mirror the entity creation mechanisms in the UI:

  • edit_type is always required.

  • An initiator must be provided.

  • If both initiator and target are included, then lun can be excluded (representing all LUNs).

Structure of an application entity import file:

{

"entities": [

{

"description": "description text",//Description is optional

"devices": {"add": ["device1", //“add”: adds the specified children to “name”

"10.0.0.1:10.2.0.1:0",

"10.0.0.3"]},

"itl_patterns": [

{

"edit_type": "add",

"initiator": "somehbaport",

"lun": 0,//Omitting the LUN would act as a wildcard

"target": "somestorageport"

},

{

"edit_type": "add",

"initiator": "somehbaport",

"target": "somestorageport"

}

],

"name": "name text",//Name of the entity to be created (application)

"tags": ["JSONIMPORTED"],//”tags”: Optional; helps with search and identification

"type": "application"//Entity type being created

}

],

"version": 2//JSON file format used

}

To add a Tier to an application, add the following JSON content to your import file:

{

"entities": [

...

{

"name" : "Tier 3",//Tier 3 is predefined, so you’re modifying it

"type" : "tier",

"child_entities" : {

"add" : [ "app1", "app2", ..., "appn" ]//You can designate a series of entity names

},

...

],

...

}

Note: The tiers specified in the name attribute as shown above must already be defined in VirtualWisdom. They cannot be added using import.