aboutsummaryrefslogtreecommitdiffstats
path: root/roles_data_undercloud.yaml
blob: 2759429ce8110d8393b062c5263d3357a619cdba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
- name: Undercloud # the 'primary' role goes first
  CountDefault: 1
  disable_constraints: True
  ServicesDefault:
    - OS::TripleO::Services::Ntp
    - OS::TripleO::Services::MySQL
    - OS::TripleO::Services::MongoDb
    - OS::TripleO::Services::Keystone
    - OS::TripleO::Services::Apache
    - OS::TripleO::Services::RabbitMQ
    - OS::TripleO::Services::GlanceApi
    - OS::TripleO::Services::SwiftProxy
    - OS::TripleO::Services::SwiftStorage
    - OS::TripleO::Services::SwiftRingBuilder
    - OS::TripleO::Services::Memcached
    - OS::TripleO::Services::HeatApi
    - OS::TripleO::Services::HeatApiCfn
    - OS::TripleO::Services::HeatEngine
    - OS::TripleO::Services::NovaApi
    - OS::TripleO::Services::NovaPlacement
    - OS::TripleO::Services::NovaMetadata
    - OS::TripleO::Services::NovaScheduler
    - OS::TripleO::Services::NovaConductor
    - OS::TripleO::Services::MistralEngine
    - OS::TripleO::Services::MistralApi
    - OS::TripleO::Services::MistralExecutor
    - OS::TripleO::Services::IronicApi
    - OS::TripleO::Services::IronicConductor
    - OS::TripleO::Services::NovaIronic
    - OS::TripleO::Services::Zaqar
    - OS::TripleO::Services::NeutronServer
    - OS::TripleO::Services::NeutronApi
    - OS::TripleO::Services::NeutronCorePlugin
    - OS::TripleO::Services::NeutronOvsAgent
    - OS::TripleO::Services::NeutronDhcpAgent
: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */ }
# Copyright (c) 2016-2017 Intel Corporation
#
# 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.
#

[lua]
lpm4 = dofile("ipv4_bng.lua")
user_table = dofile("gre_table.lua")
dscp_table = dofile("dscp.lua")

[eal options]
-n=4 ; $sut_memory_channels
no-output=no ; disable DPDK debug output

[variables]
$master        =0
$core_lb_cpe0  =1
$core_inet0    =2
$core_lb_cpe1  =3
$core_inet1    =4
$core_workers  =13-14,15-16,17-18,19-20
$core_qos_cpe0 =5
$core_tx_cpe0  =6
$core_qos_cpe1 =7
$core_tx_cpe1  =8
$core_tx_inet0 =9
$core_cpe0     =10
$core_tx_inet1 =11
$core_cpe1     =12

[port 0]
name=cpe0
mac=hardware
rx desc=2048
tx desc=2048
[port 1]
name=inet0
mac=hardware
rx desc=2048
tx desc=2048
[port 2]
name=cpe1
mac=hardware
rx desc=2048
tx desc=2048
[port 3]
name=inet1
mac=hardware
rx desc=2048
tx desc=2048

[defaults]
mempool size=142K
memcache size=512
qinq tag=0xa888

[global]
start time=20
name=BNG + QoS

[core $master]
mode=master

; IPv4
;*****************************************************************************************
;##### Load Balancing receiving from CPE and from Internet ####
[core $core_lb_cpe0]
name=LB-cpe
task=0
mode=lbqinq
rx ring=yes
tx cores=(${core_workers})t0 proto=ipv4
tx cores=(${core_workers})t0 proto=arp
drop=no

[core $core_inet0]
name=LB-inet
task=0
mode=lbnetwork
rx port=inet0
untag mpls=yes
tx cores=(${core_workers})t1 proto=ipv4
drop=no

[core $core_lb_cpe1]
name=LB-cpe
task=0
mode=lbqinq
rx ring=yes
tx cores=(${core_workers})t0 proto=ipv4
tx cores=(${core_workers})t0 proto=arp
drop=no

[core $core_inet1]
name=LB-inet
task=0
mode=lbnetwork
rx port=inet1
untag mpls=yes
tx cores=(${core_workers})t1 proto=ipv4
drop=no

;*****************************************************************************************
;#### Workers receiving from LB
;#### Task 0: QinQ decapsulation + gre encapsulation + routing
;#### Task 1: ARP
;#### Task 2: GRE depcapsulation + QinQ encapsulation + use learned mac
[core $core_workers]
name=Worker
task=0
mode=qinqdecapv4
rx ring=yes
tx cores from routing table=${core_tx_inet0},${core_tx_inet1}
drop=no
route table=lpm4
local ipv4=21.22.23.24
handle arp=yes
user table=user_table
fast path handle arp=yes

task=1
mode=qinqencapv4
rx ring=yes
tx cores from cpe table=${core_qos_cpe0},${core_qos_cpe1} remap=cpe0,cpe1 ;map packets going to cpe0 to 3s0 and cpe1 to 4s0
drop=no
user table=user_table
dscp=dscp_table
classify=yes

;*****************************************************************************************
;#### Downstream QoS receiving from workers
;#### classification done by workers
;#### Downstream QoS = QoS core and TX core
[core $core_qos_cpe0]
name=txqos0
task=0
mode=qos
rx ring=yes
tx cores=(${core_tx_cpe0})t0
drop=no
pipe tc rate=125000
pipe tb rate=125000
user table=user_table

[core $core_tx_cpe0]
name=txnop0
task=0
mode=l2fwd
rx ring=yes
dst mac=@@tester_p0
tx port=cpe0
drop=no

[core $core_qos_cpe1]
name=txqos1
task=0
mode=qos
rx ring=yes
tx cores=(${core_tx_cpe1})t0
drop=no
pipe tc rate=125000
pipe tb rate=125000
user table=user_table

[core $core_tx_cpe1]
name=txnop1
task=0
mode=l2fwd
rx ring=yes
dst mac=@@tester_p2
tx port=cpe1
drop=no

;*****************************************************************************************
;#### upstream QoS receiving from CPE
;#### classification done by RX, QoS core
;#### upstream QoS = RX core (classify) + QoS core
[core $core_tx_inet0]
name=rxcl0
task=0
mode=l2fwd
rx ring=yes
dst mac=@@tester_p1
tx port=inet0
drop=no

[core $core_cpe0]
name=rxqos0
task=0
mode=qos
rx port=cpe0
tx cores=(${core_lb_cpe0})t0
drop=no
pipe tc rate=125000
pipe tb rate=125000
user table=user_table
dscp=dscp_table
classify=yes

[core $core_tx_inet1]
name=rxcl1
task=0
mode=l2fwd
rx ring=yes
dst mac=@@tester_p3
tx port=inet1
drop=no

[core $core_cpe1]
name=rxqos1
task=0
mode=qos
rx port=cpe1
tx cores=(${core_lb_cpe1})t0
drop=no
pipe tc rate=125000
pipe tb rate=125000
user table=user_table
dscp=dscp_table
classify=yes