diff options
author | Roy Tang <roy.s.tang@att.com> | 2019-10-02 19:33:33 +0000 |
---|---|---|
committer | Roy Tang <roy.s.tang@att.com> | 2019-12-04 19:59:09 +0000 |
commit | f23db145a7d5c425b12d346cb99e462ce5e9a815 (patch) | |
tree | 9e1153e427d739c831fbbd71ee153b92310520bd /type/cntt/profiles | |
parent | 77a1f5b22527c07f186e4d961ae1febe3fda2801 (diff) |
Deploy ovs-dpdk to pod18
This ps creates artifacts needed to support deployment
of ovs-dpdk. Most of the common artifacts are under
cntt umbrella, but currently only deploys to pod18.
Signed-off-by: Roy Tang <roy.s.tang@att.com>
Change-Id: Id02abc1b907ad33b423466acae21ad6c88dbd246
Diffstat (limited to 'type/cntt/profiles')
-rw-r--r-- | type/cntt/profiles/genesis.yaml | 6 | ||||
-rw-r--r-- | type/cntt/profiles/hardware/intel-s2600wt.yaml | 24 | ||||
-rw-r--r-- | type/cntt/profiles/host/cp-intel-s2600wt-dpdk.yaml | 127 | ||||
-rw-r--r-- | type/cntt/profiles/host/dp-intel-s2600wt-dpdk.yaml | 144 |
4 files changed, 298 insertions, 3 deletions
diff --git a/type/cntt/profiles/genesis.yaml b/type/cntt/profiles/genesis.yaml index 54c5276..d90f000 100644 --- a/type/cntt/profiles/genesis.yaml +++ b/type/cntt/profiles/genesis.yaml @@ -6,10 +6,12 @@ schema: promenade/Genesis/v1 metadata: schema: metadata/Document/v1 - name: genesis-site + name: genesis + labels: + name: genesis-cntt layeringDefinition: abstract: false - layer: site + layer: type parentSelector: name: genesis-global actions: diff --git a/type/cntt/profiles/hardware/intel-s2600wt.yaml b/type/cntt/profiles/hardware/intel-s2600wt.yaml index 94fba0e..e023254 100644 --- a/type/cntt/profiles/hardware/intel-s2600wt.yaml +++ b/type/cntt/profiles/hardware/intel-s2600wt.yaml @@ -107,9 +107,31 @@ data: dev_type: 'ST91000640NS' bus_type: 'scsi' cpu_sets: - kvm: '4-43,48-87' + # CPUS pinning + # Host OS CPUs are inferred, and will be the remaining cores + kvm: '2-21,24-43,46-65,68-87' + # Kernel config + # Reduce OS jitter on the offloaded CPUs. + rcu_nocbs: '2-21,24-43,46-65,68-87' + # Nova config + # CPUs dedicated to tenant workload. + vcpu_pin_set: '4-21,26-43,48-65,70-87' + # OVS config + # CPUs used by OVS-DPDK processes, same as CPUs used by host OS. + # For this lab, the CPU/Numa allocation is as followed: + # NUMA node0 CPU(s): 0-21,44-65 + # NUMA node1 CPU(s): 22-43,66-87 + # So to spread them about both numa, the following is assigned: + # VCPUs 0,44,1,45,22,66,23,67 = first 4 CPU cores + dpdk-lcore-mask: '0x0C0000300000C00003' + # OVS config + # CPUs used by dpdk Poll Mode Drivers (PMD) + # OVS configu paramter for DPDK. + # VCPUs 2,46,3,47,24,68,25,69 CPU cores 4-7 + pmd-cpu-mask: '0x300000C0000300000C' hugepages: dpdk: size: '1G' count: 32 + socket-mem: '4096,4096' ... diff --git a/type/cntt/profiles/host/cp-intel-s2600wt-dpdk.yaml b/type/cntt/profiles/host/cp-intel-s2600wt-dpdk.yaml new file mode 100644 index 0000000..c8301df --- /dev/null +++ b/type/cntt/profiles/host/cp-intel-s2600wt-dpdk.yaml @@ -0,0 +1,127 @@ +--- +# The primary control plane host profile for Airship for DELL R720s, and +# should not need to be altered if you are using matching HW. The active +# participants in the Ceph cluster run on this profile. Other control plane +# services are not affected by primary vs secondary designation. +# +# OVS-DPDK NOTE: +# This host profile updated to support ovs-dpdk deployment. + +schema: drydock/HostProfile/v1 +metadata: + schema: metadata/Document/v1 + name: cp-intel-s2600wt-dpdk + storagePolicy: cleartext + layeringDefinition: + abstract: false + layer: site + parentSelector: + hosttype: cp-global + actions: + - method: replace + path: .interfaces + - method: replace + path: .storage + - method: merge + path: . + substitutions: + - dest: + path: .interfaces.data2.sriov.device + src: + schema: drydock/HardwareProfile/v1 + name: intel-s2600wt + path: .device_aliases.data_nic2.address + - dest: + path: .platform.kernel_params.dpdk-socket-mem + src: + schema: drydock/HardwareProfile/v1 + name: intel-s2600wt + path: .hugepages.dpdk.socket-mem +data: + hardware_profile: intel-s2600wt + + primary_network: dmz + interfaces: + dmz: + device_link: dmz + slaves: + - ctrl_nic1 + networks: + - dmz + admin: + device_link: admin + slaves: + - ctrl_nic2 + networks: + - admin + data1: + device_link: data1 + slaves: + - data_nic1 + networks: + - private + - management + data2: + device_link: data2 + slaves: + - data_nic2 + networks: + - storage + - public + sriov: + num_vfs: 32 + promisc: false + ovs_dpdk: + vf_index: 0 + + storage: + physical_devices: + bootdisk: + labels: + bootdrive: 'true' + partitions: + - name: 'root' + size: '30g' + bootable: true + filesystem: + mountpoint: '/' + fstype: 'ext4' + mount_options: 'defaults' + - name: 'boot' + size: '1g' + filesystem: + mountpoint: '/boot' + fstype: 'ext4' + mount_options: 'defaults' + - name: 'var_log' + size: '100g' + filesystem: + mountpoint: '/var/log' + fstype: 'ext4' + mount_options: 'defaults' + - name: 'var' + size: '>100g' + filesystem: + mountpoint: '/var' + fstype: 'ext4' + mount_options: 'defaults' + + platform: + image: 'xenial' + kernel: 'hwe-16.04' + kernel_params: + kernel_package: 'linux-image-4.15.0-46-generic' + intel_iommu: 'on' + iommu: 'pt' + amd_iommu: 'on' + cgroup_disable: 'hugetlb' + transparent_hugepage: 'never' + hugepagesz: 'hardwareprofile:hugepages.dpdk.size' + hugepages: 'hardwareprofile:hugepages.dpdk.count' + default_hugepagesz: 'hardwareprofile:hugepages.dpdk.size' + + metadata: + owner_data: + openstack-l3-agent: enabled + sriov: enabled +... diff --git a/type/cntt/profiles/host/dp-intel-s2600wt-dpdk.yaml b/type/cntt/profiles/host/dp-intel-s2600wt-dpdk.yaml new file mode 100644 index 0000000..1028d94 --- /dev/null +++ b/type/cntt/profiles/host/dp-intel-s2600wt-dpdk.yaml @@ -0,0 +1,144 @@ +--- +# The data plane host profile for Airship for DELL R720s, and should +# not need to be altered if you are using matching HW. The host profile is setup +# for cpu isolation (for nova pinning), hugepages, and sr-iov. +# +# OVS-DPDK NOTE: +# This host profile updated to support ovs-dpdk deployment. + +schema: drydock/HostProfile/v1 +metadata: + schema: metadata/Document/v1 + name: dp-intel-s2600wt-dpdk + storagePolicy: cleartext + layeringDefinition: + abstract: false + layer: type + parentSelector: + hosttype: dp-global + actions: + - method: replace + path: .interfaces + - method: replace + path: .storage + - method: merge + path: . + substitutions: + - dest: + path: .interfaces.data2.sriov.device + src: + schema: drydock/HardwareProfile/v1 + name: intel-s2600wt + path: .device_aliases.data_nic2.address + - dest: + path: .platform.kernel_params.dpdk-socket-mem + src: + schema: drydock/HardwareProfile/v1 + name: intel-s2600wt + path: .hugepages.dpdk.socket-mem + - dest: + path: .platform.kernel_params.rcu_nocbs + src: + schema: drydock/HardwareProfile/v1 + name: intel-s2600wt + path: .cpu_sets.rcu_nocbs + - dest: + path: .platform.kernel_params.isolcpus + src: + schema: drydock/HardwareProfile/v1 + name: intel-s2600wt + path: .cpu_sets.kvm +data: + hardware_profile: intel-s2600wt + + primary_network: dmz + interfaces: + dmz: + device_link: dmz + slaves: + - ctrl_nic1 + networks: + - dmz + admin: + device_link: admin + slaves: + - ctrl_nic2 + networks: + - admin + data1: + device_link: data1 + slaves: + - data_nic1 + networks: + - private + - management + data2: + device_link: data2 + slaves: + - data_nic2 + networks: + - storage + - public + sriov: + num_vfs: 32 + promisc: false + ovs_dpdk: + vf_index: 0 + storage: + physical_devices: + bootdisk: + labels: + bootdrive: 'true' + partitions: + - name: 'root' + size: '30g' + bootable: true + filesystem: + mountpoint: '/' + fstype: 'ext4' + mount_options: 'defaults' + - name: 'boot' + size: '1g' + filesystem: + mountpoint: '/boot' + fstype: 'ext4' + mount_options: 'defaults' + - name: 'log' + size: '100g' + filesystem: + mountpoint: '/var/log' + fstype: 'ext4' + mount_options: 'defaults' + - name: 'var' + size: '>100g' + filesystem: + mountpoint: '/var' + fstype: 'ext4' + mount_options: 'defaults' + + datadisk: + partitions: + - name: 'nova' + size: '99%' + filesystem: + mountpoint: '/var/lib/nova' + fstype: 'ext4' + mount_options: 'defaults' + + platform: + image: 'xenial' + kernel: 'hwe-16.04' + kernel_params: + kernel_package: 'linux-image-4.15.0-46-generic' + intel_iommu: 'on' + iommu: 'pt' + amd_iommu: 'on' + cgroup_disable: 'hugetlb' + transparent_hugepage: 'never' + hugepagesz: 'hardwareprofile:hugepages.dpdk.size' + hugepages: 'hardwareprofile:hugepages.dpdk.count' + default_hugepagesz: 'hardwareprofile:hugepages.dpdk.size' + metadata: + owner_data: + sriov: enabled +... |