external-dns: istio-virtualservice does not create entries in Infoblox
What happened:
Started with a very basic setup of httpbin, as per https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/istio.md#using-a-virtualservice-as-a-source , added a VirtualService, tailing the logs in debug mode, on kubectl apply I see
external-dns-6f7d8c6cc9-dgphl external-dns time="2020-08-12T17:50:11Z" level=debug msg="service added"
and a few secs later (polling 1min)
external-dns-6f7d8c6cc9-dgphl external-dns time="2020-08-12T17:50:57Z" level=debug msg="No endpoints could be generated from VirtualService test/httpbin"
Other types of resources work, namely Service of type LoadBalancer creates A records fine
spec:
containers:
- args:
- --log-level=debug
- --log-format=text
- --domain-filter=k8s.local
- --policy=sync
- --provider=infoblox
- --namespace=test
- --registry=txt
- --interval=1m
- --source=service
- --source=istio-virtualservice
- --infoblox-grid-host=grid.local
- --infoblox-wapi-version=2.3.1
- --infoblox-view=internal
Service+Gateway:
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: httpbin
namespace: test
spec:
hosts:
- "test.k8s.local"
gateways:
- httpbin-gateway
http:
- match:
- uri:
prefix: /status
- uri:
prefix: /delay
route:
- destination:
port:
number: 8000
host: httpbin
---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: httpbin-gateway
namespace: test
spec:
selector:
istio: ingressgateway # use Istio default gateway implementation
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- '*.k8s.local'
Any hints for further debugging are most welcome
Anything else we need to know?: https://github.com/bitnami/charts/pull/3216 recently merged passed, so I guess something related to the provider might be wrong?
Environment:
- External-DNS version (use
external-dns --version): 0.7.3 - DNS provider: Infoblox
- Others: running in k8s 1.15, chart from Bitnami external-dns-3.2.6
About this issue
- Original URL
- State: open
- Created 4 years ago
- Reactions: 1
- Comments: 23 (8 by maintainers)
@devstein: You can’t reopen an issue/PR unless you authored it or you are a collaborator.
In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.
/remove-lifecycle stale
Is there any update on this at all?
I’d really like to see this resolved as it’s starting to cause us problems! 😦
Can we have some info on this?
It looks like at the moment the targets (ip addresses) are only extracted from loadbalancer declarations of the gateways. The code responsible for that is here: https://github.com/kubernetes-sigs/external-dns/blob/9d2aaf0efeef00ec0633c4681b105bdd95f556ec/source/virtualservice.go#L475-L481
Maybe we could change the code to also retrieve the
ExternalIPorInternalIPof the host where the service is running./reopen
For gateway the same situation - the current code only checks
LoadBalancercase: https://github.com/kubernetes-sigs/external-dns/blob/f7e9e5c07ee9b8194c9400490e4d763af0dc58df/source/istio_gateway.go#L248-L254Please support the case with
ClusterIPandexternalIPs: