-
Notifications
You must be signed in to change notification settings - Fork 2.8k
chore(source/istio): replace kube API calls with caching and ingress informers #5743
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
chore(source/istio): replace kube API calls with caching and ingress informers #5743
Conversation
Signed-off-by: ivan katliarchuk <[email protected]>
Signed-off-by: ivan katliarchuk <[email protected]>
Signed-off-by: ivan katliarchuk <[email protected]>
Signed-off-by: ivan katliarchuk <[email protected]>
docs/annotations/annotations.md
Outdated
This is a common setup in modern cloud environments, like on GCP's Service Mesh, where a Kubernetes Ingress directs all public traffic to the Istio Gateway. | ||
|
||
Is used to address a specific architectural pattern: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a common setup in modern cloud environments, like on GCP's Service Mesh, where a Kubernetes Ingress directs all public traffic to the Istio Gateway. | |
Is used to address a specific architectural pattern: | |
It can be used to address a specific architectural pattern, when a Kubernetes Ingress directs all public traffic to the Istio Gateway: |
@ivankatliarchuk the Helm test changes look good, if you want to add them to a seperate PR I'm happy to approve them and reduce the size of this PR? RE the duplicate calls were you thinking of adding something like a singleflight wrapper? |
Signed-off-by: ivan katliarchuk <[email protected]>
Moved helm tests to a separate PR |
source/annotations/annotations.go
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like a new annotation to me, a new feature, not directly related a "replace kube API calls with caching and ingress informers".
Wdyt of moving the code and documentation of this new feature into a separate PR ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will do. This is not a new annotations, it was added here #3842
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
moved out documentation
Signed-off-by: ivan katliarchuk <[email protected]>
c6979ad
to
6050a1c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: mloiseleur The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
…informers (kubernetes-sigs#5743) * chore(source/istio): ingress to use informers instead of kube API calls Signed-off-by: ivan katliarchuk <[email protected]> * chore(source/istio): ingress to use informers instead of kube API calls Signed-off-by: ivan katliarchuk <[email protected]> * chore(source/istio): ingress to use informers instead of kube API calls Signed-off-by: ivan katliarchuk <[email protected]> * chore(source/istio): ingress to use informers instead of kube API calls Signed-off-by: ivan katliarchuk <[email protected]> * chore(source/istio): ingress to use informers instead of kube API calls Signed-off-by: ivan katliarchuk <[email protected]> * chore(source/istio): ingress to use informers instead of kube API calls Signed-off-by: ivan katliarchuk <[email protected]> --------- Signed-off-by: ivan katliarchuk <[email protected]>
What does it do ?
istio gateway
to fetchingress
objects, use informers with cachingfollow-up:
--istio-gateway
and--istio-virtualservice
, we fetching same endpoints twice hereexternal-dns/source/istio_gateway.go
Line 229 in b31afb4
external-dns/source/istio_virtualservice.go
Line 410 in b31afb4
ingress
fetching when flag--istio-virtualservice
present, as the logic is duplicated.Motivation
More