200 likes | 319 Vues
This project aims to create an innovative visual tool for representing VMware virtual networks consisting of variable nodes and specified links. Utilizing PowerCLI scripting, users can retrieve data directly from servers without relying on VM Infrastructure clients. The architecture incorporates Java APIs for document processing, using a parent-child node structure for graphical mapping, and employs the JUNG2 library for an intuitive user interface. Future development opportunities include support for multiple servers and additional data fields.
E N D
Virtual Network Visualizer The Last Procedure: Tanis Lopez Brett Papineau Grant Boomer Archana Shrestha
Overview • Project Description • Architecture and Design • Implementation • Documentation • Demo • Possible Additions • Future Development
Project Description Customer • Dr. Jim Alves-Foss, CS Dept. • Intent: Develop a visual way of representing a VMWare Virtual Network with a variable number of nodes and specified links between nodes
Scripting • PowerCLI • Power Shell 2.0 • .Net Framework
Retrieving Data From VMWare • Direct Access to Server • Not through VM Infrastructure Client • Uses Cmndlets to query server • Returns Objects • Multiple responses are stored in Array
Using VMPowerScript • Simply run the script in PowerCLI! • Must Be connected to a Server. • Currently only support one server (Proton or Neutron) • Provide a write path. • Requires a change in how students interact with R.A.D.I.C.L.
Why a Script? • Complete Decoupling from Visualizer • Easy Format. • Students can write own scripts or modify VMPowerScript • Need to follow format restrictions. • Can retrieve what information they need. • PowerCLI offers a powerful alternative to VM Infrastructure
Parsable Document <node> Name Field1 Field2 Field3 <edge> connect1,connect2 <node> vSwitch0 Type: Virtual Switch ID: key-vim.host.VirtualSwitch-vSwitch0 NIC: vmnic0 <edge> proton.radicl.uidaho.edu,vSwitch0
Document Processing • The document is processed using Java API’s • Each node has an associated name, and an additional 3 fields • Entered into the Hash Maps by its tag type
Internal Data Structures • Hash Maps • NodeTable • EdgeTable • HashMaps allow null keys and values unlike a hash table.
Graphical Mapping • The base is a parent child node structure • Balloon Layout gives a clearer viewing mode • Implemented by JUNG2 library.
Graphical User Interface • Main Visualization Canvas • Contains the graph layout • Allows for transforming and picking • User Panel • Contains buttons for zoom, layout, and reset • Contains a textarea for node data output
Documentation • SDD • SRS • Test Plan • Manual(s)
Open Defects File writing error that can only be overcome by creating a new document and pasting in the contents from the script. No support for a structure that has multiple parents connected to a single child. Can be from duplication.
Possible Additions • Arbitray Number of Data Fields • Selected Desired Information via Command Line Arguments • Support for Multiple Servers
Further Development • Direct Interface with VMWare • Yes! It is Possible! • Would be an entirely new project.
Conclusion • Project Description • Architecture and Design • Documentation • Demo • Possible Additions