You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Sep 19, 2018. It is now read-only.
Copy file name to clipboardexpand all lines: README.md
+15-10
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
ingress53 is a service designed to run in kubernetes and maintain DNS records for the cluster's ingress resources in AWS Route53.
4
4
5
-
It will watch the kubernetes API (using the service token) for any Ingress resource changes and try to apply those records to route53 in Amazon, mapping the record to the "target name", which is the dns name of the ingress endpoint for your cluster.
5
+
It will watch the kubernetes API (using the service token) for any Ingress resource changes and try to apply those records to route53 in Amazon, mapping the record to the "target", which is the dns name of the ingress endpoint for your cluster.
6
6
7
7
# Requirements
8
8
@@ -42,15 +42,15 @@ The minimum AWS policy you can use:
42
42
43
43
# Usage
44
44
45
-
ingress53 is slightly opinionated in that it assumes there are two kinds of ingress endpoints: public and private. A kubernetes selector is used to select public ingresses, while all others default to being private.
45
+
A kubernetes selector is used to specify the target (entry point of the cluster).
46
46
47
47
You will need to create a dns record that points to your ingress endpoint[s]. We will use this to CNAME all ingress resource entries to that "target".
48
48
49
49
Your set up might look like this:
50
50
51
51
- A ingress controller (nginx/traefik) kubernetes service running on a nodePort (:8080)
52
52
- ELB that serves all worker nodes on :8080
53
-
- A CNAME for the elb `private.example.com` > `my-loadbalancer-1234567890.us-west-2.elb.amazonaws.com`
53
+
- A CNAME for the elb `private.cluster-entrypoint.com` > `my-loadbalancer-1234567890.us-west-2.elb.amazonaws.com`
54
54
- ingress53 service running inside the cluster
55
55
56
56
Now, if you were to create an ingress kubernetes resource:
@@ -60,6 +60,8 @@ apiVersion: extensions/v1beta1
60
60
kind: Ingress
61
61
metadata:
62
62
name: my-app
63
+
labels:
64
+
ingress53.target: private.cluster-entrypoint.com
63
65
spec:
64
66
rules:
65
67
- host: my-app.example.com
@@ -71,15 +73,17 @@ spec:
71
73
servicePort: 80
72
74
```
73
75
74
-
ingress53 will create a CNAME record in route53: `my-app.example.com` > `private.example.com`
76
+
ingress53 will create a CNAME record in route53: `my-app.example.com` > `private.cluster-entrypoint.com`
75
77
76
78
You can test it locally (please refer to the command line help for more options):
0 commit comments