# were restarted. "Failed to add /run/systemd/ask-password to directory
# watch: No space left on device". https://bit.ly/2Mj5qn2 TDP bug 427616
fs.inotify.max_user_watches: '1048576'
+ manifests:
+ daemonset_mounts: true
+ mounts:
+ mnt1:
+ mnt_tgt: /dev/hugepages_1G
+ device: none
+ type: hugetlbfs
+ options: 'mode=775,pagesize=1G'
dependencies:
- ucp-divingbell-htk
---
type: git
location: https://review.opendev.org/openstack/openstack-helm
subpath: neutron
- reference: refs/changes/84/643284/9
+ reference: refs/changes/84/643284/10
neutron-htk:
type: git
location: https://git.openstack.org/openstack/openstack-helm-infra
type: git
location: https://review.opendev.org/openstack/openstack-helm-infra
subpath: openvswitch
- reference: refs/changes/94/626894/22
+ reference: refs/changes/94/626894/24
openvswitch-htk:
location: https://review.opendev.org/openstack/openstack-helm-infra
- reference: refs/changes/94/626894/22
+ reference: refs/changes/94/626894/24
subpath: helm-toolkit
type: git
rabbitmq:
address: {{server.neutron}}
- network: calico
address: {{server.ksn}}
+ - network: dpdk
+ address: {{server.vxlan}}
metadata:
rack: RACK01
tags:
- 'masters'
-{% if 'platform' in yaml %}
platform:
kernel_params:
-{% for key, value in yaml.platform.kernel_params.items() %}
- {{key}}: '{{value}}'
-{% endfor %}
-{% if 'vcpu_pin_set' in yaml.platform %}
- isolcpus: '{{yaml.platform.vcpu_pin_set}}'
-{% endif %}
-{% endif %}
+ hugepagesz: '1G'
+ hugepages: 32
+ default_hugepagesz: '1G'
+ iommu: 'pt'
+ intel_iommu: 'on'
+...
{% endfor %}
{% if 'workers' in yaml %}{% for server in yaml.workers %}
---
address: {{server.neutron}}
- network: calico
address: {{server.ksn}}
+ - network: dpdk
+ address: {{server.vxlan}}
metadata:
rack: RACK01
tags:
- 'workers'
-{% if 'platform' in yaml %}
platform:
kernel_params:
-{% for key, value in yaml.platform.kernel_params.items() %}
- {{key}}: '{{value}}'
-{% endfor %}
-{% if 'vcpu_pin_set' in yaml.platform %}
- isolcpus: '{{yaml.platform.vcpu_pin_set}}'
-{% endif %}
-{% endif %}
-{% endfor %}{% endif %}
+ hugepagesz: '1G'
+ hugepages: 32
+ default_hugepagesz: '1G'
+ iommu: 'pt'
+ intel_iommu: 'on'
...
+{% endfor %}{% endif %}
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}}
+...
- 'storage'
- 'overlay'
- 'calico'
- p1p1:
+ dpdk:
+ device_link: dpdk
slaves:
- - 'sriov_nic01'
- sriov:
- vf_count: 32 # Currently ignored
- trustedmode: false
- p3p2:
- slaves:
- - 'sriov_nic02'
- sriov:
- vf_count: 32 # Currently ignored
- trustedmode: false
+ - '{{yaml.networks.vxlan.interface}}'
+ networks:
+ - dpdk
storage:
physical_devices:
{% for disk in yaml.disks_compute %}
- 'storage'
- 'overlay'
- 'calico'
- p1p1:
+ dpdk:
+ device_link: dpdk
slaves:
- - 'sriov_nic01'
- sriov:
- vf_count: 32 # Currently ignored
- trustedmode: false
- p3p2:
- slaves:
- - 'sriov_nic02'
- sriov:
- vf_count: 32 # Currently ignored
- trustedmode: false
+ - '{{yaml.networks.vxlan.interface}}'
+ networks:
+ - dpdk
storage:
physical_devices:
{% for disk in yaml.disks %}
storagePolicy: cleartext
data:
values:
- labels:
- agent:
- sriov:
- node_selector_key: sriov
- node_selector_value: enabled
network:
- backend:
- - openvswitch
- - sriov
interface:
- sriov:
-{% for sriovnet in yaml.sriov.nets %}
- - device: {{sriovnet.interface}}
- num_vfs: 32
- promisc: false
-{% endfor %}
+ tunnel: br-phy
+ endpoints:
+ identity:
+ port:
+ api:
+ default: 80
+ internal: 35357
conf:
+ logging:
+ logger_root:
+ level: WARNING
+ handlers: stdout
plugins:
openvswitch_agent:
ovs:
- bridge_mappings: bond0:br-bond0
- sriov_agent:
- securitygroup:
- firewall_driver: neutron.agent.firewall.NoopFirewallDriver
- sriov_nic:
- exclude_devices: null
- physical_device_mappings: '
-{%- for sriovnet in yaml.sriov.nets -%}
-{%- if loop.index > 1 -%}
-,
-{%- endif -%}
-{{sriovnet.physical}}:{{sriovnet.interface}}
-{%- endfor %}'
+ bridge_mappings: external:br-phy
ml2_conf:
ml2:
- mechanism_drivers: l2population,openvswitch,sriovnicswitch
+ mechanism_drivers: openvswitch
+ type_drivers: flat,vlan,vxlan
+ tenant_network_types: vxlan
ml2_type_vlan:
- network_vlan_ranges: bond0:46:300
-{%- for sriovnet in yaml.sriov.nets -%}
-,{{sriovnet.physical}}:{{sriovnet.vlan_start}}:{{sriovnet.vlan_end}}
-{%- endfor %}
-
+ network_vlan_ranges: "external:1100:1110"
+ ml2_type_flat:
+ flat_networks: public
+ openvswitch_agent:
+ agent:
+ tunnel_types: vxlan
+ ovs:
+ bridge_mappings: external:br-phy
+ ovs_dpdk:
+ enabled: true
+ driver: vfio-pci
+ nics:
+{% for nic in yaml.dpdk.nics %}
+ - name: {{ nic.name }}
+ pci_id: '{{ nic.pci_id }}'
+ bridge: {{ nic.bridge }}
+ migrate_ip: {{ nic.migrate_ip }}
+{% endfor %}
+ dependencies:
+ - openstack-neutron-helm-toolkit
+---
+schema: armada/Chart/v1
+metadata:
+ schema: metadata/Document/v1
+ name: openstack-neutron-helm-toolkit
+ layeringDefinition:
+ abstract: false
+ layer: global
+ storagePolicy: cleartext
+ substitutions:
+ - src:
+ schema: pegleg/SoftwareVersions/v1
+ name: software-versions
+ path: .charts.osh.neutron-htk
+ dest:
+ path: .source
+data:
+ chart_name: openstack-neutron-helm-toolkit
+ release: openstack-neutron-helm-toolkit
+ namespace: helm-toolkit
+ values: {}
+ dependencies: []
...
network:
backend:
- openvswitch
- - sriov
conf:
nova:
filter_scheduler:
--- /dev/null
+---
+##############################################################################
+# 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: armada/Chart/v1
+metadata:
+ schema: metadata/Document/v1
+ name: openvswitch
+ replacement: true
+ labels:
+ name: openvswitch-global
+ layeringDefinition:
+ abstract: false
+ layer: site
+ parentSelector:
+ name: openvswitch-global
+ actions:
+ - method: merge
+ path: .
+ storagePolicy: cleartext
+data:
+ values:
+ pod:
+ resources:
+ enabled: true
+ ovs:
+ vswitchd:
+ requests:
+ memory: "8Gi"
+ cpu: "4000m"
+ limits:
+ memory: "8Gi"
+ cpu: "4000m"
+ hugepages-1Gi: "8Gi"
+ conf:
+ dpdk:
+ enabled: true
+ hugepages_mountpath: /dev/hugepages_1G
+ socket_memory: '4096,4096'
+ pmd_cpu_mask: '0xF'
+ dependencies:
+ - openstack-openvswitch-helm-toolkit
+...
+---
+schema: armada/Chart/v1
+metadata:
+ schema: metadata/Document/v1
+ name: openstack-openvswitch-helm-toolkit
+ layeringDefinition:
+ abstract: false
+ layer: global
+ storagePolicy: cleartext
+ substitutions:
+ # Chart source
+ - src:
+ schema: pegleg/SoftwareVersions/v1
+ name: software-versions
+ path: .charts.osh.openvswitch-htk
+ dest:
+ path: .source
+
+data:
+ chart_name: openstack-openvswitch-helm-toolkit
+ release: openstack-openvswitch-helm-toolkit
+ namespace: helm-toolkit
+ values: {}
+ dependencies: []
+...