Skip to content

(MIRROR) This project provides a baseline capability to digest a Heat Orchestration Template and generate an interactive Network Topology Graph for the end user to evaluate

License

Notifications You must be signed in to change notification settings

gacybercenter/openstack-top-graph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenStack Topology Graph v1.0

This project provides a web app GUI for generating a topological graph of Heat Orchestration Templates. It can be used to dynamically manage associated network maps and provide an interactive topology. It recursively extracts the input data and formats it into a D3.js force simulation. Can handle multiple heat-templates at once is they are selected in the file upload menu. Note: Resources accross heat templates will link if {get_param : (resource)_id} is in the file

The webpage uses D3.js version 7 and Cloudflare's JSON and YAML parsing library version 3.14.1.

Disclaimer:

Still under development. There are some bugs.

Supported resource types:

  • Net
  • Subnet
  • Router
  • RouterInterface
  • Server
  • Port
  • FloatingIP
  • ResourceGroup
  • SecurityGroup
  • ExtraRoute
  • WaitCondition
  • WaitConditionHandle
  • MultipartMime
  • SoftwareConfig
  • RandomString
  • RecordSet
  • Zone

Usage

Quick Start:

  1. Navigate to https://topology.gacyberrange.org
    Or host the index.html file locally
  2. Click on the "Select File" button or the text box
  3. Upload your YAML or JSON heat template

It should look something like this: Alt text Or this: Alt text

Features:

  1. YAML and JSON Parsing
  2. Force Simulation
  3. Dragging
  4. Panning
  5. Zooming
  6. Device Tooltips
  7. Toggleable Buttons
  8. Charge and Size Sliders
  9. Multi-file Upload

Options Buttons:

  • Lock Nodes
    Locks each node in place (they can still be dragged)
  • Show Subnets
    Draws a polygon hull around Subnets and their dependencies
  • Show IPs
    Replaces all the node names with the node IPs if applicable
  • Show Params
    Lists the heat temlate description and parameters
  • Hide Legend
    Hides the device type legend
  • Tooltips +
    Shows hidden tooltip information
  • Darkmode
    Makes the background darker and text lighter

Options Sliders:

  • Charge
    Adjusts the interaction strenght between nodes
  • Size
    Adjusts the node icon and text size

Contributing

OpenStack Topology Graph Gitlab Repository

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update the examples as appropriate.

License

Copyright 2020 Augusta University

Augusta University Intellectual Property Policy

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

(MIRROR) This project provides a baseline capability to digest a Heat Orchestration Template and generate an interactive Network Topology Graph for the end user to evaluate

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published