Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 40 additions & 21 deletions doc/source/architecture.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,39 +13,43 @@ Ansible control host
managed from.
Seed host
The seed host runs the bifrost deploy container and is used to provision
the cloud hosts. By default, container images are built on the seed.
the overcloud hosts. By default, container images are built on the seed.
Typically the seed host is deployed as a VM but this is not mandatory.
Seed hypervisor host
The seed hypervisor host is configured with Libvirt and KVM. It hosts the
seed VM (when the seed host is deployed as a VM) and infrastructure VMs.
Infrastructure VM hosts
Infrastructure VMs (or Infra VMs) are virtual machines that may be deployed
to provide supplementary infrastructure services. They may be for things
like proxies or DNS servers that are dependencies of the Cloud hosts.
Cloud hosts
The cloud hosts run the OpenStack control plane, network, monitoring,
storage, and virtualised compute services. Typically the cloud hosts run
on bare metal but this is not mandatory.
Bare metal compute hosts
In a cloud providing bare metal compute services to tenants via ironic,
these hosts will run the bare metal tenant workloads. In a cloud with only
like proxies or DNS servers that are dependencies of the overcloud hosts.
Overcloud hosts
The overcloud hosts run the OpenStack control plane, network, monitoring,
storage, and virtualised compute services. Typically the overcloud hosts
run on bare metal, but this is not mandatory.
Bare metal workload hosts
In a cloud providing bare metal workload services to tenants via ironic,
these hosts will run the bare metal tenant workloads. In a cloud with only
virtualised compute this category of hosts does not exist.

.. note::

In many cases the control and seed host will be the same, although this is
not mandatory.
In many cases the Ansible control host and seed hypervisor will be the same,
although this is not mandatory.

Cloud Hosts
-----------
Overcloud Hosts
---------------

Cloud hosts can further be divided into subclasses.
Overcloud hosts can further be divided into subclasses.

Controllers
Controller hosts run the OpenStack control plane services.
Network
Network hosts run the neutron networking services and load balancers for
the OpenStack API services.
Monitoring
Monitoring host run the control plane and workload monitoring services.
Currently, kayobe does not deploy any services onto monitoring hosts.
Monitoring hosts run the control plane monitoring services.
Storage
Storage hosts run the storage services.
Virtualised compute hypervisors
Virtualised compute hypervisors run the tenant Virtual Machines (VMs) and
associated OpenStack services for compute, networking and storage.
Expand All @@ -54,25 +58,40 @@ Networks
========

Kayobe's network configuration is very flexible but does define a few default
classes of networks. These are logical networks and may map to one or more
classes of networks. These are logical networks and may map to one or more
physical networks in the system.

Overcloud admin network
The overcloud admin network is used to access the hosts in the system for
administrative purposes, e.g. for remote SSH access.
Overcloud out-of-band network
Name of the network used by the seed to access the out-of-band management
controllers of the bare metal overcloud hosts.
Overcloud provisioning network
The overcloud provisioning network is used by the seed host to provision
the cloud hosts.
the overcloud hosts.
Workload out-of-band network
Name of the network used by the overcloud hosts to access the out-of-band
management controllers of the bare metal workload hosts.
Workload provisioning network
The workload provisioning network is used by the cloud hosts to provision
the bare metal compute hosts.
The workload provisioning network is used by the overcloud hosts to
provision the bare metal workload hosts.
Cleaning network
The cleaning network is used by the overcloud hosts to perform cleaning on
the bare metal workload hosts.
Inspection network
The inspection network is used by the overcloud hosts to perform hardware
introspection on the bare metal workload hosts.
Internal network
The internal network hosts the internal and admin OpenStack API endpoints.
The internal network hosts the internal OpenStack API endpoints.
Public network
The public network hosts the public OpenStack API endpoints.
External network
The external network provides external network access for the hosts in the
system.
Tunnel network
The tunnel network carries tenant overlay network traffic.
Storage network
The storage network carries storage data traffic.
Storage management network
The storage management network carries storage management traffic.
Original file line number Diff line number Diff line change
Expand Up @@ -311,14 +311,14 @@ values for specific host groups where required.
# Provision / Control maps to a bridge on the 25G bond port
provision_ctl_net_interface: "br{{ control_25g_interface }}"
provision_ctl_net_bridge_ports:
- "{{ control_25g_interface }}"
- "{{ control_25g_interface }}"
provision_ctl_net_physical_network: "physnet3"

# List of names of networks used to provide external network access via Neutron.
# This value is overridden for controllers to add the external_10g network.
external_net_names:
- "hs_bond"
- "provision_ctl_net"
- "hs_bond"
- "provision_ctl_net"

Seed Hypervisor
===============
Expand Down Expand Up @@ -693,12 +693,12 @@ controller hosts and capture the physical NIC names used in bond slave lists.
- eno36np3

control_25g_bond_slaves:
- eno33np0
- eno34np1
- eno33np0
- eno34np1

hs_bond_bond_slaves:
- ens3f0np0
- ens3f1np1
- ens3f0np0
- ens3f1np1

external_bridge_interface: "br{{ external_10g_interface }}"
external_bridge_bridge_ports:
Expand Down