Skip to content

bindata/bootkube: use loopback kubeconfig to talk to API#270

Closed
jhixson74 wants to merge 1 commit intoopenshift:masterfrom
jhixson74:master_azure_restrict_bootstrap_clients
Closed

bindata/bootkube: use loopback kubeconfig to talk to API#270
jhixson74 wants to merge 1 commit intoopenshift:masterfrom
jhixson74:master_azure_restrict_bootstrap_clients

Conversation

@jhixson74
Copy link
Member

@jhixson74 jhixson74 commented Jul 23, 2019

This code modifies cluster-kube-controller-manager-operator to use a kubeconfig configured for localhost API access.

This is necessary due to a limitation with Azure internal load balancers. See limitation #2 here: https://docs.microsoft.com/en-us/azure/load-balancer/load-balancer-overview#limitations

"Unlike public Load Balancers which provide outbound connections when transitioning from private IP addresses inside the virtual network to public IP addresses, internal Load Balancers do not translate outbound originated connections to the frontend of an internal Load Balancer as both are in private IP address space. This avoids potential for SNAT port exhaustion inside unique internal IP address space where translation is not required. The side effect is that if an outbound flow from a VM in the backend pool attempts a flow to frontend of the internal Load Balancer in which pool it resides and is mapped back to itself, both legs of the flow don't match and the flow will fail."

kubeconfig-loopback is generated by the installer.

https://jira.coreos.com/browse/CORS-1094

@openshift-ci-robot openshift-ci-robot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Jul 23, 2019
@openshift-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: jhixson74
To complete the pull request process, please assign tnozicka
You can assign the PR to them by writing /assign @tnozicka in a comment when ready.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@sttts
Copy link
Contributor

sttts commented Jul 24, 2019

~~Why is it bad to talk to the bootstrap note during bootstrapping? Why should these control plane operators be different than any other client in the cluster?~~~

Misunderstood the intent.

@sttts
Copy link
Contributor

sttts commented Jul 24, 2019

This misses the kubeconfig in bindata/bootkube/bootstrap-manifests/kube-controller-manager-pod.yaml

@jhixson74 jhixson74 force-pushed the master_azure_restrict_bootstrap_clients branch from f7b0f03 to 140a2a6 Compare July 24, 2019 23:58
@jhixson74 jhixson74 changed the title bindata/bootkube/config: use loopback kubeconfig to talk to API bindata/bootkube: use loopback kubeconfig to talk to API Jul 25, 2019
@jhixson74
Copy link
Member Author

@sttts I have updated the PR description to reflect the problem. I've also updated the pod yaml file. Thanks for catching that.

@sttts
Copy link
Contributor

sttts commented Jul 26, 2019

Lgtm. Why are tests red?

@abhinavdahiya
Copy link
Contributor

/retest

@openshift-ci-robot
Copy link

@jhixson74: The following tests failed, say /retest to rerun them all:

Test name Commit Details Rerun command
ci/prow/e2e-aws 140a2a6 link /test e2e-aws
ci/prow/e2e-aws-operator 140a2a6 link /test e2e-aws-operator

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

Details

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. I understand the commands that are listed here.

@jhixson74
Copy link
Member Author

It looks like this PR is not necessary now so I am closing it.

@jhixson74 jhixson74 closed this Jul 30, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants