gacybercenter / openstack-top-graph

(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

Home Page:https://gitlab.com/gacybercenter/open/openstack-top-graph

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

https://gitlab.com/gacybercenter/open/openstack-top-graph

License:Other


Languages

Language:JavaScript 90.2%Language:HTML 7.4%Language:CSS 2.4%