Abstract language to describe network deployments?
Clash Royale CLAN TAG#URR8PPP
Is there any more or less standard/spec that is, vendor neutral, for network configuration language? Say, a VPC with networks and virtual machines would become an XML or JSON file.
Something like,
<deployment>
<vpc name="Test">
<appliances>
<vm id="1" />
</appliances>
</vpc>
</deployment>
network architecture
add a comment |
Is there any more or less standard/spec that is, vendor neutral, for network configuration language? Say, a VPC with networks and virtual machines would become an XML or JSON file.
Something like,
<deployment>
<vpc name="Test">
<appliances>
<vm id="1" />
</appliances>
</vpc>
</deployment>
network architecture
No, not really. The problem is that not every vendor supports everything, and they all do it differently. This has been a goal for a long time, but it has proved to be very difficult. In any case, VPCs and VMs are off-topic here.
– Ron Maupin♦
Feb 5 at 15:28
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
Feb 5 at 17:16
@JFL ideally, both
– J. Doe
Feb 5 at 17:31
add a comment |
Is there any more or less standard/spec that is, vendor neutral, for network configuration language? Say, a VPC with networks and virtual machines would become an XML or JSON file.
Something like,
<deployment>
<vpc name="Test">
<appliances>
<vm id="1" />
</appliances>
</vpc>
</deployment>
network architecture
Is there any more or less standard/spec that is, vendor neutral, for network configuration language? Say, a VPC with networks and virtual machines would become an XML or JSON file.
Something like,
<deployment>
<vpc name="Test">
<appliances>
<vm id="1" />
</appliances>
</vpc>
</deployment>
network architecture
network architecture
asked Feb 5 at 14:02
J. DoeJ. Doe
1383
1383
No, not really. The problem is that not every vendor supports everything, and they all do it differently. This has been a goal for a long time, but it has proved to be very difficult. In any case, VPCs and VMs are off-topic here.
– Ron Maupin♦
Feb 5 at 15:28
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
Feb 5 at 17:16
@JFL ideally, both
– J. Doe
Feb 5 at 17:31
add a comment |
No, not really. The problem is that not every vendor supports everything, and they all do it differently. This has been a goal for a long time, but it has proved to be very difficult. In any case, VPCs and VMs are off-topic here.
– Ron Maupin♦
Feb 5 at 15:28
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
Feb 5 at 17:16
@JFL ideally, both
– J. Doe
Feb 5 at 17:31
No, not really. The problem is that not every vendor supports everything, and they all do it differently. This has been a goal for a long time, but it has proved to be very difficult. In any case, VPCs and VMs are off-topic here.
– Ron Maupin♦
Feb 5 at 15:28
No, not really. The problem is that not every vendor supports everything, and they all do it differently. This has been a goal for a long time, but it has proved to be very difficult. In any case, VPCs and VMs are off-topic here.
– Ron Maupin♦
Feb 5 at 15:28
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
Feb 5 at 17:16
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
Feb 5 at 17:16
@JFL ideally, both
– J. Doe
Feb 5 at 17:31
@JFL ideally, both
– J. Doe
Feb 5 at 17:31
add a comment |
4 Answers
4
active
oldest
votes
YANG is the answer here. To quote from RFC8345, which defines YANG:
This document defines an abstract (generic, or base) YANG data
model for network/service topologies and inventories. The data
model serves as a base model that is augmented with
technology-specific details in other, more specific topology and
inventory data models.
Protocols like NETCONF can use YANG for representations of network configurations.
add a comment |
Hashicorp's Terraform has a vendor-neutral (but not -agnostic) configuration language. AWS VPCs look like:
resource "aws_vpc" "Test"
cidr_block = "10.0.0.0/16"
instance_tenancy = "dedicated"
tags =
Name = "Test"
add a comment |
Ansible can be used to build (part of) a network as code.
It uses YAML syntax and can read JSON.
There's existing ansible roles for major vendor's equipment's, and you can build your own roles.
But existing roles are not always up to date and writing, and maintaining, your own can be time consuming.
add a comment |
For AWS VPCs specifically, you can use CloudFormation to generate a "configuration" file, which can be used to recreate the VPC and all the related components. I believe it's in JSON format.
For networks in general, there is no such thing. Figure out how to do it, and you can retire comfortably.
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "496"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fnetworkengineering.stackexchange.com%2fquestions%2f56638%2fabstract-language-to-describe-network-deployments%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
4 Answers
4
active
oldest
votes
4 Answers
4
active
oldest
votes
active
oldest
votes
active
oldest
votes
YANG is the answer here. To quote from RFC8345, which defines YANG:
This document defines an abstract (generic, or base) YANG data
model for network/service topologies and inventories. The data
model serves as a base model that is augmented with
technology-specific details in other, more specific topology and
inventory data models.
Protocols like NETCONF can use YANG for representations of network configurations.
add a comment |
YANG is the answer here. To quote from RFC8345, which defines YANG:
This document defines an abstract (generic, or base) YANG data
model for network/service topologies and inventories. The data
model serves as a base model that is augmented with
technology-specific details in other, more specific topology and
inventory data models.
Protocols like NETCONF can use YANG for representations of network configurations.
add a comment |
YANG is the answer here. To quote from RFC8345, which defines YANG:
This document defines an abstract (generic, or base) YANG data
model for network/service topologies and inventories. The data
model serves as a base model that is augmented with
technology-specific details in other, more specific topology and
inventory data models.
Protocols like NETCONF can use YANG for representations of network configurations.
YANG is the answer here. To quote from RFC8345, which defines YANG:
This document defines an abstract (generic, or base) YANG data
model for network/service topologies and inventories. The data
model serves as a base model that is augmented with
technology-specific details in other, more specific topology and
inventory data models.
Protocols like NETCONF can use YANG for representations of network configurations.
answered Feb 5 at 16:44
Teun Vink♦Teun Vink
11.7k53154
11.7k53154
add a comment |
add a comment |
Hashicorp's Terraform has a vendor-neutral (but not -agnostic) configuration language. AWS VPCs look like:
resource "aws_vpc" "Test"
cidr_block = "10.0.0.0/16"
instance_tenancy = "dedicated"
tags =
Name = "Test"
add a comment |
Hashicorp's Terraform has a vendor-neutral (but not -agnostic) configuration language. AWS VPCs look like:
resource "aws_vpc" "Test"
cidr_block = "10.0.0.0/16"
instance_tenancy = "dedicated"
tags =
Name = "Test"
add a comment |
Hashicorp's Terraform has a vendor-neutral (but not -agnostic) configuration language. AWS VPCs look like:
resource "aws_vpc" "Test"
cidr_block = "10.0.0.0/16"
instance_tenancy = "dedicated"
tags =
Name = "Test"
Hashicorp's Terraform has a vendor-neutral (but not -agnostic) configuration language. AWS VPCs look like:
resource "aws_vpc" "Test"
cidr_block = "10.0.0.0/16"
instance_tenancy = "dedicated"
tags =
Name = "Test"
answered Feb 5 at 21:44
Jacob KrallJacob Krall
1313
1313
add a comment |
add a comment |
Ansible can be used to build (part of) a network as code.
It uses YAML syntax and can read JSON.
There's existing ansible roles for major vendor's equipment's, and you can build your own roles.
But existing roles are not always up to date and writing, and maintaining, your own can be time consuming.
add a comment |
Ansible can be used to build (part of) a network as code.
It uses YAML syntax and can read JSON.
There's existing ansible roles for major vendor's equipment's, and you can build your own roles.
But existing roles are not always up to date and writing, and maintaining, your own can be time consuming.
add a comment |
Ansible can be used to build (part of) a network as code.
It uses YAML syntax and can read JSON.
There's existing ansible roles for major vendor's equipment's, and you can build your own roles.
But existing roles are not always up to date and writing, and maintaining, your own can be time consuming.
Ansible can be used to build (part of) a network as code.
It uses YAML syntax and can read JSON.
There's existing ansible roles for major vendor's equipment's, and you can build your own roles.
But existing roles are not always up to date and writing, and maintaining, your own can be time consuming.
answered Feb 5 at 14:20
JFLJFL
11.4k11339
11.4k11339
add a comment |
add a comment |
For AWS VPCs specifically, you can use CloudFormation to generate a "configuration" file, which can be used to recreate the VPC and all the related components. I believe it's in JSON format.
For networks in general, there is no such thing. Figure out how to do it, and you can retire comfortably.
add a comment |
For AWS VPCs specifically, you can use CloudFormation to generate a "configuration" file, which can be used to recreate the VPC and all the related components. I believe it's in JSON format.
For networks in general, there is no such thing. Figure out how to do it, and you can retire comfortably.
add a comment |
For AWS VPCs specifically, you can use CloudFormation to generate a "configuration" file, which can be used to recreate the VPC and all the related components. I believe it's in JSON format.
For networks in general, there is no such thing. Figure out how to do it, and you can retire comfortably.
For AWS VPCs specifically, you can use CloudFormation to generate a "configuration" file, which can be used to recreate the VPC and all the related components. I believe it's in JSON format.
For networks in general, there is no such thing. Figure out how to do it, and you can retire comfortably.
answered Feb 5 at 16:33
Ron TrunkRon Trunk
37.1k33475
37.1k33475
add a comment |
add a comment |
Thanks for contributing an answer to Network Engineering Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fnetworkengineering.stackexchange.com%2fquestions%2f56638%2fabstract-language-to-describe-network-deployments%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
No, not really. The problem is that not every vendor supports everything, and they all do it differently. This has been a goal for a long time, but it has proved to be very difficult. In any case, VPCs and VMs are off-topic here.
– Ron Maupin♦
Feb 5 at 15:28
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
Feb 5 at 17:16
@JFL ideally, both
– J. Doe
Feb 5 at 17:31