第9章 OVS DPDK を使用したさまざまなボンディングモードのデプロイ
この手順を使用して、Red Hat OpenStack Platform で OVS-DPDK を使用してさまざまなボンディングモードをデプロイします。
9.1. 解決策 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
compute.yaml 環境ファイルに次の変更を加えます。この例では、MTU 値も 2000 に設定されていることに注意してください。
(...)
-
type: ovs_user_bridge
name: br-link
mtu: 2000
use_dhcp: false
members:
-
type: ovs_dpdk_bond
name: dpdkbond0
ovs_options: "bond_mode=balance-slb"
mtu: 2000
ovs_extra:
- set interface dpdk0 mtu_request=$MTU
- set interface dpdk1 mtu_request=$MTU
members:
-
type: ovs_dpdk_port
name: dpdk0
members:
-
type: interface
name: p1p2
-
type: ovs_dpdk_port
name: dpdk1
members:
-
type: interface
name: p1p1
(...)
(...)
-
type: ovs_user_bridge
name: br-link
mtu: 2000
use_dhcp: false
members:
-
type: ovs_dpdk_bond
name: dpdkbond0
ovs_options: "bond_mode=balance-slb"
mtu: 2000
ovs_extra:
- set interface dpdk0 mtu_request=$MTU
- set interface dpdk1 mtu_request=$MTU
members:
-
type: ovs_dpdk_port
name: dpdk0
members:
-
type: interface
name: p1p2
-
type: ovs_dpdk_port
name: dpdk1
members:
-
type: interface
name: p1p1
(...)
上記で行ったテンプレートの変更を使用して、オーバークラウドをデプロイまたは再デプロイします。完了したら、オーバークラウドノードで次の手順を実行します。
os-net-config 設定を確認します。
cat /etc/os-net-config/config.json | python -m json.tool
(...)
{
"members": [
{
"members": [
{
"members": [
{
"name": "p1p2",
"type": "interface"
}
],
"name": "dpdk0",
"type": "ovs_dpdk_port"
},
{
"members": [
{
"name": "p1p1",
"type": "interface"
}
],
"name": "dpdk1",
"type": "ovs_dpdk_port"
}
],
"mtu": 2000,
"name": "dpdkbond0",
"ovs_extra": [
"set interface dpdk0 mtu_request=$MTU",
"set interface dpdk1 mtu_request=$MTU"
],
"ovs_options": "bond_mode=balance-slb",
"type": "ovs_dpdk_bond"
}
],
"mtu": 2000,
"name": "br-link",
"type": "ovs_user_bridge",
"use_dhcp": false
},
(...)
cat /etc/os-net-config/config.json | python -m json.tool
(...)
{
"members": [
{
"members": [
{
"members": [
{
"name": "p1p2",
"type": "interface"
}
],
"name": "dpdk0",
"type": "ovs_dpdk_port"
},
{
"members": [
{
"name": "p1p1",
"type": "interface"
}
],
"name": "dpdk1",
"type": "ovs_dpdk_port"
}
],
"mtu": 2000,
"name": "dpdkbond0",
"ovs_extra": [
"set interface dpdk0 mtu_request=$MTU",
"set interface dpdk1 mtu_request=$MTU"
],
"ovs_options": "bond_mode=balance-slb",
"type": "ovs_dpdk_bond"
}
],
"mtu": 2000,
"name": "br-link",
"type": "ovs_user_bridge",
"use_dhcp": false
},
(...)
ボンディングを確認します。
ovs-appctl bond/show dpdkbond0
[root@overcloud-compute-0 ~]# ovs-appctl bond/show dpdkbond0
---- dpdkbond0 ----
bond_mode: balance-slb
bond may use recirculation: no, Recirc-ID : -1
bond-hash-basis: 0
updelay: 0 ms
downdelay: 0 ms
next rebalance: 9221 ms
lacp_status: off
active slave mac: a0:36:9f:e5:da:82(dpdk1)
slave dpdk0: enabled
may_enable: true
slave dpdk1: enabled
active slave
may_enable: true