-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Update AWS Cloudmock for complex and externallb integration test clusters #10140
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: rifelpet The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
45181c8
to
f604c3d
Compare
/assign |
f604c3d
to
209b871
Compare
209b871
to
7d5a399
Compare
/lgtm |
This was referenced Oct 30, 2020
k8s-ci-robot
pushed a commit
that referenced
this pull request
Nov 2, 2020
…r class with NLB and ELB support on AWS (#10154) * Create cloudmock implementations for elbv2 API calls used by future NLB support * Add missing cloudmock functionality for enabling lifecycle integration test on complex cluster * Add lifecycle integration tests for complex and externallb clusters * refactor TargetLoadBalancer to use DNSTarget interface instead of LoadBalancer * add LoadBalancerClass fields into api * make api machinery * WIP: Implemented API loadbalancer class, allowing NLB and ELB support on AWS for new clusters. * perform vendoring related tasks and apply fixes identified from hack/ dissallow spotinst + nlb remove reflection in status_discovery.go Add precreated additional security groups to the Master nodes in case of NLB Remove support for attaching individual instances to NLB; only rely on ASG attachments Don't specify Classic loadbalancer in GCE integration test * add utility function to the kops model context to make LoadBalancer comparisons simpler * use DNSTarget interface when locating DNSName of API ELB * wip: create target group task * Consolidate TargetGroup tasks * Use context helper for determining api load balancer type to avoid nil pointers * Update NLB creation to use target group ARN from separate task rather than creating a TG in-line * Address staticcheck and bazel failures * Removing NLB Attachment tasks because they're not used since we switched to defining them as a part of the ASGs * Address PR review feedback * Only set LB Class field for AWS clusters, fix nil pointer * Move target group attributes from NLB task to TG task, removing unused attributes * Add terraform and cloudformation support for NLBs, listeners, and target groups * Update integration test for NLB support * Fix NLB name format to pass terraform validation * Preserve security group rule names when switching ELB to NLB to reduce destructive terraform changes * Use elbv2 enums and address some TODOs * Set healthcheck values in target group * Find TG tags, fix NLB name detection * Fix more spurious changes reported by lifecycle integration test * Fix spotinst validation, more code cleanup * Address more PR feedback * ReconcileTargetGroups unit test + more code simplification * Addressing PR feedback Renaming task 1. awstasks.LoadBalancer -> awstasks.ClassicLoadBalancer * Addressing PR feedback Renaming task: ELBName() -> CLBName() / LinkToELB() -> LinkToCLB() * Addressing PR feedback: Various text changes * fix export of kubecfg * address TargetGroup should have the same name as the NLB * should address error when fetching tags due to missing ARN * Update expected and crds * Add feature table to NLB docs * Address more feedback and remove some TODOs that arent applicable anymore * Update spotinst validation error message Co-authored-by: Christian Joun <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
approved
Indicates a PR has been approved by an approver from all required OWNERS files.
cncf-cla: yes
Indicates the PR's author has signed the CNCF CLA.
lgtm
"Looks good to me", indicates that a PR is ready to be merged.
size/XL
Denotes a PR that changes 500-999 lines, ignoring generated files.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Also preparing the elbv2 api calls that the NLB support will use. This will make it easier to test the NetworkLoadBalancer and TargetGroup awstasks that we're setting up.
ref: #9011