Examples for non-standard network templates

With network templates Fuel can be configured to deploy using
fewer networks than is normally required.

Co-Authored-By: Svetlana Karslioglu <skarslioglu@mirantis.com>
Change-Id: I983a2c1e69c7eaa0cf403f1a39bf02ca41787a7a
This commit is contained in:
Ryan Moe 2015-10-01 08:03:18 -07:00 committed by Svetlana Karslioglu
parent 62b8c13c72
commit 5df3fbc245
4 changed files with 290 additions and 0 deletions

View File

@ -45,3 +45,4 @@
.. include:: /pages/operations/reduced-footprint-ops.rst
.. include:: /pages/operations/tls-ssl-ops.rst
.. include:: /pages/operations/templates-networking-ops.rst
.. include:: /pages/operations/templates-networking-examples.rst

85
examples/one_network.yaml Normal file
View File

@ -0,0 +1,85 @@
adv_net_template:
default:
network_assignments:
fuelweb_admin:
ep: br-fw-admin
network_scheme:
common:
endpoints:
- br-fw-admin
roles:
admin/pxe: br-fw-admin
ceilometer/api: br-fw-admin
ceph/public: br-fw-admin
cinder/api: br-fw-admin
fw-admin: br-fw-admin
glance/api: br-fw-admin
heat/api: br-fw-admin
horizon: br-fw-admin
keystone/api: br-fw-admin
management: br-fw-admin
mgmt/corosync: br-fw-admin
mgmt/database: br-fw-admin
mgmt/memcache: br-fw-admin
mgmt/messaging: br-fw-admin
mgmt/vip: br-fw-admin
mongo/db: br-fw-admin
murano/api: br-fw-admin
neutron/api: br-fw-admin
neutron/mesh: br-fw-admin
nova/api: br-fw-admin
nova/migration: br-fw-admin
sahara/api: br-fw-admin
swift/api: br-fw-admin
neutron/private: br-fw-admin
ceph/radosgw: br-fw-admin
ex: br-fw-admin
neutron/floating: br-floating
public/vip: br-fw-admin
ceph/replication: br-fw-admin
cinder/iscsi: br-fw-admin
storage: br-fw-admin
swift/replication: br-fw-admin
swift/public: br-fw-admin
transformations:
- action: add-br
name: br-fw-admin
- action: add-port
bridge: br-fw-admin
name: <% if1 %>
- action: add-br
name: br-aux
- action: add-br
name: br-prv
provider: ovs
- action: add-patch
bridges:
- br-prv
- br-fw-admin
mtu: 65000
provider: ovs
- action: add-br
name: br-floating
provider: ovs
- action: add-patch
bridges:
- br-floating
- br-fw-admin
mtu: 65000
provider: ovs
nic_mapping:
default:
if1: eth0
templates_for_node_role:
cinder:
- common
compute:
- common
controller:
- common
ceph-osd:
- common
mongo:
- common

View File

@ -0,0 +1,93 @@
adv_net_template:
default:
network_assignments:
fuelweb_admin:
ep: br-fw-admin
everything:
ep: br-all
network_scheme:
common:
endpoints:
- br-all
- br-fw-admin
roles:
admin/pxe: br-fw-admin
ceilometer/api: br-all
ceph/public: br-all
cinder/api: br-all
fw-admin: br-fw-admin
glance/api: br-all
heat/api: br-all
horizon: br-all
keystone/api: br-all
management: br-all
mgmt/corosync: br-all
mgmt/database: br-all
mgmt/memcache: br-all
mgmt/messaging: br-all
mgmt/vip: br-all
mongo/db: br-all
murano/api: br-all
neutron/api: br-all
neutron/mesh: br-all
nova/api: br-all
nova/migration: br-all
sahara/api: br-all
swift/api: br-all
neutron/private: br-all
ceph/radosgw: br-all
ex: br-all
neutron/floating: br-floating
public/vip: br-all
ceph/replication: br-all
cinder/iscsi: br-all
storage: br-all
swift/replication: br-all
swift/public: br-all
transformations:
- action: add-br
name: br-fw-admin
- action: add-port
bridge: br-fw-admin
name: <% if1 %>
- action: add-br
name: br-all
- action: add-port
bridge: br-all
name: <% if2 %>
- action: add-br
name: br-aux
- action: add-br
name: br-prv
provider: ovs
- action: add-patch
bridges:
- br-prv
- br-all
mtu: 65000
provider: ovs
- action: add-br
name: br-floating
provider: ovs
- action: add-patch
bridges:
- br-floating
- br-all
mtu: 65000
provider: ovs
nic_mapping:
default:
if1: eth0
if2: eth1
templates_for_node_role:
cinder:
- common
compute:
- common
controller:
- common
ceph-osd:
- common
mongo:
- common

View File

@ -0,0 +1,111 @@
.. _templates-networking-examples:
Network Template Examples
=========================
You can use network templates to configure Fuel to use
one or two networks for all OpenStack network traffic.
Configuring Two Networks
------------------------
Fuel supports the two-network configuration where one network interface is
dedicated for PXE traffic and another network interface, or bonding, for
all other traffic.
**To configure two networks:**
1. Create a new network for all non-PXE traffic:
::
# fuel network-group --create --name everything --cidr <cidr>
--gateway <gateway> --nodegroup <nodegroup>
2. Set the ``render_addr_mask`` parameter to `internal` for this network by
typing:
::
# fuel network-group --set --network 39 --meta '{"name":
"everything", "notation": "cidr", "render_type": null, "map_priority": 2,
"configurable": true, "use_gateway": true, "render_addr_mask":
"internal", "vlan_start": null, "cidr": "10.108.31.0/24"}'
This parameter is required by the Fuel library. The Fuel library requires
a value called ``internal_address`` for each node.
This value is set to the node's IP address from a network group which has
``render_addr_mask`` set to `internal` in its metadata. Therefore, update
``render_addr_mask`` for this network.
3. Save `network template for two networks <examples/two_networks.yaml>`_
as ``network_template_<env id>.yaml``.
.. note::
Verify that ``nic_mapping`` matches your configuration.
4. Upload the network template by typing:
::
# fuel network-template --upload --env <env id>
5. Deploy the environment.
6. After Fuel completes the deployment, verify that only one bridge is
configured by typing:
::
# ip -4 a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
8: br-fw-admin: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
inet 10.108.5.3/24 brd 10.108.5.255 scope global br-fw-admin
valid_lft forever preferred_lft forever
16: vr-host-base: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 240.0.0.5/30 scope global vr-host-base
valid_lft forever preferred_lft forever
30: hapr-host: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 240.0.0.1/30 scope global hapr-host
valid_lft forever preferred_lft forever
Configuring a Single Network
----------------------------
Fuel supports a single network configuration where one network interface is
responsible for all OpenStack traffic. This configuration is common in the
proof of concept deployments where no additional network interfaces are
available.
**To configure a single network:**
1. Save `network template for one network <examples/one_network.yaml>`_
as ``network_template_<env id>.yaml``.
2. Upload the network template by typing:
::
# fuel network-template --upload --env <env id>
3. Deploy the environment.
4. Proceed to :ref:`neutron_config`.
.. _neutron_config:
Configure Neutron
+++++++++++++++++
After you deploy your environment, allocate the correct floating IP pool
to the network.
**To allocate the correct floating IP pool:**
#. Clear the gateway from `router04`.
#. Delete the `net04_ext__subnet` subnet.
#. Create a new subnet with the floating IP pool from the single network.
#. Set gateway on `router04`.