--- ############################################################################## # Copyright (c) 2018 AT&T Intellectual Property. All rights reserved. # # # # 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. # ############################################################################## schema: 'drydock/NetworkLink/v1' metadata: schema: 'metadata/Document/v1' name: oob layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: labels: noconfig: enabled bonding: mode: disabled mtu: 9000 linkspeed: auto trunking: mode: disabled default_network: oob allowed_networks: - oob ... --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: oob layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: cidr: {{yaml.networks.oob.cidr}} routes: - subnet: '0.0.0.0/0' gateway: {{yaml.networks.oob.routes.gateway}} ranges: - type: static start: {{yaml.networks.oob.ranges.static.start}} end: {{yaml.networks.oob.ranges.static.end}} ... --- schema: 'drydock/NetworkLink/v1' metadata: schema: 'metadata/Document/v1' name: pxe layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: bonding: mode: disabled mtu: 9000 linkspeed: auto trunking: mode: disabled default_network: pxe allowed_networks: - pxe ... --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: pxe layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: cidr: {{yaml.networks.pxe.cidr}} routes: - subnet: '0.0.0.0/0' gateway: {{yaml.networks.pxe.routes.gateway}} ranges: - type: reserved start: {{yaml.networks.pxe.ranges.reserved.start}} end: {{yaml.networks.pxe.ranges.reserved.end}} - type: static start: {{yaml.networks.pxe.ranges.static.start}} end: {{yaml.networks.pxe.ranges.static.end}} - type: dhcp start: {{yaml.networks.pxe.ranges.dhcp.start}} end: {{yaml.networks.pxe.ranges.dhcp.end}} dns: domain: {% if 'dns' in yaml.networks.pxe and 'domain' in yaml.networks.pxe.dns %}{{yaml.networks.pxe.dns.domain}} {% else %}{{yaml.dns.domain}} {% endif %} servers: '{% if 'dns' in yaml.networks.pxe %}{{yaml.networks.pxe.dns.servers}}{% else %}{{yaml.dns.upstream_servers|join(' ')}}{% endif %}' ... --- schema: 'drydock/NetworkLink/v1' metadata: schema: 'metadata/Document/v1' name: bond0 layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: bonding: {% if yaml.networks.bonded %} mode: 802.3ad hash: layer3+4 peer_rate: fast mon_rate: 100 up_delay: 1000 down_delay: 3000 {% else %} mode: disabled {% endif %} mtu: 9000 linkspeed: auto trunking: mode: 802.1q allowed_networks: - oam - storage - overlay - calico ... --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: oam layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: vlan: '{{yaml.networks.host.vlan}}' mtu: 9000 cidr: {{yaml.networks.host.cidr}} routes: - subnet: '0.0.0.0/0' gateway: {{yaml.networks.host.routes.gateway}} ranges: - type: reserved start: {{yaml.networks.host.ranges.reserved.start}} end: {{yaml.networks.host.ranges.reserved.end}} - type: static start: {{yaml.networks.host.ranges.static.start}} end: {{yaml.networks.host.ranges.static.end}} dns: domain: {% if 'dns' in yaml.networks.host and 'domain' in yaml.networks.host.dns %}{{yaml.networks.host.dns.domain}} {% else %}{{yaml.dns.domain}} {% endif %} servers: '{% if 'dns' in yaml.networks.host %}{{yaml.networks.host.dns.servers}}{% else %}{{yaml.dns.upstream_servers|join(' ')}}{% endif %}' ... --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: storage layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: vlan: '{{yaml.networks.storage.vlan}}' mtu: 9000 cidr: {{yaml.networks.storage.cidr}} ranges: - type: static start: {{yaml.networks.storage.ranges.static.start}} end: {{yaml.networks.storage.ranges.static.end}} ... --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: overlay layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: vlan: '{{yaml.networks.neutron.vlan}}' mtu: 9000 cidr: {{yaml.networks.neutron.cidr}} ranges: - type: static start: {{yaml.networks.neutron.ranges.static.start}} end: {{yaml.networks.neutron.ranges.static.end}} ... --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: calico layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: vlan: '{{yaml.networks.ksn.vlan}}' mtu: 9000 cidr: {{yaml.networks.ksn.cidr}} ranges: - type: static start: {{yaml.networks.ksn.ranges.static.start}} end: {{yaml.networks.ksn.ranges.static.end}} ... --- schema: 'drydock/NetworkLink/v1' metadata: schema: 'metadata/Document/v1' name: dpdk layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: bonding: mode: disabled mtu: 1500 linkspeed: auto trunking: mode: disabled default_network: dpdk allowed_networks: - dpdk ... --- schema: 'drydock/Network/v1' metadata: schema: 'metadata/Document/v1' name: dpdk layeringDefinition: abstract: false layer: site storagePolicy: cleartext data: mtu: 1500 cidr: {{yaml.networks.vxlan.cidr}} ranges: - type: reserved start: {{yaml.networks.vxlan.ranges.reserved.start}} end: {{yaml.networks.vxlan.ranges.reserved.end}} - type: static start: {{yaml.networks.vxlan.ranges.static.start}} end: {{yaml.networks.vxlan.ranges.static.end}} ...