我正在尝试使用外部 DNS 和 Istio 网关在 Google Cloud DNS 上自动创建记录。我看到在过去的几天里,外部 DNS 存储库发生了很多变化,所以我将过去能够做到这一点的事实归咎于这些变化,而不再是这样了!
无论如何,这是我的网关和值文件:
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: example-gateway
namespace: default
annotations:
istio-type: internal
spec:
selector:
istio: internalgateway
servers:
- hosts:
- '*.example.com'
- example.com
port:
name: http
number: 80
protocol: HTTP
tls:
httpsRedirect: true
- hosts:
- '*.example.com'
- example.com
port:
name: https
number: 443
protocol: HTTPS
tls:
mode: SIMPLE
privateKey: /etc/istio/ingressgateway-certs/tls.key
serverCertificate: /etc/istio/ingressgateway-certs/tls.crt
这就是我的价值观:
image:
registry: registry.opensource.zalan.do
repository: teapot/external-dns
tag: latest
...
sources:
# - service
# - ingress
- istio-gateway
# - crd
...
provider: google
publishInternalServices: true
google:
## Google Project to use
##
project: "XXX"
serviceAccountSecret: "clouddns"
serviceAccountKey: "credentials.json"
domainFilters:
- example.com
annotationFilter: "type=internal"
...
rbac:
create: true
...
这是我从 external-dns pod 获取的日志:
...
time="2019-07-05T16:09:11Z" level=info msg="Created Istio client"
time="2019-07-05T16:09:11Z" level=info msg="All records are already up to date"
虽然很明显,我的 Cloud DNS 区域中不存在这些记录。
关于为什么 external-dns 看不到我的网关的任何想法?