Skip to content
This repository was archived by the owner on Nov 5, 2020. It is now read-only.

Commit 6063d0f

Browse files
committed
Add LICENSE and update README
Signed-off-by: Alex Ellis <[email protected]>
1 parent d7a45a6 commit 6063d0f

File tree

2 files changed

+64
-0
lines changed

2 files changed

+64
-0
lines changed

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2019 OpenFaaS Author(s)
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,57 @@
1+
faas-federation
2+
-----
3+
4+
faas-federation is an implementation of the [faas-provider](https://github.com/openfaas/faas-provider) which can be used to unify one or more OpenFaaS clusters under a single API.
5+
6+
## Why do we need this?
7+
8+
This project exists to join together two or more distinct OpenFaaS clusters.
9+
10+
* Multi-region - east/west
11+
12+
Get a single API / control-plane for one or more clusters split by location, such as east/west.
13+
14+
* Edge locations
15+
16+
You may have one or more edge locations (or even ARM/IoT OpenFaaS installations). You can join them together under a single set of credentials and control plane.
17+
18+
* Varying provider types
19+
20+
You can connect two or more different OpenFaaS provider types together. For instance: Kubernetes (faas-netes) and Lambda (faas-lambda). This means you can have a single, centralized control-plane but deploy to both AWS Lambda and Kubernetes at the same time.
21+
22+
## Getting started
23+
24+
`faas-federation` can replace your provider in your existing OpenFaaS deployment.
25+
26+
More coming soon.
27+
28+
### Example
29+
30+
Coming soon: deploy OpenFaaS with two separate [`faas-memory`](https://github.com/openfaas-incubator/faas-memory) providers.
31+
32+
### helm chart
33+
34+
See also: example of Kubernetes and AWS Lambda federated configuration in the sample [helm chart](deployment/chart/of-federation).
35+
136
## Constraints
37+
238
| Annotation | Description |
339
| ----|----|
440
| federation.provider_name | route the request based on the provider name i.e. `kubernetes`, `swarm` |
541

642
## Configuration
43+
744
All configuration is managed using environment variables
845

946
| Option | Usage | Default | Required |
1047
|-----------------------------------|------------------------------------------------------------------------------------------------|--------------------------|----------|
1148
| `providers` | comma separated list of provider URLs i.e. `http://faas-netes:8080,http://faas-lambda:8080` | - | yes |
1249
| `default_provider` | default provider URLs used when no deployment constraints are matched i.e. `http://faas-netes:8080` | - | yes |
1350

51+
## Acknowledgements
52+
53+
Idea by Alex Ellis and Edward Wilde.
54+
55+
## License
1456

57+
MIT

0 commit comments

Comments
 (0)