Add project Tricircle to OpenStack big-tent
Following the directive http://governance.openstack.org/reference/new-projects-requirements.html OpenStack Mission Alignment: The purpose of the Tricircle project is to provide networking automation across Neutron in multi-region OpenStack clouds deployment. Use cases for the Tricircle is described in the wiki[1] adn material for big-tent application[2]. Each OpenStack cloud includes its own Nova, Cinder and Neutron, the Neutron servers in these OpenStack clouds are called local Neuron servers, all these local Neutron servers will be configured with the Tricircle Local Neutron Plugin. A seperate Neutron server will be installed and run standalone as the coordinator of networking automation across local Neutron servers, this Neutron server will be configured with the Tricircle Central Neutron Plugin, and is called central Neutron server. Leverage the Tricircle Central Neutron Plugin and the Tricircle Local Neutron Plugin configured in these Neutron servers, the Tricircle can ensure the IP address pool, IP/MAC address allocation and network segment allocation being managed globally without conflict, and the Tricircle handles tenant oriented data link layer(Layer2) or network layer(Layer3) networking automation across local Neutron servers, resources like VMs, bare metal or containers of the tenant can communicate with each other via Layer2 or Layer3, no matter in which OpenStack cloud these resources are running on. Note: There are some our own definitions of Layer2/Layer3 networking across Neutron. To make sure what they are, please read our design documentation, especially "6.5 L2 Networking across Neutron"[3]. The Tricircle and multi-region OpenStack clouds will use shared KeyStone(with centralized or distributed deployment) or federated KeyStones. The Tricircle is composed of the followings: 1)Tricircle Local Neutron Plugin It runs under local Neutron server in the same process like OVN/Dragonflow Neutron plugin, it is a shim layer between real core plugin and Neutron server The Tricircle Local Neutron Plugin serve for cross Neutron networking automation triggering. 2)Tricircle Central Neutron Plugin It runs under central Neutron server in the same process like OVN/Dragonflow Neutron plugin. The Tricircle Central Neutron Plugin serve for tenant level L2/L3 networking automation across multi-OpenStack instances. 3)Admin API A web service introduced by the Tricircle to manage the mappings between OpenStack instances and availability zone which is used for availability zone hint parameter during network creation in central Neutron. Retrieve object uuid routing. Expose RESTful API for maintenance purpose. Running together with central Neutron Server. 4)XJob Receive and handle cross Neutron networking functionalities and other async jobs from Admin API or the Tricircle Central Neutron Plugin through message bus. For example, an async. job to configure the extra route in different local Neutron servers for L3 networking. 5)Database The Tricircle has its own database to store jobs, resource routing tables for the Tricircle Central Neutron plugin, Admin API and XJob. The Tricircle Neutron Central Plugin will also reuse database of central Neutron server to do the global management of tenant's resources like IP/MAC/network/router. The Tricircle Local Neutron Plugin is a shim layer between real core plugin and Neutron server, so Neutron database will be still there for local Neutron server and real core plugin. Following the 4 opens: Open Source: - The Tricircle is 100% open source under an Apache 2.0 license[4], everything from implementation to design to future features and roadmap are happening and shared openly and presented in various meet-ups and documents. - The Tricircle has no library dependencies which effectively restrict how the project may be distributed or deployed. Oslo libraries are used by all components where applicable. Open Community: - The leadership is chosen by the contributors to the project[5][6][7]. - We are working closely with the community to share use cases and problems and decide on future priorities for the project. It is our mission to collaborate with as many members/companies in the community as possible and we welcome any feedback and any desire to help us shape the Tricircle's future. This is done using the mailing list, etherpad, IRC, weekly meetings, patches, and OpenStack summit sessions[8][9][10][11][12][13][14]. - Contributors of the Tricircle comes from different companies and universities[15][16][17][18][19][20], some of them are working as independent contributors. Open Development: - All the Tricircle code is being code reviewed in OpenStack Gerrit[21]. - The Tricircle has a core team which openly discuss all issues[21][22]. - The Tricircle support gate tests which run unit tests and fullstack tests[23][24]. - The Tricircle collaborates other projects such as Neutron and L2GW to try and find optimal cross OpenStack L2 networking solutions[8]. - The Tricircle collobarates with Neutron via its plugin mechanism to do the cross OpenStack networking automation. - Bugs are managed by OpenStack launchpad[25]. Open Design: - All designs and specs of the Tricircle are published for review and managed in OpenStack launchpad[26][27]. - The Tricircle conducts a weekly IRC meeting to discuss all designs and future roadmap[10]. - The Tricircle repository offers documentation and diagrams to explain the current design, code and future roadmap[4]. - Everything is discussed openly either on the review board, the Tricircle IRC channel, or the ML, or Google doc[2][3], or etherpad[28][29]. [1] https://wiki.openstack.org/wiki/Tricircle#Use_Cases [2] https://docs.google.com/presentation/d/1Zkoi4vMOGN713Vv_YO0GP6YLyjLpQ7fRbHlirpq6ZK4/edit?usp=sharing [3] https://docs.google.com/document/d/1zcxwl8xMEpxVCqLTce2-dUOtB-ObmzJTbV1uSQ6qTsY/ [4] https://github.com/openstack/tricircle [5] http://lists.openstack.org/pipermail/openstack-dev/2016-May/094019.html [6] http://lists.openstack.org/pipermail/openstack-dev/2016-May/095317.html [7] http://lists.openstack.org/pipermail/openstack-dev/2016-September/103925.html [8] https://review.openstack.org/#/c/282180/ [9] http://eavesdrop.openstack.org/meetings/tricircle/ [10] https://wiki.openstack.org/wiki/Meetings/Tricircle [11] https://wiki.openstack.org/wiki/Meetings/Tricircle#Announcements [12] https://www.openstack.org/summit/austin-2016/summit-schedule/events/7480 [13] https://www.openstack.org/summit/austin-2016/summit-schedule/events/9533 [14] https://www.openstack.org/summit/barcelona-2016/summit-schedule/global-search?t=Tricircle%3A [15] http://stackalytics.com/?project_type=openstack-others&module=tricircle&metric=marks&release=newton [16] http://stackalytics.com/?project_type=openstack-others&module=tricircle&metric=patches&release=newton [17] http://stackalytics.com/?project_type=openstack-others&module=tricircle&metric=loc&release=newton [18] http://stackalytics.com/?project_type=openstack-others&module=tricircle [19] http://stackalytics.com/?project_type=openstack-others&module=tricircle&metric=patches [20] http://stackalytics.com/?project_type=openstack-others&module=tricircle&metric=loc [21] https://review.openstack.org/#/q/project:openstack/tricircle [22] https://review.openstack.org/#/admin/groups/441,members [23] https://github.com/openstack-infra/project-config/search?utf8=%E2%9C%93&q=tricircle [24] https://review.openstack.org/#/c/375976/ [25] https://bugs.launchpad.net/tricircle [26] https://blueprints.launchpad.net/tricircle/+specs?show=all [27] https://github.com/openstack/tricircle/tree/master/specs [28] https://etherpad.openstack.org/p/TricircleCrossPodL2Networking [29] https://etherpad.openstack.org/p/TricircleSplitting Change-Id: I44f0d614dae81004ca31250461b9d4dbe865a13a
This commit is contained in:
parent
f514a93082
commit
342ff2010c
@ -6434,6 +6434,25 @@ Telemetry:
|
||||
- type:library
|
||||
- release:independent
|
||||
|
||||
tricircle:
|
||||
ptl:
|
||||
name: Chaoyi Huang
|
||||
irc: joehuang
|
||||
email: joehuang@huawei.com
|
||||
irc-channel: openstack-tricircle
|
||||
service: Networking automation across Neutron service
|
||||
mission: >
|
||||
To provide networking automation across Neutron in multi-region OpenStack
|
||||
clouds deployment.
|
||||
url: https://wiki.openstack.org/wiki/Tricircle
|
||||
deliverables:
|
||||
tricircle:
|
||||
repos:
|
||||
- openstack/tricircle
|
||||
tags:
|
||||
- release:cycle-with-intermediary
|
||||
- type:service
|
||||
|
||||
tripleo:
|
||||
ptl:
|
||||
name: Emilien Macchi
|
||||
|
Loading…
x
Reference in New Issue
Block a user