Skip to content

Commit 4bfe34f

Browse files
github-actions[bot]dependabot[bot]ivankatliarchukmloiseleurszuecs
authored
chore: sync with upstream kubernetes-sigs/external-dns v0.19.0 (#5)
* chore(deps): bump the dev-dependencies group with 2 updates (kubernetes-sigs#5946) Bumps the dev-dependencies group with 2 updates: [renovatebot/github-action](https://github.com/renovatebot/github-action) and [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action). Updates `renovatebot/github-action` from 43.0.20 to 44.0.1 - [Release notes](https://github.com/renovatebot/github-action/releases) - [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md) - [Commits](renovatebot/github-action@v43.0.20...v44.0.1) Updates `golangci/golangci-lint-action` from 8 to 9 - [Release notes](https://github.com/golangci/golangci-lint-action/releases) - [Commits](golangci/golangci-lint-action@v8...v9) --- updated-dependencies: - dependency-name: renovatebot/github-action dependency-version: 44.0.1 dependency-type: direct:production update-type: version-update:semver-major dependency-group: dev-dependencies - dependency-name: golangci/golangci-lint-action dependency-version: '9' dependency-type: direct:production update-type: version-update:semver-major dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs(core-dns): update tutorial (kubernetes-sigs#5926) * docs(core-dns): update tutorial Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * docs(core-dns): update tutorial Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * docs(core-dns): update tutorial Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * docs(core-dns): update tutorial Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * docs(core-dns): update tutorial Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * docs(core-dns): update tutorial Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com> --------- Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com> * chore(deps): bump the dev-dependencies group across 1 directory with 9 updates (kubernetes-sigs#5949) Bumps the dev-dependencies group with 7 updates in the / directory: | Package | From | To | | --- | --- | --- | | [github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://github.com/Azure/azure-sdk-for-go) | `1.13.0` | `1.13.1` | | [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.31.17` | `1.31.18` | | [github.com/civo/civogo](https://github.com/civo/civogo) | `0.6.4` | `0.6.5` | | [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.104.0` | `65.104.1` | | [github.com/prometheus/common](https://github.com/prometheus/common) | `0.66.1` | `0.67.2` | | [golang.org/x/oauth2](https://github.com/golang/oauth2) | `0.32.0` | `0.33.0` | | [golang.org/x/sync](https://github.com/golang/sync) | `0.17.0` | `0.18.0` | Updates `github.com/Azure/azure-sdk-for-go/sdk/azidentity` from 1.13.0 to 1.13.1 - [Release notes](https://github.com/Azure/azure-sdk-for-go/releases) - [Commits](Azure/azure-sdk-for-go@sdk/azcore/v1.13.0...sdk/azidentity/v1.13.1) Updates `github.com/aws/aws-sdk-go-v2/config` from 1.31.17 to 1.31.18 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](aws/aws-sdk-go-v2@config/v1.31.17...config/v1.31.18) Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.18.21 to 1.18.22 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](aws/aws-sdk-go-v2@config/v1.18.21...config/v1.18.22) Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.39.1 to 1.40.0 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](aws/aws-sdk-go-v2@v1.39.1...service/s3/v1.40.0) Updates `github.com/civo/civogo` from 0.6.4 to 0.6.5 - [Release notes](https://github.com/civo/civogo/releases) - [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml) - [Commits](civo/civogo@v0.6.4...v0.6.5) Updates `github.com/oracle/oci-go-sdk/v65` from 65.104.0 to 65.104.1 - [Release notes](https://github.com/oracle/oci-go-sdk/releases) - [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md) - [Commits](oracle/oci-go-sdk@v65.104.0...v65.104.1) Updates `github.com/prometheus/common` from 0.66.1 to 0.67.2 - [Release notes](https://github.com/prometheus/common/releases) - [Changelog](https://github.com/prometheus/common/blob/main/CHANGELOG.md) - [Commits](prometheus/common@v0.66.1...v0.67.2) Updates `golang.org/x/oauth2` from 0.32.0 to 0.33.0 - [Commits](golang/oauth2@v0.32.0...v0.33.0) Updates `golang.org/x/sync` from 0.17.0 to 0.18.0 - [Commits](golang/sync@v0.17.0...v0.18.0) --- updated-dependencies: - dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azidentity dependency-version: 1.13.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/aws/aws-sdk-go-v2/config dependency-version: 1.31.18 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/aws/aws-sdk-go-v2/credentials dependency-version: 1.18.22 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/aws/aws-sdk-go-v2/service/sts dependency-version: 1.40.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: github.com/civo/civogo dependency-version: 0.6.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/oracle/oci-go-sdk/v65 dependency-version: 65.104.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/prometheus/common dependency-version: 0.67.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: golang.org/x/oauth2 dependency-version: 0.33.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: golang.org/x/sync dependency-version: 0.18.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * test(source): fqdn for source/service/nodeport/srv records (kubernetes-sigs#5554) * chore(source): service add fqdn tests for NodePort/SRV records Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * chore(source): service add fqdn tests for NodePort/SRV records Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> --------- Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * chore(deps): bump the dev-dependencies group across 1 directory with 15 updates (kubernetes-sigs#5952) Bumps the dev-dependencies group with 10 updates in the / directory: | Package | From | To | | --- | --- | --- | | [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.31.18` | `1.31.20` | | [github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue](https://github.com/aws/aws-sdk-go-v2) | `1.20.21` | `1.20.23` | | [github.com/aws/aws-sdk-go-v2/service/route53](https://github.com/aws/aws-sdk-go-v2) | `1.59.3` | `1.59.5` | | [github.com/aws/aws-sdk-go-v2/service/servicediscovery](https://github.com/aws/aws-sdk-go-v2) | `1.39.14` | `1.39.16` | | [go.etcd.io/etcd/api/v3](https://github.com/etcd-io/etcd) | `3.6.5` | `3.6.6` | | [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.6.5` | `3.6.6` | | [golang.org/x/net](https://github.com/golang/net) | `0.46.0` | `0.47.0` | | [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.255.0` | `0.256.0` | | [k8s.io/api](https://github.com/kubernetes/api) | `0.34.1` | `0.34.2` | | [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.34.1` | `0.34.2` | Updates `github.com/aws/aws-sdk-go-v2/config` from 1.31.18 to 1.31.20 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](aws/aws-sdk-go-v2@config/v1.31.18...config/v1.31.20) Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.18.22 to 1.18.24 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/config/v1.18.24/CHANGELOG.md) - [Commits](aws/aws-sdk-go-v2@config/v1.18.22...config/v1.18.24) Updates `github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue` from 1.20.21 to 1.20.23 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](aws/aws-sdk-go-v2@feature/dynamodb/attributevalue/v1.20.21...feature/dynamodb/attributevalue/v1.20.23) Updates `github.com/aws/aws-sdk-go-v2/service/dynamodb` from 1.52.4 to 1.52.6 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](aws/aws-sdk-go-v2@service/ssm/v1.52.4...service/ssm/v1.52.6) Updates `github.com/aws/aws-sdk-go-v2/service/route53` from 1.59.3 to 1.59.5 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](aws/aws-sdk-go-v2@service/iot/v1.59.3...service/iot/v1.59.5) Updates `github.com/aws/aws-sdk-go-v2/service/servicediscovery` from 1.39.14 to 1.39.16 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](aws/aws-sdk-go-v2@service/personalize/v1.39.14...service/personalize/v1.39.16) Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.40.0 to 1.40.2 - [Release notes](https://github.com/aws/aws-sdk-go-v2/releases) - [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json) - [Commits](aws/aws-sdk-go-v2@service/s3/v1.40.0...service/s3/v1.40.2) Updates `go.etcd.io/etcd/api/v3` from 3.6.5 to 3.6.6 - [Release notes](https://github.com/etcd-io/etcd/releases) - [Commits](etcd-io/etcd@v3.6.5...v3.6.6) Updates `go.etcd.io/etcd/client/v3` from 3.6.5 to 3.6.6 - [Release notes](https://github.com/etcd-io/etcd/releases) - [Commits](etcd-io/etcd@v3.6.5...v3.6.6) Updates `golang.org/x/net` from 0.46.0 to 0.47.0 - [Commits](golang/net@v0.46.0...v0.47.0) Updates `golang.org/x/text` from 0.30.0 to 0.31.0 - [Release notes](https://github.com/golang/text/releases) - [Commits](golang/text@v0.30.0...v0.31.0) Updates `google.golang.org/api` from 0.255.0 to 0.256.0 - [Release notes](https://github.com/googleapis/google-api-go-client/releases) - [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md) - [Commits](googleapis/google-api-go-client@v0.255.0...v0.256.0) Updates `k8s.io/api` from 0.34.1 to 0.34.2 - [Commits](kubernetes/api@v0.34.1...v0.34.2) Updates `k8s.io/apimachinery` from 0.34.1 to 0.34.2 - [Commits](kubernetes/apimachinery@v0.34.1...v0.34.2) Updates `k8s.io/client-go` from 0.34.1 to 0.34.2 - [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md) - [Commits](kubernetes/client-go@v0.34.1...v0.34.2) --- updated-dependencies: - dependency-name: github.com/aws/aws-sdk-go-v2/config dependency-version: 1.31.20 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/aws/aws-sdk-go-v2/credentials dependency-version: 1.18.24 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue dependency-version: 1.20.23 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/aws/aws-sdk-go-v2/service/dynamodb dependency-version: 1.52.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/aws/aws-sdk-go-v2/service/route53 dependency-version: 1.59.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/aws/aws-sdk-go-v2/service/servicediscovery dependency-version: 1.39.16 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: github.com/aws/aws-sdk-go-v2/service/sts dependency-version: 1.40.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: go.etcd.io/etcd/api/v3 dependency-version: 3.6.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: go.etcd.io/etcd/client/v3 dependency-version: 3.6.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: golang.org/x/net dependency-version: 0.47.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: golang.org/x/text dependency-version: 0.31.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: google.golang.org/api dependency-version: 0.256.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: k8s.io/api dependency-version: 0.34.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: k8s.io/apimachinery dependency-version: 0.34.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: k8s.io/client-go dependency-version: 0.34.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Build(tool) remove vacuum (kubernetes-sigs#5955) * build: tool remove vacuum in order to get rid of BUSL-1.1 license of a dependency in go.mod/go.tool.mod Signed-off-by: Sandor Szuecs <sandor.szuecs@zalando.de> * rm vacuum Signed-off-by: Sandor Szuecs <sandor.szuecs@zalando.de> * remove also from CI Signed-off-by: Sandor Szuecs <sandor.szuecs@zalando.de> --------- Signed-off-by: Sandor Szuecs <sandor.szuecs@zalando.de> --------- Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> Signed-off-by: Sandor Szuecs <sandor.szuecs@zalando.de> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ivan Ka <5395690+ivankatliarchuk@users.noreply.github.com> Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com> Co-authored-by: Sandor Szücs <sandor.szuecs@zalando.de> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent 94a75d2 commit 4bfe34f

14 files changed

Lines changed: 752 additions & 661 deletions

File tree

Makefile

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,9 @@ licensecheck:
5757
exit 1; \
5858
fi
5959

60-
#? oas-lint: Execute OpenAPI Specification (OAS) linting https://quobix.com/vacuum/
61-
.PHONY: go-lint
62-
oas-lint:
63-
go tool -modfile=go.tool.mod vacuum lint -d --fail-severity warn api/*.yaml
64-
6560
#? lint: Run all the linters
6661
.PHONY: lint
67-
lint: licensecheck go-lint oas-lint
62+
lint: licensecheck go-lint
6863

6964
#? crd: Generates CRD using controller-gen and copy it into chart
7065
.PHONY: crd
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
---
2+
apiVersion: v1
3+
kind: Service
4+
metadata:
5+
name: a
6+
annotations:
7+
external-dns.alpha.kubernetes.io/hostname: a.domain.local
8+
external-dns.alpha.kubernetes.io/coredns-group: "g1"
9+
spec:
10+
type: LoadBalancer
11+
status:
12+
loadBalancer:
13+
ingress:
14+
- ip: 127.0.0.1
15+
---
16+
apiVersion: v1
17+
kind: Service
18+
metadata:
19+
name: b
20+
annotations:
21+
external-dns.alpha.kubernetes.io/hostname: b.domain.local
22+
external-dns.alpha.kubernetes.io/coredns-group: "g1"
23+
spec:
24+
type: LoadBalancer
25+
status:
26+
loadBalancer:
27+
ingress:
28+
- ip: 127.0.0.2
29+
---
30+
apiVersion: v1
31+
kind: Service
32+
metadata:
33+
name: c
34+
annotations:
35+
external-dns.alpha.kubernetes.io/hostname: c.subdom.domain.local
36+
external-dns.alpha.kubernetes.io/coredns-group: "g2"
37+
spec:
38+
type: LoadBalancer
39+
status:
40+
loadBalancer:
41+
ingress:
42+
- ip: 127.0.0.3
43+
---
44+
apiVersion: v1
45+
kind: Service
46+
metadata:
47+
name: d
48+
annotations:
49+
external-dns.alpha.kubernetes.io/hostname: d.subdom.domain.local
50+
external-dns.alpha.kubernetes.io/coredns-group: "g2"
51+
spec:
52+
type: LoadBalancer
53+
status:
54+
loadBalancer:
55+
ingress:
56+
- ip: 127.0.0.4
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
# kubectl apply -f docs/snippets/tutorials/coredns/etcd.yaml
2+
# kubectl delete -f docs/snippets/tutorials/coredns/etcd.yaml
3+
---
4+
apiVersion: v1
5+
kind: Service
6+
metadata:
7+
name: etcd
8+
namespace: default
9+
spec:
10+
type: ClusterIP
11+
clusterIP: None
12+
ports:
13+
- name: etcd-client
14+
port: 2379
15+
- name: etcd-server
16+
port: 2380
17+
- name: etcd-metrics
18+
port: 8080
19+
selector:
20+
app: etcd
21+
---
22+
apiVersion: v1
23+
kind: Service
24+
metadata:
25+
name: etcd-nodeport-external
26+
namespace: default
27+
spec:
28+
type: NodePort
29+
ports:
30+
- port: 2379
31+
targetPort: 2379
32+
nodePort: 32379 # must match kind config port mapping
33+
selector:
34+
app: etcd
35+
---
36+
apiVersion: apps/v1
37+
kind: StatefulSet
38+
metadata:
39+
name: etcd
40+
namespace: default
41+
spec:
42+
serviceName: etcd
43+
replicas: 1
44+
selector:
45+
matchLabels:
46+
app: etcd
47+
template:
48+
metadata:
49+
labels:
50+
app: etcd
51+
annotations:
52+
serviceName: etcd
53+
spec:
54+
containers:
55+
- name: etcd
56+
image: quay.io/coreos/etcd:v3.5.15
57+
command:
58+
- /usr/local/bin/etcd
59+
- --name=$(HOSTNAME)
60+
- --listen-peer-urls=$(URI_SCHEME)://0.0.0.0:2380
61+
- --listen-client-urls=$(URI_SCHEME)://0.0.0.0:2379
62+
- --advertise-client-urls=$(URI_SCHEME)://$(HOSTNAME).$(SERVICE_NAME):2379
63+
- --data-dir=/var/lib/etcd
64+
ports:
65+
- containerPort: 2379
66+
volumeMounts:
67+
- name: data
68+
mountPath: /var/lib/etcd
69+
env:
70+
- name: K8S_NAMESPACE
71+
valueFrom:
72+
fieldRef:
73+
fieldPath: metadata.namespace
74+
- name: HOSTNAME
75+
valueFrom:
76+
fieldRef:
77+
fieldPath: metadata.name
78+
- name: SERVICE_NAME
79+
valueFrom:
80+
fieldRef:
81+
fieldPath: metadata.annotations['serviceName']
82+
- name: ETCDCTL_ENDPOINTS
83+
value: $(HOSTNAME).$(SERVICE_NAME):2379
84+
- name: URI_SCHEME
85+
value: "http"
86+
volumeClaimTemplates:
87+
- metadata:
88+
name: data
89+
spec:
90+
accessModes: ["ReadWriteOnce"]
91+
resources:
92+
requests:
93+
storage: 50Mi
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# kubectl apply -f docs/snippets/tutorials/coredns/fixtures.yaml
2+
# kubectl delete -f docs/snippets/tutorials/coredns/fixtures.yaml
3+
# kubectl get svc -l svc=test-svc
4+
---
5+
apiVersion: v1
6+
kind: Service
7+
metadata:
8+
name: a-g1-record
9+
labels:
10+
svc: test-svc
11+
annotations:
12+
external-dns.alpha.kubernetes.io/hostname: a.example.org
13+
external-dns.alpha.kubernetes.io/coredns-group: "g1"
14+
cluster-name: "cluster1"
15+
namespace: default
16+
spec:
17+
type: LoadBalancer
18+
ports:
19+
- port: 80
20+
name: http
21+
targetPort: 80
22+
selector:
23+
app: test-app
24+
---
25+
apiVersion: v1
26+
kind: Service
27+
metadata:
28+
name: aa-g1-record
29+
labels:
30+
svc: test-svc
31+
annotations:
32+
external-dns.alpha.kubernetes.io/hostname: aa.example.org
33+
external-dns.alpha.kubernetes.io/coredns-group: "g1"
34+
cluster-name: "cluster1"
35+
namespace: default
36+
spec:
37+
type: LoadBalancer
38+
ports:
39+
- port: 80
40+
name: http
41+
targetPort: 80
42+
selector:
43+
app: test-app
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# ref: https://kind.sigs.k8s.io/docs/user/quick-start/
2+
# https://kind.sigs.k8s.io/docs/user/configuration/#extra-port-mappings
3+
4+
# kind create cluster --config=docs/snippets/tutorials/coredns/kind.yaml
5+
# kind delete cluster --name coredns-etcd
6+
# kubectl cluster-info --context kind-coredns-etcd
7+
# kubectl get nodes -o wide
8+
---
9+
kind: Cluster
10+
apiVersion: kind.x-k8s.io/v1alpha4
11+
name: coredns-etcd
12+
networking:
13+
apiServerAddress: 127.0.0.1
14+
apiServerPort: 6443
15+
nodes:
16+
- role: control-plane
17+
image: kindest/node:v1.33.0
18+
kubeadmConfigPatches:
19+
- |
20+
kind: InitConfiguration
21+
nodeRegistration:
22+
kubeletExtraArgs:
23+
node-labels: "ingress-ready=true"
24+
extraPortMappings:
25+
- containerPort: 80
26+
hostPort: 8080
27+
listenAddress: "0.0.0.0"
28+
protocol: TCP
29+
- containerPort: 43
30+
hostPort: 4443
31+
listenAddress: "0.0.0.0"
32+
protocol: TCP
33+
- containerPort: 32379 # inside kind node
34+
hostPort: 32379 # exposed on host
35+
listenAddress: "0.0.0.0"
36+
protocol: TCP
37+
- role: worker
38+
image: kindest/node:v1.33.0
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# kubectl logs deploy/coredns -n default -c coredns
2+
# ref: https://github.com/coredns/helm/blob/master/charts/coredns/values.yaml
3+
isClusterService: false
4+
5+
service:
6+
name: coredns
7+
port: 53
8+
annotations: {}
9+
clusterIP: ""
10+
11+
# Main customization
12+
servers:
13+
- zones:
14+
- zone: .
15+
port: 53
16+
plugins:
17+
- name: errors
18+
- name: debug # <── enables debug mode
19+
- name: health
20+
configBlock: |-
21+
lameduck 5s
22+
- name: ready
23+
# to query kubernetes API for data
24+
- name: kubernetes
25+
parameters: cluster.local 10.0.0.0/24
26+
configBlock: |-
27+
pods insecure
28+
fallthrough in-addr.arpa ip6.arpa
29+
ttl 30
30+
- name: etcd
31+
parameters: "example.org"
32+
configBlock: |
33+
stubzones
34+
path /skydns
35+
endpoint http://etcd.default.svc.cluster.local:2379
36+
fallthrough
37+
- name: log # <── log each DNS query
38+
- name: forward
39+
parameters: ". /etc/resolv.conf"
40+
- name: cache
41+
parameters: 30
42+
- name: reload
43+
- name: loop
44+
- name: loadbalance
45+
46+
replicaCount: 1
47+
48+
# required to debug DNS resolution from within CoreDNS pods
49+
# kubectl logs deploy/coredns -n default -c resolv-check --tail=50
50+
initContainers:
51+
- name: resolv-check
52+
image: busybox:1.37
53+
command: ["sh", "-c", "echo '--- /etc/resolv.conf ---'; cat /etc/resolv.conf; echo '---------------------------'; nslookup kubernetes.default.svc.cluster.local || true; sleep 5"]
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
2+
# ref: https://github.com/kubernetes-sigs/external-dns/blob/master/charts/external-dns/values.yaml
3+
provider:
4+
name: coredns
5+
6+
env:
7+
- name: ETCD_URLS
8+
value: "http://etcd.default.svc.cluster.local:2379"
9+
10+
11+
txtOwnerId: cluster1
12+
# Filter resources queried for endpoints by annotation, using label selector semantics
13+
annotationFilter: cluster-name=cluster1
14+
15+
domainFilters:
16+
- example.org
17+
18+
# Sources define what ExternalDNS will use to discover endpoints
19+
sources:
20+
- service
21+
22+
# Policy options
23+
policy: sync
24+
25+
logLevel: debug
26+
interval: 1m
27+
28+
# RBAC configuration
29+
rbac:
30+
create: true
31+
32+
# Optional: tune resource requests
33+
resources:
34+
requests:
35+
cpu: 100m
36+
memory: 64Mi
37+
limits:
38+
cpu: 200m
39+
memory: 128Mi

0 commit comments

Comments
 (0)