-
Notifications
You must be signed in to change notification settings - Fork 5
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
Application endpoint discovery #40
Comments
@gunjald can you provide more details on what you mean by this? I watched the recording of Wednesday's call and didn't understand what you meant. It wasn't clear to me who needs to know this information and what they would do with it. For example:
|
My comment was mainly for the two points and one of them you captured already while other are also valid but we have not defined use cases for them so far as I understand. The two points would be then,
In general there would be endpoints for different reasons that one or other clients in industrial environment will use to connect with the edge applications and it could be a FQDN (DNS name of the application) representing the edge application endpoint but how this FQDN is generated/managed and resolved by those clients who needs it? And if there are other means than DNS which could be evaluated for this purpose? |
The application vendor's end-user documentation should provide information about accessing any UIs and APIs in the deployed application. Of course, how the application exposes these is not so straightforward under Margo. For Kubernetes, I'm aware of the following ways to expose UIs and APIs:
For Docker Compose, I'm aware of the following ways to expose UIs and APIs:
Margo complicates this because the application vendors don't know what else is being deployed onto the device:
|
Hi Phil, You have captured the different points very well and I think that has another dimension where I was focusing on that is for example if a port has been exposed by the application via a load balancer on its IP address and that port may not be for application vendor but for the other devices or external applications in that environment who may want to connect with that application. And those external application should have a way to discover which edge application they want to connect with and what is the end point of the edge application(defined in Margo.yaml). WOS may not may what port has been defined within Helm chart or compose file that should be exposed for such purposes and similarly the external applications doesnt know where to connect with margo edge application instance. Hypothetically, if WOS would have been aware of a port that a given edge application (A helm chart in Margo.yaml) wanted to expose, it may have created an entry to a DNS server e.g. "margo-test-app.enterprisexxx.com" pointing to the load balancer IP and port. So the external applications may have just use the "margo-test-app.enterprisexxx.com" to connect with the margo edge application. I would treat such procedures as discovery for the sake of explanation. But so far any margo application specific information about the application endpoint seems to be contained within the artefacts like Helm charts or compose files and only known to application vendor. But then finally once they are deployed on Margo compatible devices they still need to be discoverable by other consumer application outside of margo devices in my opinion. |
I think we can split this into two areas:
|
How to inform about exposed app endpoints?
How do I query the application?
The text was updated successfully, but these errors were encountered: