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

Fix broken Octavia integration in OpenStack External Cloud Provider #6046

Conversation

qvicksilver
Copy link
Contributor

What type of PR is this?

Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line:

/kind api-change
/kind bug
/kind cleanup
/kind design
/kind documentation
/kind failing-test
/kind feature
/kind flake

What this PR does / why we need it:
Because the Octavia Loadbalancer integration breaks without it
Which issue(s) this PR fixes:

Fixes #

Special notes for your reviewer:

Does this PR introduce a user-facing change?:

NONE

@k8s-ci-robot k8s-ci-robot added kind/bug Categorizes issue or PR as related to a bug. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Apr 29, 2020
@k8s-ci-robot k8s-ci-robot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Apr 29, 2020
@alijahnas
Copy link
Contributor

Hi @qvicksilver
Thanks for the contribution. I tested the octavia integration myself and everything was fine. The octavia was the default load balancer provider. What were the errors that needed this fix?

@qvicksilver
Copy link
Contributor Author

Hi @qvicksilver
Thanks for the contribution. I tested the octavia integration myself and everything was fine. The octavia was the default load balancer provider. What were the errors that needed this fix?

Without it I got this when creating a LoadBalancer type service:
kube_service_kubernetes_default_kubernetes-lb: error creating loadbalancer {kube_service_kubernetes_default_kubernetes-lb Kubernetes external service default/kubernetes-lb from cluster kubernetes 6d005a6d-6921-4926-9831-6486ded534a7 <nil> amphora []}: Bad request with: [POST https://<redacted>9876/v2.0/lbaas/loadbalancers], error message: {"debuginfo": null, "faultcode": "Client", "faultstring": "Invalid input for field/attribute provider. Value: 'amphora'. Value should be one of: octavia"}

@alijahnas
Copy link
Contributor

I ran through the code of the cloud provider and I think I understand why this is happening: https://github.com/kubernetes/cloud-provider-openstack/blob/master/pkg/cloudprovider/providers/openstack/openstack.go#L374
Can you please tell me which version of the cloud provider you are using? The default is "latest" which is not great but my bad.
And which version of OpenStack are you running on?
Thanks!

@qvicksilver
Copy link
Contributor Author

Did not notice before but I'm running "latest" and Queens.

@Miouge1 Miouge1 added this to the 2.13 milestone Apr 29, 2020
Copy link
Contributor

@alijahnas alijahnas left a comment

Choose a reason for hiding this comment

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

I think the problem is that in the latest tag forces the amphora provider. The deployment should work with v1.17.0. In v1.18.0 it changes.
Still you should keep the changes you provided, but can you please add the default tag as v1.18.0 rather than latest in https://github.com/kubernetes-sigs/kubespray/blob/master/roles/kubernetes-apps/external_cloud_controller/openstack/defaults/main.yml#L15

Thanks

@Miouge1
Copy link
Contributor

Miouge1 commented Apr 29, 2020

This looks good, the "latest" tag can be fixed in a separate issue.

/lgtm
/approve

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Apr 29, 2020
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: Miouge1, qvicksilver

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Apr 29, 2020
@Miouge1
Copy link
Contributor

Miouge1 commented Apr 29, 2020

/retest

@k8s-ci-robot k8s-ci-robot merged commit e41766f into kubernetes-sigs:master Apr 29, 2020
LuckySB pushed a commit to southbridgeio/kubespray that referenced this pull request May 29, 2020
spaced pushed a commit to spaced/kubespray that referenced this pull request Jun 10, 2024
New Features:

NGINX 1.19.2
New configmap option enable-real-ip to enable realip_module
Use k8s.gcr.io vanity domain
Go 1.15
client-go v0.18.6
Migrate to klog v2
Changes:

 kubernetes-sigs#5887 Add force-enable-realip-module
 kubernetes-sigs#5888 Update dev-env.sh script
 kubernetes-sigs#5923 Fix error in grpcbin deployment and enable e2e test
 kubernetes-sigs#5924 Validate endpoints are ready in e2e tests
 kubernetes-sigs#5931 Add opentracing operation name settings
 kubernetes-sigs#5933 Update opentracing nginx module
 kubernetes-sigs#5946 Do not add namespace to cluster-scoped resources
 kubernetes-sigs#5951 Use env expansion to provide namespace in container args
 kubernetes-sigs#5952 Refactor shutdown e2e tests
 kubernetes-sigs#5957 bump fsnotify to v1.4.9
 kubernetes-sigs#5958 Disable enable-access-log-for-default-backend e2e test
 kubernetes-sigs#5984 Fix panic in ingress class validation
 kubernetes-sigs#5986 Migrate to klog v2
 kubernetes-sigs#5987 Fix wait times in e2e tests
 kubernetes-sigs#5990 Fix nginx command env variable reference
 kubernetes-sigs#6004 Update nginx to 1.19.2
 kubernetes-sigs#6006 Update nginx image
 kubernetes-sigs#6007 Update e2e-test-runner image
 kubernetes-sigs#6008 Rollback update of Jaeger library to 0.5.0 and update datadog to 1.2.0
 kubernetes-sigs#6014 Update go dependencies
 kubernetes-sigs#6039 Add configurable serviceMonitor metricRelabelling and targetLabels
 kubernetes-sigs#6046 Add new Dockerfile label org.opencontainers.image.revision
 kubernetes-sigs#6047 Increase wait times in e2e tests
 kubernetes-sigs#6049 Improve docs and logging for --ingress-class usage
 kubernetes-sigs#6052 Fix flaky e2e test
 kubernetes-sigs#6056 Rollback to Poll instead of PollImmediate
 kubernetes-sigs#6062 Adjust e2e timeouts
 kubernetes-sigs#6063 Remove file system paths executables
 kubernetes-sigs#6080 Use k8s.gcr.io vanity domain
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. kind/bug Categorizes issue or PR as related to a bug. lgtm "Looks good to me", indicates that a PR is ready to be merged. 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