The Group API RESTful services allows you to collect Firefly Perimeter VMs into a group for monitoring.
Junos Space Virtual Director encompasses the notion of groups to allow you to monitor collectively certain Firefly Perimeter VMs. Firefly Perimeter VMs can belong to groups that you define either as static groups or smart groups. Firefly Perimeter VMs provisioned through Virtual Director or created manually are candidates for inclusion in groups.
- Static groups allow you to select specific Firefly Perimeter VMs to be belong to the group. A static group remains the same and it includes the same VM members unless you manually change it, deleting or adding Firefly Perimeter VMs.
- Smart groups are dynamic. Firefly Perimeter VMs join them automatically if their definitions match one or more of the smart groups characteristics.
Static groups are simple to define by comparison to smart groups.
For smart groups, you define a set of rules, or requirements, that specify variables that characterize the group. A Firefly Perimeter that matches one or more of a smart groups rules automatically becomes a member of the group.
A Firefly Perimeter VM may pass in and out of a smart group automatically. If the VMs configuration is changed in such a way that it no longer meets the groups definition, the VM is automatically removed from the group.
You use logic to define a smart groups rules. The Groups API allows you to use the same logic between different conjunctions. For this release, Virtual Director supports AND and OR logic, and Equals (=), and Not Equals (!=), and Contains(~) relational operators. That is, the AND and OR logic can be used in the same group definition. Also all operators can exist within the same rule.
Firefly Perimeter VMs are matched against the expressions to determine whether they should automatically join the group. For example, an expression might require that a VM is not a member of a specific data center but that it must belong to a specific port group.
For example, you could create a smart group that has the following definition: ( vi.name Equals xxx ) AND ( vi.notes Equals yyy ) AND ( vi.host NotEquals hhh )
You could also create a smart group that has the following definition: ( vi.name Equals xxx ) AND ( vi.notes Equals yyy )
Virtual Director provides the following predefined attributes that you can use to define groups: vi.attribute, vi.cluster, vi.datacenter, vi.folder, vi.host, vi.name, vi.notes, vi.portgroup, vi.powerstate, vi.resourcepool.
The Group APIs support the following operations, depending on the group: GET, POST. Group APIs and the GET Operation
The Group APIs return an object or a collection of objects that gives the Group name and displays content for all data for VMs that belong to the group.
For performance data, the Virtual Director monitoring module retrieves on demand from vCenter information such as CPU and memory usage.
Note: Performance data is not stored in the database. Therefore for this release performance data is neither historical nor updated in real-time.
For VMs that Firefly Perimeter instances run in, the Group APIs can return the following information:
- VM status (poweredOn/poweredOff)
- Uptime in hours
- Overall CPU usage
- Memory usage
For a Firefly Perimeter instance itself, Virtual Director retrieves through the DMI statistical data such as protocol packets transmitted and system uptime. The Group APIs can return the following information:
- Input/output packets for UDP, TCP, ICMP protocols
- System last uptime
- System flow statistics
- Interfaces up/down
- Input/Output packets through the interfaces
For information about the Groups themselves, the APIs return different information for static groups and smart groups.
- Static Group--If the group is a static group, the API returns an object containing the Universal Unique Identifier (UUID) of each member of the group, the description defined for the group, the date when the group was created and when it was modified, the number of expressions defined for the group, the group type (which for static groups is BUILTIN), and the group name.
- Smart Group--If the group is a smart group, the API returns a collection of objects containing the smart group definition for each expression that defines the group. For each expression, it returns the comparator used, the value, the match value, and the attributes.
Firefly Perimeter VMs are matched against the expressions to determine whether they should automatically join the group. For example, and expression might require that a VM is not a member of a specific data center but that it must belong to a specific port group
Group APIs and the POST Operation
You can post smart group properties or use the manage-groups API to define groups.
Methods and Collectionsmethod
The following APIs support data notification:
For more information about enabling data notifications for this service, see the following links: