Note
|
This document is under development |
-
Regional Scope, AZ resilience
-
Simple network resource abstraction
-
Loosely coupled components for flexible partitioning and easy scale out
-
Top-down configuration driving towards eventual consistency
-
Decoupling among services
-
Database access only through service
-
Isolation of database access and cache on the service level
-
Enable flexible partitioning for various services
-
-
One controller instance is one Kubernetes application
-
One microservice is one Kubernetes service
-
One microservice could consist of multiple service instances (stateless or stateful) to improve availability, scalability and performance
Category | Micro-service Name | Acronym | Description | Type |
---|---|---|---|---|
VPM |
VPC lifecycle management |
Stateless |
||
SNM |
Subnet lifecycle management |
Stateless |
||
Port Manager |
PM |
Port lifecycle management |
Stateless |
|
Route Manager |
RM |
Route table and rule management |
Stateless |
|
PIM |
VPC private IP lifecycle management (IPv4/6) |
Stateless |
||
VMM |
Virtual MAC pool management |
Stateless |
||
Security Group Manager |
SGM |
Security group management |
Stateless |
|
Virtual IP Manager |
VIM |
Public virtual IP management |
Stateless |
|
DNS Manager |
DM |
DNS/DHCP record management |
Stateless |
|
NMM |
Datacenter metadata management for physical nodes/machines |
Stateless |
||
Database services to store resource states |
Stateful |
|||
Infrastructure Services |
DPM |
Responsible of sending network configuration to nodes |
Stateless |
|
NHM |
Physical nodes/machines management for control plane, including in/out of services, health status maint |
Stateless |
||
Gateway Manager |
GM |
Responsible of managing gateway |
Stateless |
|
Resource Pre-provisioning Manager |
RPM |
TBD |
Stateless |
|
Messaging Services |
API Gateway |
GW |
Responsible of request routing, composition, and protocol translation |
Stateless |
MQ |
Messaging services for controller and agent communication |
Stateful/Stateless |
Four types of concurrent network resource update:
Concurrent Event Types | Example | Approach |
---|---|---|
Operation on decoupled resources |
CURD of resources under two different/unpeered VPCs |
Free to update simultaneously |
Operation on loosely relevant resources |
Add one port, and delete the other in the same subnet |
|
Operation on directly coupled resources |
Delete a VPC and create a subnet for an empty VPC |
|
Operation on the same resource |
Update operation and delete operation on the same port |
|