Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

controller API gateway #23

Closed
cdupont opened this issue Oct 26, 2016 · 4 comments
Closed

controller API gateway #23

cdupont opened this issue Oct 26, 2016 · 4 comments
Assignees
Milestone

Comments

@cdupont
Copy link
Contributor

cdupont commented Oct 26, 2016

The role of the controller is to expose the external API and forward the requests to internal services.
Currently the controller is implemented as a Python program doing the translation.
However it would be simpler and more modular/future proof to implement it with an HTTP proxy like nginx or Apache tomcat.

Some links on the API gateway pattern and implementation:
http://microservices.io/patterns/apigateway.html
https://www.nginx.com/blog/building-microservices-using-an-api-gateway/

Currently the controller is also enforcing the IoT-lite format on the API, before translating the data to Orion.
This function should be moved to a separate wrapper located in the "broker" pod.

@cdupont
Copy link
Contributor Author

cdupont commented Oct 26, 2016

This pattern also would make the identification/security easier: #13
New services can be exposed in the gateway: #18

@cdupont cdupont added this to the V0.2 milestone Oct 26, 2016
@cdupont cdupont self-assigned this Oct 26, 2016
@cdupont
Copy link
Contributor Author

cdupont commented Oct 27, 2016

I created the proxy. Some quick instructions here: https://github.com/Waziup/Platform/tree/master/orchestrator/kube-system

@cdupont
Copy link
Contributor Author

cdupont commented Oct 27, 2016

Mapping proposed:

  • www.waziup.io -> platform website
  • api.waziup.io -> controller API (regroup all APIs)
  • broker.waziup.io -> orion API
  • sms.waziup.io -> sms API

See https://github.com/Waziup/Platform/tree/master/orchestrator/README.md

@cdupont
Copy link
Contributor Author

cdupont commented Nov 22, 2016

@cdupont cdupont closed this as completed Nov 22, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant