These 37 commits are when the Protocol Buffers files have changed:
| Commit: | b67500c | |
|---|---|---|
| Author: | Lugossy Zoltan | |
| Committer: | Lugossy Zoltán | |
API; New LB stream availability proto
The documentation is generated from this commit.
| Commit: | a85a73f | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
New max-targets property in stream Configmap and NSP API * Max-Targets added to the stream objects in the NSP API and configmap
| Commit: | 4b3cdb0 | |
|---|---|---|
| Author: | Lugossy Zoltan | |
| Committer: | Lugossy Zoltán | |
Add BGP Authentication to API and model
| Commit: | e2d4f8b | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
Remove previous Flow NAT implementation * Flow local-port removed from NSP API and configmap model * Load-balancer implementation removed
| Commit: | 26c3f5c | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
NAT implementation in Conduit * All traffic that belongs to the conduit and that matches the destination port nat properties will be NATted * Implementation uses the same nftables rules as the flow implementation
| Commit: | de1e7ba | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
Add Byte Matches support in Flows * Add Byte-Matches in configmap + NSP API * Support of --match with nfqlb
| Commit: | 61a7723 | |
|---|---|---|
| Author: | Lars Ekman | |
| Committer: | Lars Ekman | |
Add static port-NAT
| Commit: | d698b49 | |
|---|---|---|
| Author: | Lionel Jouin | |
NSP API Update function removed This function was doing the same things as the Register one, and was no longer used.
| Commit: | 44f1b0b | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
Refactoring * New Stream manager - Add (Create the stream) / Remove Stream - Can Open/Close all streams - Retry to Open - Check stream availability in the trench - Manage the stream status * Configuration watcher re-worked - Watch vips + streams - New Interface (Watch/Stop) * Registry re-worked - Only Set status (add if non-existing) and remove * Add comments and new unit tests
| Commit: | 49494fa | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
New Stream message in TAPA * nspAPI.Stream set to ambassadorAPI.Stream in: - /api/ambassador - /pkg/ambassador
| Commit: | bd0619a | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
New TAP API implementation * 3 functions to control the streams - Open (Stream) - Close (Stream) - Watch (Stream) * Open and Close are less blocking then before, the connection to the NSP Service, request of the NSM connection, and registration of the target are now hidden for the user and done in background (goroutines) * Some new tests have been added but the coverage is not yet 100% * Watch Allows the user to check the status of each stream (open, pending, unavailable, undefined) * Makefile updated with mock and coverage
| Commit: | b5eb577 | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
Target (cmd, api, build, pkg) renamed to TAP/TAPA - cmd/tapa - pkg/ambassador/tap - api/ambassador - target example tapa container
| Commit: | be61b1a | |
|---|---|---|
| Author: | Lionel | |
| Committer: | Lionel | |
Improved IPAM The IPAM knows about the trench, conduits, nodes, and prefixes allocated on each links. IPAM API modified to allocate/release prefixes based on the conduit, IP family and node used. Each proxy can now remember the subnets they are using and IPs since all data is stored in the IPAM Store (SQLite).
| Commit: | a2a32d2 | |
|---|---|---|
| Author: | Lugossy Zoltan | |
| Committer: | zolug | |
FE; parse and apply BFD attributes -Min tx/rx intervals and multiplier are fetched from the config generated by the Operator (as part of the gateway settings) -Requires at least BIRD 2.0.8 -BGP: BFD options are set per peer i.e. per gateway -Static+BFD: due to limitations in BIRD they are applied per external interface (meaning only 1 BFD configuration can take effect per Frontend) -BFD session state of peer IP is ignored for Static protocol if BFD is not configured -alpine:edge base image
| Commit: | 46001e3 | |
|---|---|---|
| Author: | Lionel | |
Priority changed to int32 and added to the configuration API
| Commit: | 53ec578 | |
|---|---|---|
| Author: | Lionel | |
| Committer: | Lionel | |
New ambassador API Add versioning on ambassador API Request renamed to Open Remove state based event
| Commit: | e920742 | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel | |
Target Registry service in NSP The old NSP service is now replace with this new target registry service providing 4 functions: Register, Unregister, Update and Watch. The usage of the NSP Service has been adapted few components (target, LB, frontend). todo: - replace the route checker for the pending targets in the stream (pkg/loadbalancer/stream/loadbalancer.go) - refactoring and testing
| Commit: | 52b06de | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
Stream support Stream name in the NSP target - Each target register to a specific stream - The LB add the target to the specific stream (lb instance) Stream name in the ambassador API - The application is now specifying the trench + Conduit + Stream on a request/close call New interfaces in the loadbalancer pkg NFQLB Updated to 0.4.0 Usage of --shm argument in nfqlb to run multiple lb instances
| Commit: | a759d06 | |
|---|---|---|
| Author: | Lionel Jouin | |
NSP API Versioning A new v1 sub-directory in the api/nsp one to handle the future versions on the NSP API. nsp pkg modified as v1
| Commit: | f819107 | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
Configuration manager on NSP service - The configmap watcher has been re-implemented (pkg/monitor). - The configmap Unmarshal functions and models has been updated with all resources and moved from the operator repository to this one (pkg/reader). - A memory registry has been implemented (pkg/registry). - The configuration manager API has been implemented (pkg/manager). When the configmap watcher/monitor will receive any event about the changes from the kubernetes API, each yaml files contained in the configmap will be unmarshalled and then converted and linked together (e.g.: conduits referring to the trench...) with the nsp API types. All resources will be registered in the configuration registry. On any changes in the registry, an event is sent via the channel with the type of resource modified. The registry also offers the possibility to get any resource by filtering them with their parents and/or name, so the manager server can return only the desired resources to the clients.
| Commit: | 9180d89 | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
Identifier collision fix with registration process Adding a new status to the target gives the possibility to have an extra step in the target registration process. A target can, first, register itself as 'disabled' to the NSP Service, then fetch the targets, and verify if there is a collision with its identifier or not. If there is, the target will generate a new identifier and update its registration to the NSP service. If there is no collision, the target will update its status to 'enabled' to the NSP service. The load-balancer will configure only the targets which are enabled, the other ones will be ignored or removed if they were existing in the LB. New defined interface for the Trench, Conduit and Stream (Separation in different packages) Add golang/mock dependency mock nspAPI, conduit and trench to test the stream Add '-race' and '-cover' to the make test command
| Commit: | 5ca4096 | |
|---|---|---|
| Author: | Lugossy Zoltan | |
| Committer: | Lugossy Zoltan | |
nsp; enum Target Type
| Commit: | 3e9e53e | |
|---|---|---|
| Author: | Lugossy Zoltan | |
| Committer: | Lugossy Zoltan | |
nsp; support different entry types Besides legacy Targets other type of "Target" entries can be added as well. (Different types won't interfere.)
| Commit: | 4bf50b0 | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
Ambassador API documentation
| Commit: | d5e6d2b | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
watch conduits and streams using target ambassadator API New functions on the target ambassador to watch and receive event of conduits (on Connect/Disconnect) and streams (on Request/Close)
| Commit: | b580acd | |
|---|---|---|
| Author: | Lionel Jouin | |
Copyright header
| Commit: | b502ab3 | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
Remove trench namespace selection on target ambassador
| Commit: | 95745e7 | |
|---|---|---|
| Author: | Lionel Jouin | |
| Committer: | Lionel Jouin | |
multi-trenches in one namespace support
| Commit: | 3d21af9 | |
|---|---|---|
| Author: | Lionel Jouin | |
Target ambassador: conduit and stream separation
| Commit: | e4d8dee | |
|---|---|---|
| Author: | Lionel Jouin | |
List target connections
| Commit: | 908f8dc | |
|---|---|---|
| Author: | Lionel Jouin | |
Target ambassador API
| Commit: | 2d43384 | |
|---|---|---|
| Author: | Lionel Jouin | |
Dualstack support
| Commit: | ba51e6d | |
|---|---|---|
| Author: | Lionel Jouin | |
NSP API proto specification file
| Commit: | e377a27 | |
|---|---|---|
| Author: | Lionel Jouin | |
go module rename Meridio
| Commit: | cce743a | |
|---|---|---|
| Author: | Lionel Jouin | |
Ipam naming
| Commit: | b46c0e4 | |
|---|---|---|
| Author: | Lionel Jouin | |
IPAM service implementation
| Commit: | f8076aa | |
|---|---|---|
| Author: | Lionel Jouin | |
IPAM service API specification (proto)