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

design new external service resource #6330

Closed
lahabana opened this issue Mar 22, 2023 · 5 comments
Closed

design new external service resource #6330

lahabana opened this issue Mar 22, 2023 · 5 comments
Labels
kind/design Design doc or related kind/feature New feature triage/accepted The issue was reviewed and is complete enough to start working on it
Milestone

Comments

@lahabana
Copy link
Contributor

lahabana commented Mar 22, 2023

Description

For #1496 we need to move external service to be namespace based. It's a good time to rethink this resource and improve it.

Rough design from a thinking session:

type: externalService
metadata:
  namespace: kuma-system
  name: my-service
spec:
  hostname: my-service.foo.bar
  kuma.io/service: my-service
  protocol: http
  port: 443
  instances:
     - address: east-1
       port: 334
       tags:
          region: east-1
       tls:
         enabled: true
     - address: west-1
       port: 335
       tags:
          region: west-1

Each instance of a resource is an envoy cluster.
Is each instance inside the resource a different envoy endpoint? If yes can we have different TLS config for example (seems like it)?

Should we disallow having an internal and an external service with the same name? --> Probably

There are a few issues around ES that we should take into consideration for this:

@lahabana lahabana added triage/pending This issue will be looked at on the next triage meeting kind/feature New feature kind/design Design doc or related labels Mar 22, 2023
@jakubdyszkiewicz jakubdyszkiewicz added triage/accepted The issue was reviewed and is complete enough to start working on it and removed triage/pending This issue will be looked at on the next triage meeting labels Apr 3, 2023
@lahabana
Copy link
Contributor Author

Think about this in the context of a lambda as well

@jakubdyszkiewicz
Copy link
Contributor

Take into account this issue when redesigning kumahq/kuma-gui#1529

@slonka
Copy link
Contributor

slonka commented Apr 22, 2024

Think about this in the context of a lambda as well

do you mean consuming in Kuma a lambda exposed by a AWS API gateway? if so then what specific things do we need to worry about? If I'm reading things right lambdas just get a domain like r275xc9bmd.execute-api.us-east-1.amazonaws.com so they should be just like any other ES.

Take into account this issue when redesigning kumahq/kuma-gui#1529

the problem here is that we're getting multiple externalservices pointing to the same domain or is it something else? I think I found the original issue, it's probably about using https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/aws_lambda_filter

@bartsmykla
Copy link
Contributor

xref: #4758

@lahabana
Copy link
Contributor Author

lahabana commented Jun 3, 2024

Design is done #10238 and #10300 start tracking the actual implem

@lahabana lahabana closed this as completed Jun 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/design Design doc or related kind/feature New feature triage/accepted The issue was reviewed and is complete enough to start working on it
Projects
None yet
Development

No branches or pull requests

4 participants