aboutsummaryrefslogtreecommitdiffstats
path: root/deploy
diff options
context:
space:
mode:
authorHarry Huang <huangxiangyu5@huawei.com>2017-10-11 18:11:52 +0800
committerHarry Huang <huangxiangyu5@huawei.com>2017-10-24 09:24:18 +0800
commit849d51833bdb16e8f04370270cd3e082ad9db928 (patch)
tree3b170fa44b4f3af69e5f3b8d2a87a3335a3909ef /deploy
parentd8f5f4a460d4c84a6552a6bed8af5c7fa5eedc22 (diff)
Config dpdk and ovs
switch dpdk interface driver and bring up corresponding ovs bridges. Change-Id: I07bd9b332978482507711cfbd8ad29802a8b1a8c Signed-off-by: Harry Huang <huangxiangyu5@huawei.com>
Diffstat (limited to 'deploy')
-rw-r--r--deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml7
-rwxr-xr-xdeploy/adapters/ansible/roles/post-osa/tasks/Ubuntu.yml23
-rw-r--r--deploy/adapters/ansible/roles/post-osa/tasks/main.yml20
-rw-r--r--deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml16
-rw-r--r--deploy/conf/hardware_environment/huawei-pod1/network_dpdk.yml132
-rw-r--r--deploy/conf/hardware_environment/huawei-pod1/os-nosdn-ovs_dpdk-ha.yml1
-rw-r--r--deploy/conf/hardware_environment/huawei-pod2/network_dpdk.yml132
-rw-r--r--deploy/conf/hardware_environment/huawei-pod2/os-nosdn-ovs_dpdk-ha.yml5
8 files changed, 309 insertions, 27 deletions
diff --git a/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml b/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml
index 3f58435e..59826776 100644
--- a/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml
+++ b/deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml
@@ -46,6 +46,13 @@
roles:
- post-osa
+- hosts:
+ - neutron_openvswitch_agent
+ - compute
+ remote_user: root
+ roles:
+ - config-dpdk
+
- hosts: neutron_openvswitch_agent
remote_user: root
roles:
diff --git a/deploy/adapters/ansible/roles/post-osa/tasks/Ubuntu.yml b/deploy/adapters/ansible/roles/post-osa/tasks/Ubuntu.yml
new file mode 100755
index 00000000..5d53d234
--- /dev/null
+++ b/deploy/adapters/ansible/roles/post-osa/tasks/Ubuntu.yml
@@ -0,0 +1,23 @@
+---
+- name: remove bridge ubuntu
+ template:
+ src: compute.j2
+ dest: /etc/network/interfaces
+ notify:
+ - restart network service
+
+- name: fix mapping in compute
+ shell: |
+ {% set compute_mappings = [] %}
+ {% for key, value in compu_prv_mappings.iteritems() %}
+ {% set mapping = key + ":" + value["bridge"] %}
+ {% set _ = compute_mappings.append(mapping) %}
+ {% endfor %}
+ {% if compute_mappings | length != 0 %}
+ sed -i "s/^\(bridge_mappings\).*/\1 = {{ ','.join(compute_mappings) }}/g" \
+ /etc/neutron/plugins/ml2/openvswitch_agent.ini
+ {% else %}
+ sed -i "/bridge_mappings/d" /etc/neutron/plugins/ml2/openvswitch_agent.ini
+ {% endif %}
+
+- meta: flush_handlers
diff --git a/deploy/adapters/ansible/roles/post-osa/tasks/main.yml b/deploy/adapters/ansible/roles/post-osa/tasks/main.yml
index cf157d74..c48a5d1a 100644
--- a/deploy/adapters/ansible/roles/post-osa/tasks/main.yml
+++ b/deploy/adapters/ansible/roles/post-osa/tasks/main.yml
@@ -1,12 +1,10 @@
+#############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
---
-- name: remove bridge ubuntu
- template:
- src: compute.j2
- dest: /etc/network/interfaces
- notify:
- - restart network service
- when: ansible_distribution == 'Ubuntu'
-
-# TODO
-# - name: remove bridge centos
-# when: ansible_distribution == 'CentOS'
+- include: "{{ ansible_distribution }}.yml"
diff --git a/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml b/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml
index 62edd34b..b7a8fbcb 100644
--- a/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml
+++ b/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml
@@ -22,22 +22,6 @@
notify:
- restart neutron-openvswitch-agent
-- name: fix mapping in compute
- shell: |
- {% set compute_mappings = [] %}
- {% for key, value in compu_prv_mappings.iteritems() %}
- {% set mapping = key + ":" + value["bridge"] %}
- {% set _ = compute_mappings.append(mapping) %}
- {% endfor %}
- {% if compute_mappings | length != 0 %}
- sed -i "s/^\(bridge_mappings\).*/\1 = {{ ','.join(compute_mappings) }}/g" \
- /etc/neutron/plugins/ml2/openvswitch_agent.ini
- {% else %}
- sed -i "/bridge_mappings/d" /etc/neutron/plugins/ml2/openvswitch_agent.ini
- {% endif %}
- notify:
- - restart neutron-openvswitch-agent
-
- name: create compute bridges
openvswitch_bridge:
bridge: "{{ item['name'] }}"
diff --git a/deploy/conf/hardware_environment/huawei-pod1/network_dpdk.yml b/deploy/conf/hardware_environment/huawei-pod1/network_dpdk.yml
new file mode 100644
index 00000000..03483629
--- /dev/null
+++ b/deploy/conf/hardware_environment/huawei-pod1/network_dpdk.yml
@@ -0,0 +1,132 @@
+##############################################################################
+# Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+nic_mappings: []
+bond_mappings: []
+
+provider_net_mappings:
+ - name: br-provider
+ network: physnet
+ interface: eth10
+ type: ovs
+ role:
+ - controller
+
+sys_intf_mappings:
+ - name: mgmt
+ interface: eth0
+ type: normal
+ vlan_tag: None
+ role:
+ - controller
+ - compute
+
+ - name: tenant
+ interface: eth2
+ type: normal
+ vlan_tag: None
+ role:
+ - controller
+
+ - name: tenant
+ interface: eth2
+ type: dpdk
+ vlan_tag: None
+ role:
+ - compute
+
+ - name: storage
+ interface: eth1
+ type: normal
+ vlan_tag: 102
+ role:
+ - controller
+ - compute
+
+ - name: external
+ interface: eth1
+ type: normal
+ vlan_tag: None
+ role:
+ - controller
+ - compute
+
+ip_settings:
+ - name: mgmt
+ ip_ranges:
+ - - "10.1.0.50"
+ - "10.1.0.100"
+ dhcp_ranges:
+ - - "10.1.0.2"
+ - "10.1.0.49"
+ cidr: "10.1.0.0/24"
+ gw: "10.1.0.1"
+ role:
+ - controller
+ - compute
+
+ - name: tenant
+ ip_ranges:
+ - - "172.16.1.1"
+ - "172.16.1.50"
+ cidr: "172.16.1.0/24"
+ role:
+ - controller
+ - compute
+
+ - name: storage
+ ip_ranges:
+ - - "172.16.2.1"
+ - "172.16.2.50"
+ cidr: "172.16.2.0/24"
+ role:
+ - controller
+ - compute
+
+ - name: external
+ ip_ranges:
+ - - "192.168.10.10"
+ - "192.168.10.50"
+ cidr: "192.168.10.0/24"
+ gw: "192.168.10.1"
+ role:
+ - controller
+ - compute
+
+internal_vip:
+ ip: 10.1.0.222
+ netmask: "24"
+ interface: mgmt
+
+public_vip:
+ ip: 192.168.10.222
+ netmask: "24"
+ interface: external
+
+onos_nic: eth2
+tenant_net_info:
+ type: vxlan
+ range: "1:1000"
+ provider_network: None
+
+public_net_info:
+ enable: "True"
+ network: ext-net
+ type: flat
+ segment_id: 1000
+ subnet: ext-subnet
+ provider_network: physnet
+ router: router-ext
+ enable_dhcp: "False"
+ no_gateway: "False"
+ external_gw: "192.168.10.1"
+ floating_ip_cidr: "192.168.10.0/24"
+ floating_ip_start: "192.168.10.100"
+ floating_ip_end: "192.168.10.200"
diff --git a/deploy/conf/hardware_environment/huawei-pod1/os-nosdn-ovs_dpdk-ha.yml b/deploy/conf/hardware_environment/huawei-pod1/os-nosdn-ovs_dpdk-ha.yml
index 34640ac1..5b9d1c09 100644
--- a/deploy/conf/hardware_environment/huawei-pod1/os-nosdn-ovs_dpdk-ha.yml
+++ b/deploy/conf/hardware_environment/huawei-pod1/os-nosdn-ovs_dpdk-ha.yml
@@ -23,6 +23,7 @@ hosts:
mac: 'F8:4A:BF:55:A2:8D'
interfaces:
- eth1: 'F8:4A:BF:55:A2:8E'
+ - eth1: 'F8:4A:BF:55:A2:8E'
ipmiIp: 172.16.130.26
ipmiPass: Opnfv@pod1
roles:
diff --git a/deploy/conf/hardware_environment/huawei-pod2/network_dpdk.yml b/deploy/conf/hardware_environment/huawei-pod2/network_dpdk.yml
new file mode 100644
index 00000000..b357a6e1
--- /dev/null
+++ b/deploy/conf/hardware_environment/huawei-pod2/network_dpdk.yml
@@ -0,0 +1,132 @@
+##############################################################################
+# Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+nic_mappings: []
+bond_mappings: []
+
+provider_net_mappings:
+ - name: br-provider
+ network: physnet
+ interface: eth10
+ type: ovs
+ role:
+ - controller
+
+sys_intf_mappings:
+ - name: mgmt
+ interface: eth0
+ type: normal
+ vlan_tag: None
+ role:
+ - controller
+ - compute
+
+ - name: tenant
+ interface: eth2
+ type: normal
+ vlan_tag: None
+ role:
+ - controller
+
+ - name: tenant
+ interface: eth2
+ type: dpdk
+ vlan_tag: None
+ role:
+ - compute
+
+ - name: storage
+ interface: eth1
+ type: normal
+ vlan_tag: 102
+ role:
+ - controller
+ - compute
+
+ - name: external
+ interface: eth1
+ type: normal
+ vlan_tag: None
+ role:
+ - controller
+ - compute
+
+ip_settings:
+ - name: mgmt
+ ip_ranges:
+ - - "10.1.0.50"
+ - "10.1.0.100"
+ dhcp_ranges:
+ - - "10.1.0.2"
+ - "10.1.0.49"
+ cidr: "10.1.0.0/24"
+ gw: "10.1.0.1"
+ role:
+ - controller
+ - compute
+
+ - name: tenant
+ ip_ranges:
+ - - "172.16.1.1"
+ - "172.16.1.50"
+ cidr: "172.16.1.0/24"
+ role:
+ - controller
+ - compute
+
+ - name: storage
+ ip_ranges:
+ - - "172.16.2.1"
+ - "172.16.2.50"
+ cidr: "172.16.2.0/24"
+ role:
+ - controller
+ - compute
+
+ - name: external
+ ip_ranges:
+ - - "192.168.11.10"
+ - "192.168.11.50"
+ cidr: "192.168.11.0/24"
+ gw: "192.168.11.1"
+ role:
+ - controller
+ - compute
+
+internal_vip:
+ ip: 10.1.0.222
+ netmask: "24"
+ interface: mgmt
+
+public_vip:
+ ip: 192.168.11.222
+ netmask: "24"
+ interface: external
+
+onos_nic: eth2
+tenant_net_info:
+ type: vxlan
+ range: "1:1000"
+ provider_network: None
+
+public_net_info:
+ enable: "True"
+ network: ext-net
+ type: flat
+ segment_id: 1000
+ subnet: ext-subnet
+ provider_network: physnet
+ router: router-ext
+ enable_dhcp: "False"
+ no_gateway: "False"
+ external_gw: "192.168.11.1"
+ floating_ip_cidr: "192.168.11.0/24"
+ floating_ip_start: "192.168.11.100"
+ floating_ip_end: "192.168.11.200"
diff --git a/deploy/conf/hardware_environment/huawei-pod2/os-nosdn-ovs_dpdk-ha.yml b/deploy/conf/hardware_environment/huawei-pod2/os-nosdn-ovs_dpdk-ha.yml
index 85dd4570..3fdfe6b7 100644
--- a/deploy/conf/hardware_environment/huawei-pod2/os-nosdn-ovs_dpdk-ha.yml
+++ b/deploy/conf/hardware_environment/huawei-pod2/os-nosdn-ovs_dpdk-ha.yml
@@ -26,6 +26,7 @@ hosts:
ipmiIp: 172.16.130.20
interfaces:
- eth1: 'EC:38:8F:79:0C:2D'
+ - eth2: 'EC:38:8F:79:0C:2E'
roles:
- controller
- ha
@@ -39,6 +40,7 @@ hosts:
ipmiPass: Opnfv@pod2
interfaces:
- eth1: 'EC:38:8F:79:0C:49'
+ - eth2: 'EC:38:8F:79:0C:4A'
roles:
- controller
- ha
@@ -51,6 +53,7 @@ hosts:
ipmiPass: Opnfv@pod2
interfaces:
- eth1: 'EC:38:8F:79:10:CD'
+ - eth2: 'EC:38:8F:79:10:CE'
roles:
- controller
- ha
@@ -63,6 +66,7 @@ hosts:
ipmiPass: Opnfv@pod2
interfaces:
- eth1: 'EC:38:8F:79:0C:6D'
+ - eth2: 'EC:38:8F:79:0C:6E'
roles:
- compute
- ceph-osd
@@ -74,6 +78,7 @@ hosts:
ipmiPass: Opnfv@pod2
interfaces:
- eth1: 'EC:38:8F:7A:E6:EE'
+ - eth2: 'EC:38:8F:7A:E6:EF'
roles:
- compute
- ceph-osd