-
Notifications
You must be signed in to change notification settings - Fork 277
Support capability to incrementally migrate legacy services to a service mesh #2172
Comments
This will be supported after #2096 is implemented
This can be achieved using #1001
We do not plan to support multiple outbound listeners at this moment. We are using filter chains per IP range. It seems as though you would like an additional filter_chain matching pod IPs.
destination port based filter chain matching is already supported now. |
Yes, saw your reply in another issue.
ok
I mean to add one more filter chain instead of outbound listener.
Yes, found it in commit days before. Great job. |
@addozhang for the service specific filter chain, refer to: Line 254 in d05ceb2
I am wondering why do you need the pod CIDR. OSM requires destination to always be a service fronting the pods. What is the use case to access pods directly without using k8s Service? |
@shashankram currently, our system are running Spring Cloud on Openshift. The service discovery is Netfilx Erueka which maintaining service instance with ip and port. In our case, the ip is the one of pod. So we need a filter chain with pod cidr to match pod ip traffic to handle in mesh. I think this is common case for micro service implemented with spring cloud. |
I see, so client app is using Netflix Eureka for service discovery and directly making API requests to the pod ip:port instead of Kubernetes service name? |
Yes, correct. This is why I am following to latest code find a solution. I think we can also abandon Netfilx Eureka gradually by using osm-controller and envoy to delegate discovery. One all service migrated to mesh, we will abandon eureka with upgrading our SDK. But before that, we need the migration smoothly, and really hope osm can help us. :) . As I know, a lot of companies are facing same issue. Because we had same technology roadmap: Monolithic, MicroSerivice, Kubernetes, and now is mesh. |
I understand your use case for pod IP based routing better now. We will discuss this as a part of our next milestone. Note that currently OSM's design requires destination to be services. To be able to support IP based destinations, we need to think through the design and architecture before making changes to the code. |
@shashankram Thanks. |
This issue will be closed due to a long period of inactivity. If you would like this issue to remain open then please comment or update. |
Issue closed due to inactivity. |
Please describe the Improvement and/or Feature Request
This is supplied description of #2012 .
As described before, we are working Spring Cloud on Kubernetes migrating to mesh, and expect it as smooth as possible, such as starting with part of services via adding injection annotation to them and make all namespaces monitored by osm.
Currently the service communicating with each other is via
ip:port
and same inHOST
header. We can upgrade our SDK to inject real service name (foo) to header. But this is not mandatory sdk upgrade to develop team.I think this is very common for migration on an existing system.
Above all, there will be many cases existing during migration:
To support all case working, we need some feature:
Related issues:
#2986
Scope (please mark with X where applicable)
Possible use cases
The text was updated successfully, but these errors were encountered: