summaryrefslogtreecommitdiffstats
path: root/docs/requirements/multisite-centralized-service.rst
blob: 5dbbfc8f642388d68e21acf0374670d4ea219d14 (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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0

==============================
 Multisite centralized service
==============================


Problem description
===================

Abstract
--------

a user should have one centralized service for resources management and/or
replication(sync tenant resources like images, ssh-keys, etc) across multiple
OpenStack clouds.

Description
------------

For multisite management use cases, some common requirements in term of
centralized or shared services over the multiple openstack instances could
be summarized here.

A user should be able to manage all their virtual resouces from one
centralized management interface, at least to have a summarized view of
the total resource capacity and the live utilization of their virtual
resources, for example:

- Centralized Quota Management
  Currently all quotas are set for each region separataly. And different
  services (Nova, Cinder, Neutron, Glance, ...) have different quota to
  be set. The requirement is to provide global view for quota per tenant
  across multiple regions, and soft/hard quotas based on current usage for
  all regions for this tenant.

- A service to clone ssh keys across regions
  A user may upload keypair to access the VMs allocated for her. But if her
  VMs are spread in multiple regions, the user has to upload the keypair
  seperatly to different region. Need a service to clone the SSH key to
  desired OpenStack clouds.

- A service to sync images across regions
  In multi-site scenario, a user has to upload image seperatly to different
  region. There can be 4 cases need to be considered:
      No image sync
      Auto-sync of images
      Lazy sync - clone the requested image on demand.
      Controlled sync, where you can control propagation and rollback if
      problems.

- Global view for tenant level IP address / mac address space management
  If a tenant has networks in multiple region, and these networks are routable
  (for example, connected with VPN), then, IP address may be duplicated. Need
  a global view for IP address space management.
  If IP v4 used, this issue needs to be considered. For IPv6, it should als
  be managed. This requirement is important not only just for prevention of
  duplicate address.
  For security and other reasons it's important to know which IP Addresses
  (IPv4 and IPv6) are used in which region.
  Need to extend such requirement to floating and public IP Addresses.

- A service to clone security groups across regions
  No appropriate service to security groups across multiple region if the
  tenant has resources distributed, has to set the security groups in
  different region manually.

- A user should be able to access all the logs and indicators produced by
  multiple openstack instances, in a centralized way.

Requirement analysis
====================

All problems me here are not covered by existing projects in OpenStack.

Candidate solution analysis
---------------------------

- Kingbird[1][2]
  Kingbird is an centralized OpenStack service that provides resource
  operation and management across multiple OpenStack instances in a
  multi-region OpenStack deployment. Kingbird provides features like
  centralized quota management, centralized view for distributed virtual
  resources, synchronisation of ssh keys, images, flavors etc. across regions.

- Tricircle[3][4]
  Tricricle is to provide networking automation across Neutron in multi-region
  OpenStack deployments. Tricircle can address the challenges mentioned here:
  Tenant level IP/mac addresses management to avoid conflict across OpenStack
  clouds, global L2 network segement management and cross OpenStack L2
  networking, and make security group being sync-ed across OpenStack clouds.


Affected By
-----------
  OPNFV multisite cloud.

Conclusion
----------
  Kingbird and Tricircle are candidate solutions for these centralized
  services in OpenStack multi-region clouds.

References
==========
[1] Kingbird repository: https://github.com/openstack/kingbird
[2] Kingbird launchpad: https://launchpad.net/kingbird
[3] Tricricle wiki: https://wiki.openstack.org/wiki/Tricircle
[4] Tricircle repository: https://github.com/openstack/tricircle/