Skip to content
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

Support for multiple targets #243

Closed
wants to merge 1 commit into from
Closed

Support for multiple targets #243

wants to merge 1 commit into from

Conversation

linki
Copy link
Member

@linki linki commented Jun 19, 2017

This is a work in progress to allow endpoints to have multiple targets, e.g. for NodePort services.

Issue: #239

/cc @sethpollack

@k8s-ci-robot
Copy link
Contributor

@linki: GitHub didn't allow me to request PR reviews from the following users: sethpollack.

Note that only kubernetes-incubator members can review this PR, and authors cannot review their own PRs.

In response to this:

This is a work in progress to allow endpoints to have multiple targets, e.g. for NodePort services.

/cc @sethpollack

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.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Jun 19, 2017
@dereulenspiegel
Copy link
Contributor

Coincidentally this is exactly what I was working on, since this feature is desperately needed by us. I even took the same approach with using a string slice as targets in endpoints etc.
Many thanks for your work @linki . Anyway I could help to get this merged faster? Testing probably?

@sethpollack
Copy link
Contributor

@linki @dereulenspiegel I have another PR for multiple targets, with a few changes, I'll push it up soon.

@sethpollack
Copy link
Contributor

@linki @dereulenspiegel
Here is what I have for multi-targets so far- sethpollack/external-dns@record_types...sethpollack:targets

It depends on this PR #248

provider/aws.go Outdated
EvaluateTargetHealth: aws.Bool(evaluateTargetHealth),
}
} else {
change.ResourceRecordSet.Type = aws.String(suitableType(endpoint))
change.ResourceRecordSet.TTL = aws.Int64(recordTTL)
change.ResourceRecordSet.ResourceRecords = []*route53.ResourceRecord{
{
Value: aws.String(endpoint.Target),
Value: aws.String(endpoint.Targets[0]),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this needs to iterate over the Targets available and add them each as a separate ResourceRecord.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Exactly! This was just to make it somehow compile.

@kevincox
Copy link

FWIW this also affects Ingress services if the ingress controller has multiple IP addresses. For example this can easily happen with the nginx ingress controller.

@linki linki self-assigned this Aug 18, 2017
@jrnt30
Copy link
Contributor

jrnt30 commented Aug 18, 2017

@sethpollack @linki I started looking at this briefly last night to look at the #315 I primarily didn't want to spend time merging these and resolving conflicts from master if it's going to be something that needs to be deferred indefinitely since it would result in a ton of merge conflicts.

I'm curious if either of you are continuing to work on this or if there is a list of major gotchas that we should be looking out for.

On solution for now would be to take what @linki has already started and work on getting the current functionality (no multiples) working with the []Targets in the endpoint and just using the [0] and getting that merged in so we have a bit firmer ground to work on and it won't result in a merge conflict with every master branch merge.

Curious what your thoughts are on a way to get a basis for functional expansion though

@linki linki added work-in-progress do-not-merge DEPRECATED. Indicates that a PR should not merge. Label can only be manually applied/removed. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. labels Aug 25, 2017
@linki linki changed the title [WiP] Support for multiple targets Support for multiple targets Aug 25, 2017
@k8s-ci-robot k8s-ci-robot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Aug 29, 2017
@linki
Copy link
Member Author

linki commented Jul 24, 2018

Nothing to see here anymore. It's obsolete.

Another round of "thank you" to all the contributors that worked on the multiple targets feature! 🎉

@linki linki closed this Jul 24, 2018
@linki linki deleted the feat/multiple-targets2 branch July 24, 2018 16:16
lou-lan pushed a commit to lou-lan/external-dns that referenced this pull request May 11, 2022
…sigs#243)

* Ensure that go modules are enabled in all helper scripts

This ensures that they can be run individually.

* Add missing go-cmp dependency to go.{mod,sum}

* Limit scope when enabling go modules
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/multiple-targets cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge DEPRECATED. Indicates that a PR should not merge. Label can only be manually applied/removed. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. work-in-progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants