OpenStack Octavia load balancing implementation

How to roll out Octavia load balancing on an OpenStack private cloud, covering amphora images, TLS certificates in Barbican, health monitoring and the capacity that Nova, Neutron and Glance must provide.

On this page

When an OpenStack private cloud needs Octavia load balancing

A platform team that runs an OpenStack cloud often reaches the point where tenants stop asking for virtual machines with a floating IP and start asking for a load balancer they can create themselves. Octavia implementation delivers that capability inside an OpenStack cloud your organization operates: load balancing as a service that tenants request through the API or dashboard, with the amphorae, networks, certificates and monitoring behind it built and run in your own data center or cloud accounts. The decision in front of the platform team is whether to offer that service at all, and if so, how much of the surrounding platform must be ready first.

Octavia is the load balancing service in OpenStack. It provisions load balancers, listeners, pools, members and health monitors on request, and for most deployments it runs those load balancers as amphorae, which are virtual machines launched from a dedicated image on behalf of the tenant. That design means Octavia depends on several other OpenStack services. Nova boots the amphorae, Neutron provides the tenant and provider networks they attach to, Glance stores the amphora image, Keystone handles authentication and authorization for every API call, and Barbican holds the certificates used when a listener terminates TLS. Most of the implementation effort sits in those dependencies rather than in Octavia itself, so the work usually begins with a review of how each of them is already configured in your cloud.

Before scoping the work, the platform team should confirm several points with its own environment. Which OpenStack release is running, and whether the planned Octavia version matches it, determines the supported feature set and the upgrade path; the release status is published on the OpenStack releases site and should be checked at the time of planning. The team should also confirm whether Neutron runs on the OVN mechanism driver or on the classic agents, because amphora networking and the way traffic reaches the load balancer differ between them. Capacity is the third question: the amphora flavor, the number of amphorae the expected load requires, and the compute and network headroom each one consumes all need an owner before tenants can rely on the service.

DeployOpen plans and implements Octavia inside the client's own infrastructure, whether that is their cloud accounts, data centers or an air-gapped network. The engagement covers the amphora image and flavor, the Neutron and Nova configuration Octavia needs, TLS termination with certificates held in Barbican, health monitoring, and the capacity model that ties these together. The rest of this page describes what the client should decide and what the client must provide before that work starts, so the scope, responsibilities and quote can be agreed in writing.

What Octavia provides to tenants and operators

Octavia gives tenants a load balancing API built from a small set of connected objects, and gives operators the virtual appliances, images and flavors that run it. The cards below cover the tenant model, the amphora layer, TLS, the API and operator controls, plus the feature check to complete before design starts.

Tenant object model

Tenants build a load balancer, then attach listeners that define protocol and port, pools of backend members, and health monitors that decide which members receive traffic. Each object has its own provisioning and operating status, so teams should agree early on who creates pools and members in shared projects. Ask application teams to map their services onto this model before you finalize network design.

Amphora virtual appliances

The amphora provider runs each load balancer on an amphora, a virtual appliance booted as a Nova instance from a Glance image. Operators own the amphora lifecycle, including image builds, failover handling and the capacity those instances consume in the compute pool. Confirm in the documentation for your release which image build process and failover behavior apply before you plan host capacity.

TLS termination and certificates

Listeners can terminate TLS so backend members receive plain or re-encrypted traffic, depending on how the listener is configured. Certificate material is stored as secrets in Barbican and referenced by the listener, which keeps private keys out of tenant configuration files. Check which certificate formats, SNI handling and client certificate options your chosen release supports, and confirm who renews certificates and how.

Tenant API and automation

Tenants manage load balancers through the Octavia REST API, authenticated against Keystone, and through the OpenStack CLI and SDKs that call it. Dashboard support depends on what your deployment installs, so confirm it before promising it to teams. Decide early whether teams automate through infrastructure-as-code tools, because pipelines must wait for provisioning to finish before they configure dependent objects.

Flavors and images as operator controls

Operators publish amphora flavors that set the compute size of the appliances and select the Glance image they boot from. Tenants typically see only the load balancer flavors you expose, so flavor design determines cost per load balancer and how many appliances fit on each hypervisor. Agree on flavor names, sizing reviews and the image rebuild schedule with the teams that own Nova and Glance.

Provider drivers and feature set

Octavia uses provider drivers to translate API requests into load balancing back ends, and the supported drivers and feature set vary by release. This page does not list release-specific features, so compare your planned OpenStack release against the Octavia documentation for that release before you commit to listener types, protocols or topology options. Record the result in your design document and review it again before each upgrade.

Configuration decisions to settle before the build

This table sets out the design choices to close before building Octavia, with the options for each, when they fit and what they change later. Read each row as a decision to record with your platform owners and network team. Failover behavior, cost per load balancer and operator workload are the outcomes most affected by these early choices.

DecisionOptions and when each fitsWhat it affects later
Amphora topologySingle amphora suits non-critical or test services that can tolerate a rebuild after failure. Active-standby suits production services that need faster failover.Failover behavior, compute consumed per load balancer, and how many amphora instances operators must watch.
Amphora flavor sizingSmaller flavors fit low connection counts and light TLS work. Larger flavors fit high throughput or heavy TLS termination. Benchmark with your own traffic profile first.Cost per load balancer, how many amphorae fit on each hypervisor, and when capacity must be added.
Image build and ownershipA central team builds, tests and patches the amphora image for each Octavia release and each guest OS security update. Tenants do not build their own.Patch speed for vulnerabilities, compatibility with the Octavia controller version, and upgrade sequencing.
Management network layoutA dedicated management network keeps amphora control traffic separate from tenant traffic. Confirm routing and security group design against your Neutron back end.Health heartbeats, controller reachability during failover, firewall rules, and troubleshooting effort.
Certificate authority and Barbican storeInternal CA issuance suits private services. Enterprise CA issuance suits public or audited endpoints. Confirm which secret store back end your Barbican deployment uses.Certificate renewal workflow, who can read private keys, and the audit trail for TLS listeners.
Health monitor and timeoutsTight timeouts suit fast APIs with quick responses. Longer timeouts suit uploads, reports or slow backends. Choose the monitor type for each pool separately.Failover speed, false member removals under load, and probe traffic reaching backend servers.
Tenant quota modelPer-project quotas let each team self-serve within set limits. A shared pool suits smaller platforms with a single owner. Set amphora compute quotas explicitly.Cost visibility, protection from noisy neighbors, and how quickly teams reach compute limits.

How amphorae, Nova, Neutron and Glance work together for each load balancer

The core of an Octavia deployment is a chain of calls that starts with a tenant and ends with a running load balancer. When a tenant creates a load balancer through the Octavia API, the Octavia controller does not forward traffic itself. It asks Nova to boot a dedicated virtual machine called an amphora, using an image registered in Glance and a flavor defined by the operator. Neutron then attaches that amphora to the networks it needs: one path for tenant traffic to the back-end members, and one management path that the controller uses to reach the amphora's API. Once the amphora is up, the controller pushes configuration to it and keeps watching its health. Each of these steps depends on a different OpenStack service, so a failure in any one of them looks like a load balancer that never becomes active.

The amphora image and the flavor are operator-managed resources. Tenants do not choose them through the normal self-service path, and the operator decides which image version, disk size and memory each amphora receives. This matters for capacity planning because the flavor sets how many amphorae a compute host can carry and how much headroom remains for tenant workloads. It also matters for upgrades, since a new amphora image version changes the software on every load balancer that is rebuilt or failed over. Ask your team who owns the image build, how new versions are tested before they are published to Glance, and which flavor is referenced in the Octavia configuration for each availability zone you plan to use.

The management network path is the most common source of failures we see in these deployments. The controller must reach the amphora's management address, and the amphora must reach the controller's health and statistics endpoints. Typical problems include a management subnet that is not routed to the controller network, security group rules that allow the wrong port or direction, DHCP that does not hand out an address on the management network, and a firewall between the control plane and the compute nodes. Plan this network before the first load balancer is created, and test it by booting a test amphora and confirming that the controller can reach it and receive heartbeats from it.

Confirm the exact boot and networking flow for your release before you write runbooks or capacity models. Check the Octavia documentation for your OpenStack version, including how the amphora is requested from Nova, which Neutron networks are passed at creation, and whether your deployment tool configures the management network in the same way. Also confirm which Glance image properties the amphora driver expects and how your release handles image tags and flavors across availability zones. The steps described here are general; the parameters, defaults and resource names in your environment are the ones that govern real behavior, so record them in your design document and validate them in a non-production cloud first.

How an Octavia rollout runs, step by step

The rollout runs as eight ordered stages, and each one closes with a named artifact that the next stage depends on. Together they take a cloud from a confirmed release and deployment method to a load balancing service that tenants can use under documented runbooks.

  1. Confirm release and deployment method

    The platform team confirms the OpenStack release that will carry Octavia and chooses between Kolla-Ansible and OpenStack-Ansible, both covered in the 2026.1 deployment guides. Kolla-Ansible deploys services in Docker containers, while OpenStack-Ansible deploys in LXC containers or on bare metal, so the choice shapes host layout, upgrade tooling and runbook content. The team also confirms that Nova, Neutron, Glance, Keystone and Barbican are in the same release and that Octavia is enabled in the deployment configuration. The output is a written decision record and a version matrix that later steps reference, signed off by the platform owner.

  2. Prepare the management network and security groups

    Amphorae, the virtual machines Octavia uses as load balancers, need a management path back to the Octavia controllers. Plan a dedicated management network or subnet, assign addressing and routing so controllers can reach the amphora agents, and create security groups that permit that control traffic and health monitor traffic to members. Agree with the network team how tenant networks will connect to this path before any amphora boots. The output is a working management path, verified by launching a test instance on the network and confirming that it reaches the controller endpoint. Do not move on until that test passes.

  3. Build and register the amphora image in Glance

    Build the amphora image with the tooling documented for your Octavia release, using the base operating system your security team has approved. Apply your hardening baseline and record the build inputs so the image can be reproduced. Upload the image to Glance, tag it for Octavia, and confirm that the controllers can locate it by that tag. The output is a tested image: boot one instance from it, confirm that the amphora agent starts and reports over the management path, and file the checksum and build record with the version matrix. Rebuild the image whenever the base operating system or the Octavia release changes.

  4. Define flavors and quotas

    Create Nova flavors for amphorae sized to the throughput and connection profile you expect, and agree on one or more flavors so capacity can be separated by service tier. Set Octavia and Nova quotas per project, covering load balancers, listeners, pools, and the compute, memory and port counts that each amphora consumes. Confirm Neutron port and floating IP quotas as well, since every amphora adds ports. Ask your capacity planner to model peak amphora count against available hypervisor capacity. The output is a flavor list and quota table, approved by the platform owner, that tenants cannot exceed.

  5. Deploy controllers and register with Keystone

    Deploy the Octavia API, worker, health manager and housekeeping processes with the chosen deployment tool, placing them so they reach the management network and the database. Register the load balancing endpoint in the Keystone service catalog, then create the service user and role assignments that Octavia requires. Confirm that tokens issued to that user can call the API. The output is a responding API endpoint listed in the catalog, and a health manager that sees the test amphora from the previous step. Store the configuration in version control before moving on.

  6. Configure TLS certificates in Barbican

    For TLS termination, store the server certificate, private key and any intermediate chain in Barbican as secrets. Grant the Octavia service user read access to those secrets through Barbican access control, and keep the access policy as narrow as the design allows. Name the owner of certificate renewal and rotation and describe how a renewed secret reaches the listeners that use it, because renewal is often missed after launch when no owner is named. Confirm that Octavia can read a secret and attach it to a test listener. The output is a listener that terminates TLS with a stored certificate and a documented renewal owner. Keep private keys out of pipeline logs and shell history throughout this work.

  7. Run functional and load tests

    Create a sample pool with members and an HTTP health monitor. Test that traffic reaches healthy members, that a member made to fail is removed from rotation and returns after recovery, and that listener and TLS behavior match the design. Then run a load test against the same configuration using a traffic profile agreed in advance, recording throughput, latency, error rates, and amphora CPU and memory use. If headroom is short, adjust the flavor or quota from the earlier step and repeat the test. The output is a signed-off test report with pass or fail results against the acceptance criteria the team set before testing.

  8. Enable tenant access and hand over runbooks

    Open the service to pilot projects first, using the quotas and flavors signed off earlier, and confirm that those tenants can create load balancers through the API or dashboard without administrator help. Hand over runbooks covering amphora image rebuilds, amphora failover and replacement, certificate renewal, quota changes, controller restarts and backup of the Octavia database. Walk the operations team through each runbook and have them run at least one failover in a test environment. The output is a live service with a named owner and runbooks accepted by operations, plus a scheduled review tied to the OpenStack release cadence.

How TLS termination with Barbican certificates is set up

TLS termination in Octavia depends on keeping certificate material out of the load balancer configuration and in Barbican, where it is stored as a secret. A TLS listener holds a reference to that secret, not the certificate or private key itself. Before building the listener, the team should decide how the certificate, its private key and any intermediate chain will be packaged for Barbican, and confirm with the vendor documentation for their release which certificate and secret formats the TLS container accepts. Octavia's service account reads the referenced material when it configures the listener on the amphora, so the reference must resolve before the listener is created or updated.

Issuance and renewal ownership should be assigned in writing before the first listener goes live. The choice of certificate authority sets most of the renewal workload. An internal certificate authority gives the platform team control over lifetimes and automation, but the team must run the issuance and renewal pipeline itself. A corporate PKI shifts issuance to a security or infrastructure group, so the handoff for each renewal must be defined, including who places the new material into Barbican. A public CA reduces internal key management work but makes renewal dependent on the CA's tooling, billing and validation steps. Ask the certificate owner to document the renewal calendar, the approver and the notification path for each listener.

Renewal is more than issuing a new certificate. The team needs a procedure for storing the renewed material in Barbican, pointing the listener at the new reference, and confirming that the amphora serves the new certificate without dropping established connections. Confirm in your release whether a listener can be updated in place to reference a new secret, or whether recreation is required, because that changes the outage risk. Keep the previous secret available until the new listener is verified, and test the rollback path in a non-production environment. Add certificate expiry to your monitoring so that an approaching renewal is visible to the owner well before it becomes urgent.

Access policy determines which projects can read the secret references and the underlying material. Barbican secrets should be owned by the project that operates the load balancer, and read access should be granted only to the Octavia service account and to named operators with a documented need. Tenant projects should not be able to read the secret that terminates another tenant's TLS traffic. Use Keystone project and role scoping to limit who can create or read secrets, and verify the policy with a test identity from each project that should be excluded. Review secret access logs as part of routine operations, and treat any unexpected read of a private key as an incident.

The Barbican deep dive, including secret store back ends and the full access policy model, is covered in a separate module, so this section stays focused on the Octavia listener workflow. Before you commit to a design, confirm the supported certificate and secret formats for your OpenStack release, the expected behavior when a listener's secret reference changes, and how your chosen certificate authority integrates with your renewal process. Ask the implementation partner to document each of these confirmations in the design record, along with the named owner for issuance, storage, renewal and access review.

What drives Octavia implementation effort and cost

This table lists the factors that most change the effort of an Octavia rollout and shows how each one behaves over time. Read each row to see whether the cost is paid once during the build or repeats during operation, and what to ask for in a written quote. The main takeaway is that the health of Nova, Neutron, Glance and Barbican is often the largest unknown, so confirm it before scoping.

DriverWhy it moves effort or costOne-time or recurringWhat to request in a quote
Existing OpenStack servicesOctavia depends on Keystone, Nova, Neutron and Glance. Unhealthy services must be fixed before load balancer work can start.One-timeHealth assessment of each dependency and a list of remediation items in scope
Barbican for TLS certificatesTLS termination reads certificates from Barbican. If Barbican is absent, it must be deployed and secured first.One-time setup, recurring renewalsWhether Barbican deployment is included and who owns certificate renewal
Management and tenant network designA separate management network for amphorae, health monitor reachability and security group rules all need design and review.One-time design, recurring change controlNetwork diagram review, addressing plan and firewall rule ownership
Hardware and capacity planningAmphora instances consume compute, memory and network on Nova hypervisors. Sizing depends on listener count and expected throughput.One-time model, recurring as traffic growsCapacity model assumptions, growth thresholds and expansion steps
Tenant use casesHTTP, TCP, UDP and TLS passthrough each need their own listener configuration, health checks and test cases.One-time per pattern, recurring for new onboardingList of protocols and listener patterns, plus the number of tenant onboarding cycles
Kubernetes or external DNS integrationIngress controller or cloud provider integration and DNS record automation add build work and upgrade-time testing.One-time integration, recurring maintenanceNamed controllers and DNS providers, and who maintains each integration after handover
Operator team experienceTeams new to Octavia need more knowledge transfer, runbooks and supervised first operations.One-time training, recurring on-call supportTraining sessions, runbook deliverables and a supervised handover period
Number of environmentsEach environment repeats amphora image builds, flavor setup and validation, and images are rebuilt when versions change.One-time per environment, recurring on image rebuildsEnvironments in scope and whether validation is repeated in each one

How Octavia connects to Keystone, Barbican, Neutron and Kubernetes

Octavia depends on several OpenStack services, and each connection is a point where a release-specific setting can break a load balancer build. The cards below map what each service provides to Octavia and what to confirm in your release before the design is final.

Keystone for authentication and catalog

Octavia's API authenticates requests through Keystone, and clients and internal services find Octavia's endpoints through the service catalog. Confirm the Octavia endpoint entries, the service user and its roles, and the region names in your deployment, because a mismatch usually appears as failed API calls. If your directory is federated through Keystone, review the mapping rules that decide which users and groups can create and manage load balancers.

Barbican for TLS certificates

Listeners that terminate HTTPS read certificate material from Barbican secrets, so certificate storage and access policy sit directly on the load balancer path. Confirm the Barbican secret store back end your cloud uses, the Octavia service user's read access to the containers that hold certificates, and how a renewed certificate reaches existing listeners. Plan renewal before expiry, since updating a listener is a separate operation from issuing the certificate.

Neutron for tenant and management networks

Neutron provides the tenant-facing network where a load balancer's virtual IP lives, and the management network that lets Octavia controllers reach amphorae. Both networks, their subnets and their security group rules must be designed before the first load balancer is created. Confirm how the Neutron networking driver in your release handles VIP ports and failover, then test traffic from backend members back to the load balancer.

Nova for amphora compute

Each amphora runs as a Nova instance built from a flavor that Octavia uses, so Nova quotas, host placement and flavor sizing set the practical limit on how many load balancers the cloud can run. Confirm the flavor used for amphorae, whether anti-affinity is enabled so active and standby amphorae land on different hosts, and the compute quota assigned to the Octavia project. Capacity planning should count amphora instances, not only the tenant workloads they serve.

Glance images and Ceph-backed storage

Amphora instances boot from an image registered in Glance, and that image must match the Octavia release and the amphora agent it expects. Where the cloud uses Ceph, Ceph block devices can back both Glance images and Nova guest disks, so amphora boots depend on the capacity and performance of those Ceph pools. Confirm the image build and checksum process for each release, and check that Ceph is sized for the boot activity created during amphora replacement.

Kubernetes through cloud provider integration

Kubernetes clusters running on OpenStack can request Octavia load balancers through a cloud provider integration when a Service of type LoadBalancer is created, which places Octavia in the cluster's ingress path. Confirm the cloud provider integration version against your Kubernetes and OpenStack releases, along with the subnet, floating IP and provider settings it uses. This connection belongs to the OpenStack integrations group, so plan it together with the Keystone and network decisions.

How Nova, Neutron and Glance dependencies shape capacity planning

Every Octavia load balancer draws on the rest of the cloud, so capacity planning starts from its dependencies rather than from the load balancer itself. Each load balancer runs as one or more amphora, which are Nova compute instances built from an image stored in Glance. Each amphora needs a port on the tenant network where client traffic arrives and a port on the management network where the Octavia controllers reach it. Each one also needs an IP address on each network. Before you size anything, write down which networks carry this traffic, which Nova flavor the amphorae use, and which Glance image they boot from, because every later number depends on those three choices.

Demand multiplies quickly. Topology is the first multiplier: an active-standby load balancer runs two amphorae where a single-amphora load balancer runs one, so compute, ports and addresses roughly double for that listener set. The flavor is the second: a larger amphora flavor reserves more vCPU, memory and disk per instance on the hypervisors that host it. The third is the number of load balancers itself, which multiplies both. Build a table in your capacity plan with one row per load balancer class, listing the flavor, topology, expected amphora count, ports on each network and the Nova resources each amphora consumes. Then total the table against your Nova quotas for the project and domain, your Neutron quotas for ports and floating IPs, and the free capacity on the hypervisors that will host the amphorae.

Quotas and hypervisor capacity usually limit growth before the load balancer software does. A project can hit its Nova instance, core or RAM quota, or its Neutron port quota, while the cloud still has idle capacity elsewhere. Confirm the quota values with your cloud operators and decide whether amphorae live in a dedicated project with their own quota, since that separates load balancer growth from tenant growth. Also confirm how much headroom the hypervisor pool keeps for failover, because a host failure moves amphorae to other hosts and needs room there. Ask the operators to show you the scheduler behavior for the amphora flavor, including any host aggregates or anti-affinity rules you plan to use for active-standby pairs.

Storage affects two things: how fast a new amphora starts and how quickly you can replace a failed one. If Glance stores images on Ceph, image delivery to a hypervisor depends on the Ceph cluster's read performance and on the network path between them, and a Nova boot waits on that transfer. If Glance uses a different backend, measure the same path with that backend. Ceph can also back Nova guest disks, which lets amphorae boot from Ceph rather than from local hypervisor storage, but that choice moves the boot path onto the storage network and adds a dependency on Ceph availability during failover. Record the boot time you observe in a test and use it as the basis for your failover expectations rather than assuming it.

Validate every number with your own load tests before you commit hardware or quota. Run a representative amphora flavor, topology and listener mix, measure throughput, connection rate and CPU use on the amphora, and then trigger an amphora failover to time the replacement, including image fetch and boot. Repeat the test with the number of load balancers you expect at peak. The results give you the sizing inputs this page does not provide. Keep the capacity plan, the quota table and the test results together so that an upgrade of the amphora image, a new flavor or a change in Ceph configuration starts from a recorded baseline.

Can our team implement Octavia alone, and what will it cost?

Can a capable internal team implement Octavia without outside help?

Yes, a team with working OpenStack operations experience can implement Octavia alone if it has the time, access and skills to build the parts that depend on other services. Octavia relies on Nova to run amphora instances, Neutron for networking, Glance for amphora images, and Barbican when you terminate TLS. Your team needs at least one engineer who has changed each of these services in production, plus a tested plan for failover. Teams new to Octavia often find the amphora image pipeline and the certificate path the hardest parts, so a first build usually takes longer than experienced operators expect. Run a short skills review against the dependencies above before you decide.

What drives the cost of an Octavia implementation?

Scope, the number of environments, the state of your current OpenStack platform and the number of load balancing use cases needed at go-live drive most of the cost. Octavia itself is open source under the Apache License, Version 2.0, so the spend is labor, plus any capacity, hardware and certificate tooling you already pay for. Costs fall into one-time work (design, build, testing and handover) and recurring work (patching, amphora image rebuilds, upgrades and support). The effort drivers section below lists the factors in detail. When you ask for a quote, request an itemized breakdown by phase, the assumptions behind each line, and a list of what your team must provide.

How long does an Octavia implementation take?

Duration depends on the scope agreed in writing before work starts. A single-region rollout that serves a small number of TLS-terminated services takes less time than a multi-region deployment with custom health monitors and integration into existing automation. Timing also depends on how quickly your team can make network, security and certificate decisions, and on how many review cycles your change process requires. Ask any provider for a phased plan that shows dependencies, decision points and the access you must grant at each step. Treat any duration given before scope is written as an estimate to test, not a commitment.

What does our team need to provide for an Octavia engagement?

Your team provides access, decisions and an operator. The main items are:

  • Infrastructure access: credentials for the OpenStack APIs and the projects where Octavia will run, plus network access to the management network used by amphorae.
  • Network and security decisions: VIP subnets, provider or tenant network choices, security group policy and how health checks reach backend members.
  • Barbican and PKI owners: the people who approve certificate authorities, issue and rotate certificates and decide where secrets are stored.
  • An operator: a named engineer who will run the platform after handover, perform upgrades and respond to failover events.

If any of these owners is missing, the schedule usually slows because the build cannot pass its checkpoints.

Which TLS and certificate decisions are needed before configuring Octavia?

Decide the certificate authority, the issuance and renewal process, the storage location in Barbican, and the rotation schedule before you create any listener. Confirm which intermediate certificates clients need, which key types and sizes your PKI policy allows, and whether you need Server Name Indication to host several certificates on one listener. Also decide who receives renewal alerts and who approves emergency replacement. Octavia reads certificates from Barbican, so an expired or misplaced secret fails at the listener, not at the client. Check each choice against the Barbican and Octavia documentation for your release and your internal PKI policy.

What does a fixed-scope Octavia engagement include?

A fixed-scope engagement covers the work named in a written scope, with deliverables and timelines agreed before work starts. For Octavia, that typically includes a design review of networking, flavors and amphora images, a build of the amphora image and flavor configuration, load balancer configuration for the services in scope, TLS setup where required, health monitoring and failover testing, documentation and handover to your operators. Work outside the written scope needs a change agreed in writing. Ask for the exact list of services, environments and test cases so you can compare proposals on the same basis.

What does an Octavia support retainer cover after go-live?

A retainer covers ongoing support, upgrades and continuous testing on the terms agreed in writing. For Octavia, that can include rebuilding amphora images when base images or security fixes change, reviewing how Octavia and its dependencies change between OpenStack releases, planning upgrades, running failover tests and reviewing certificate rotation. The retainer scope defines response expectations, which systems are covered and what is excluded, so read those terms carefully. Ask for the list of recurring tasks, how changes are requested and how upgrade work is priced against the retainer.

How DeployOpen scopes, delivers and supports Octavia

DeployOpen plans, implements, documents and supports self-hosted open-source platforms inside your own cloud accounts, data centers or air-gapped networks. For Octavia, that means treating load balancing as a service that depends on Nova, Neutron and Glance, and agreeing the scope in writing before any build starts.

How we scope

  • Engagements are fixed-scope, with the Octavia deliverables, exclusions and acceptance criteria agreed in writing before work begins.
  • We map which listener protocols, TLS termination needs and backend pools your applications require, and which amphora flavors they imply.
  • We review the Nova, Neutron and Glance capacity and network design that Octavia's amphora instances will consume, and document the gaps to confirm.

How we build

  • We build and register the amphora image, define flavors and configure the controller network so amphorae can reach their health monitors.
  • We wire TLS termination to certificates stored in Barbican and test certificate rotation before any production listener goes live.
  • We configure health monitors, pool member checks and failover behavior, then test them against failed backend members and a failed amphora.

How we hand over

  • You receive the written build record: image build steps, flavor definitions, network layout, Barbican secret paths and monitor settings.
  • Runbooks cover creating listeners and pools, rotating certificates, replacing an amphora and checking health monitor results.
  • Your team walks through the test evidence and the capacity assumptions so operators can tell when more compute or network is needed.

How we support

  • Ongoing support, upgrades and continuous testing are available as retainers, scoped separately from the initial build.
  • Support can cover image rebuilds and Octavia changes that follow each OpenStack release, including the SLURP upgrade path your cloud follows.
  • Confirm with DeployOpen during scoping which support hours, response expectations and change processes your organization needs before signing.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.