Abstract language to describe network deployments?
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♦
11 hours ago
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
9 hours ago
@JFL ideally, both
– J. Doe
9 hours ago
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 13 hours ago
J. DoeJ. Doe
1312
1312
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♦
11 hours ago
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
9 hours ago
@JFL ideally, both
– J. Doe
9 hours ago
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♦
11 hours ago
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
9 hours ago
@JFL ideally, both
– J. Doe
9 hours ago
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♦
11 hours ago
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♦
11 hours ago
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
9 hours ago
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
9 hours ago
@JFL ideally, both
– J. Doe
9 hours ago
@JFL ideally, both
– J. Doe
9 hours ago
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 |
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 |
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"
}
}
New contributor
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 10 hours ago
Teun Vink♦Teun Vink
11.5k53053
11.5k53053
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 12 hours ago
JFLJFL
10.8k11235
10.8k11235
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 10 hours ago
Ron TrunkRon Trunk
36k33373
36k33373
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"
}
}
New contributor
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"
}
}
New contributor
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"
}
}
New contributor
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"
}
}
New contributor
New contributor
answered 5 hours ago
Jacob KrallJacob Krall
1012
1012
New contributor
New contributor
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♦
11 hours ago
Do you want to document the network or use this as a data source to automate network configuration?
– JFL
9 hours ago
@JFL ideally, both
– J. Doe
9 hours ago