00c17b368f
This patch adds two new tripleo services that together support
deploying the glance-api service at edge sites. The service uses the
same glance database in the control plane, but allows other edge
services (e.g. cinder and nova) to access a glance endpoint that is
local to the edge site.
A new GlanceApiEdge service is a minor variant of the GlanceApi
service. The most significant change is it doesn't use the control
plane VIP, but instead configures cinder and nova services to access
the glance-api endpoint running on that edge node (not the VIP).
A companion HAproxyEdge service supports scaling out DCN sites with
larger (>3) number of nodes. Instead of deploying GlanceApiEdge on
every node, the HAproxyEdge service configures a local haproxy to
forward glance-api requests to the edge nodes running GlanceApiEdge.
The HAproxyEdge is extensible. While this patch is only concerned
with proxying glance-api, it can be extended to support additional
proxy requirements as needs arise.
blueprint: split-controlplane-glance-cache
Change-Id: Id6c416b8c7b3b6314d935e3eeb8a3f114492cecd
Depends-On: Ic8d652a5209219c96f795a8c18ceb457c6d9382a
(cherry picked from commit 30ca49bf61
)
51 lines
2.2 KiB
YAML
51 lines
2.2 KiB
YAML
environments:
|
|
- name: dcn
|
|
title: Distributed Compute Node
|
|
description: |-
|
|
Environment file for deploying a remote site of distributed compute nodes
|
|
(DCN) in a separate stack (multi-stack) deployment.
|
|
files: &dcn_files
|
|
deployment/glance/glance-api-container-puppet.yaml:
|
|
parameters:
|
|
- GlanceCacheEnabled
|
|
- GlanceImageCacheMaxSize
|
|
deployment/nova/nova-az-config.yaml:
|
|
parameters:
|
|
- NovaComputeAvailabilityZone
|
|
network/external.yaml:
|
|
parameters:
|
|
- ManageNetworks
|
|
sample_values: &sample_values
|
|
ManageNetworks: false
|
|
resource_registry: &dcn_resource_registry
|
|
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/noop.yaml
|
|
OS::TripleO::Network::Ports::OVNDBsVipPort: ../network/ports/noop.yaml
|
|
OS::TripleO::Services::GlanceApiEdge: ../deployment/glance/glance-api-edge-container-puppet.yaml
|
|
OS::TripleO::Services::HAproxyEdge: ../deployment/haproxy/haproxy-edge-container-puppet.yaml
|
|
OS::TripleO::Services::NovaAZConfig: ../deployment/nova/nova-az-config.yaml
|
|
children:
|
|
- name: dcn-hci
|
|
title: Distributed Compute Node HCI
|
|
description: |-
|
|
Environment file for deploying a remote site of HCI distributed compute
|
|
nodes (DCN) in a separate stack (multi-stack) deployment. It should be
|
|
used in combination with environments/ceph-ansible/ceph-ansible.yaml.
|
|
files:
|
|
<<: *dcn_files
|
|
deployment/cinder/cinder-base.yaml:
|
|
parameters:
|
|
- CinderStorageAvailabilityZone
|
|
deployment/cinder/cinder-volume-container-puppet.yaml:
|
|
parameters:
|
|
- CinderVolumeCluster
|
|
- CinderEtcdLocalConnect
|
|
sample_values:
|
|
<<: *sample_values
|
|
CinderStorageAvailabilityZone: dcn
|
|
CinderVolumeCluster: dcn
|
|
CinderEtcdLocalConnect: True
|
|
resource_registry:
|
|
<<: *dcn_resource_registry
|
|
OS::TripleO::Services::Etcd: ../../deployment/etcd/etcd-container-puppet.yaml
|
|
OS::TripleO::Services::CinderVolume: ../deployment/cinder/cinder-volume-container-puppet.yaml
|