Open kecorbin opened 6 years ago
@vleijon @hpreston
As you know I have a (sorta-working) prototype of this, so I have a few comments.
day0 templates are an issue. My desire is to use NSO, so I just need them to bring up the mgmt interface enough, beyond that less is better. But I know the VMMaestro UI gives more options. One idea here might be to change the input format to a YAML document instead, so that you can do
server-1:
type: linux
cfg:
<Input to the day0 template>
and just use the cfg-dictionary as (additional) input to the jinja2-template. It is slightly less simple, you might allow server-1: linux
as an abbreviation if you don't want any additional day0-variables, but the connections between nodes would have to be changed to something YAML-compliant.
Graphical layout. Today I just put them in a line, so the virl file looks a bit ugly when you open it in VMMaestro. It might be possible to do something smart from the topology.
I wouldn't mind taking a stab at implementing an initial version of this based on my prototype once we reach a consensus, but the layout issue is probably better put on the backlog for the future.
looping @sk2 and @rschmied as these kinds of use cases are of particular interest for them moving forward....
I agree on the NSO front and minimal day0, so i like the idea of being able to place some config.... manaully. ANK could also help down the road if the user wanted slightly more complicated/autogenerated configs..
ideally my first requirement would be to have an ncs-netsim like interface...
virl create-network iosxr 10 router
. this would leave the links / topo to get figured out but the newer API versions of VIRL may make this dead simple.
Depends how deep down the rabbit hole we want to go. I've long wanted to decompose network design into some common design patterns, and use these to then build up networks. There's some low-hanging fruit, some middle ground, and a lot of corner cases. If we can do the first two, we'd have a very valuable solution - especially if it's coupled with automated config generation and simulation environments.
For Network DevOps being able to quickly generate realistic topologies to test against is a big contribution.
Is your feature request related to a problem? Please describe. In certain scenarios, it is desirable to quickly generate a virl file manually.
Describe the solution you'd like
Support some sort of markup like
Describe alternatives you've considered
Some sort of virl markup e.g.
if during virl up no topology.virl file is present, it would look for topology.vml and automatically generate the XML
Additional context Add any other context or screenshots about the feature request here.