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

☂️-Issue for "Support Open Telekom Cloud (OTC)" #122

Open
timuthy opened this issue Jul 30, 2020 · 14 comments
Open

☂️-Issue for "Support Open Telekom Cloud (OTC)" #122

timuthy opened this issue Jul 30, 2020 · 14 comments
Labels
area/control-plane Control plane related area/os Operation system related kind/enhancement Enhancement, improvement, extension lifecycle/rotten Nobody worked on this for 12 months (final aging stage) platform/openstack OpenStack platform/infrastructure priority/3 Priority (lower number equals higher priority)

Comments

@timuthy
Copy link
Member

timuthy commented Jul 30, 2020

How to categorize this issue?

/area control-plane
/area os
/kind enhancement
/priority normal
/platform openstack

Open Telekom Cloud (OTC) is mostly based on OpenStack (ref) and using this OpenStack provider extension seems as the quickest and a preferable way to support OTC.

Identified issues:

🚧 Egress traffic for worker machines not possible (#165).

❔ VM root disk size is not configurable.

error message: {"badRequest": {"message": "Block Device Mapping is Invalid: Boot sequence for the instance and image/block device mapping combination is not valid.", "code": 400}}

❔ LoadBalancers can't be created via K8s services: kubernetes/cloud-provider-openstack#960


Status
completed
🚧 in progress
in clarification
incomplete
@timuthy timuthy added the kind/enhancement Enhancement, improvement, extension label Jul 30, 2020
@gardener-robot gardener-robot added area/control-plane Control plane related area/os Operation system related platform/openstack OpenStack platform/infrastructure priority/normal labels Jul 30, 2020
@timuthy
Copy link
Member Author

timuthy commented Jul 30, 2020

We'll open separate issues/PRs and link them here as soon as we have identified specific requirements for the provider extension.

@shimoza
Copy link

shimoza commented Jul 30, 2020

I will discuss it with the RnD. In general, if boot_index is set to 0, the system disk size cannot be set and the error you mentioned appears. If boot_index value is non-zero or omitted, VM is getting spawned with two disks:

  • system disk size is inherited from the image
  • data disk, equal to "volume_size"

some API call examples:
Test 01, Private Image with 40 GB system disk, boot_index is set to non-zero.
{
"server": {
"imageRef": "0a44cb5a-9fcf-49f0-9d32-505102ab5da6",
"flavorRef": "s2.large.2",
"name": "kla02",
"block_device_mapping_v2": [{
"source_type": "image",
"destination_type": "volume",
"uuid": "0a44cb5a-9fcf-49f0-9d32-505102ab5da6",
"delete_on_termination": "False",
"boot_index": "1",
"volume_type": "SAS",
"volume_size": "20"
}],
"security_groups": [{
"name": "sg-anyany"
}],
"networks": [{
"uuid": "66f9f277-da3d-4802-a5ac-ff98cc1308c4"
}],
"key_name": "kla-10491",
"availability_zone": "eu-de-01"
}
}

Result: an ECS with two disks:

  • system disk, 40 GB size, inherited from the image
  • data disk, the size is equal to "volume_size"

Test 02, Private Image with 40 GB system disk, boot_index = 0:

{
"server": {
"imageRef": "0a44cb5a-9fcf-49f0-9d32-505102ab5da6",
"flavorRef": "s2.large.2",
"name": "kla03",
"block_device_mapping_v2": [{
"source_type": "image",
"destination_type": "volume",
"uuid": "0a44cb5a-9fcf-49f0-9d32-505102ab5da6",
"delete_on_termination": "False",
"boot_index": "0",
"volume_type": "SAS",
"volume_size": "40"
}],
"security_groups": [{
"name": "sg-anyany"
}],
"networks": [{
"uuid": "66f9f277-da3d-4802-a5ac-ff98cc1308c4"
}],
"key_name": "kla-10491",
"availability_zone": "eu-de-01"
}
}

Result:
{
"badRequest": {
"message": "Block Device Mapping is Invalid: Boot sequence for the instance and image/block device mapping combination is not valid.",
"code": 400
}
}

@gardener-robot gardener-robot added the lifecycle/stale Nobody worked on this for 6 months (will further age) label Sep 29, 2020
@gardener-robot gardener-robot added priority/3 Priority (lower number equals higher priority) and removed priority/normal labels Mar 8, 2021
@r-ising
Copy link

r-ising commented May 6, 2021

Any update on this issue?

@berendt
Copy link

berendt commented Sep 17, 2021

They also don't use Octavia for LBaaS.

We are currently clarifying if we can adopt the issue to create an OpenStack based extension for the OTC.

@gtema
Copy link

gtema commented Sep 17, 2021

We are currently in progress of getting Octavia API to OTC (something like in few months). There might be still further adoption issues (it's gonna be Octavia API managing OTC LB with their features) but we are clearly moving in this direction and are open for concrete dialog.

@sphr2k
Copy link

sphr2k commented Jan 23, 2022

@gtema I noticed https://github.com/opentelekomcloud-infra/octavia-proxy/ a while ago. Really looking forward to Octavia being supported on OTC. Do you have an ETA for the project?

Also, are you aware of any plans to implement PROXY protocol support for OTC ELB v3? As it is, there is no way to get the actual client IP when using the ELB.

@berendt
Copy link

berendt commented Jan 24, 2022

@sphr2k From our side, we plan to address the OTC extension when the Octavia proxy is in place. We won't spend any time on v3, since it is foreseeable that the proxy function will come.

@gtema I would also be interested in the current status. A few months have passed in the meantime.

@gtema
Copy link

gtema commented Jan 24, 2022

Yeah, the time passes and things are still under question:

  • Octavia proxy as a solution is ready (from SW pov) and deployed for testing (no SLA, no API limits bypassing, etc)
  • we struggle to find resources currently to deploy it productively. Actially anybody is able to deploy container locally wherever and use it specifying octavia_endpoint_override in the clouds.yaml (at least this is exactly how we test it now)
  • we can theoretically mark it as "beta" without SLA and with potential to face API throttling limits and register it in the service catalog. Here I still need mgmt approval.
  • I have no information about proxy support. Neither I have information when elbv3 may become available in the eu-de region

@sphr2k
Copy link

sphr2k commented Feb 18, 2022

@gtema Thanks for the feedback. I tried the proxy locally. Is it also possible to deploy it on K8s? I couldn't find an endpoint override parameter for OpenStack CCM.

@gtema
Copy link

gtema commented Feb 18, 2022

It is possible to deploy it on CCE without problems, but yes, absence of endpoint override in cloud provider is am issue

@sphr2k
Copy link

sphr2k commented Feb 19, 2022

@gtema Thanks - so can you give me a hint how to use it on OTC or is it not possible?

@berendt
Copy link

berendt commented Feb 19, 2022

A directly usable image is now available at quay.io/osism/otc-octavia-proxy:latest.

We will install the proxy next week and then test whether Gardener with the OTC does now directly work with the OpenStack extension.

@gtema
Copy link

gtema commented Feb 19, 2022

Our latest build images are at quay.io/opentelekomcloud/octavia-proxy

@sphr2k
Copy link

sphr2k commented Feb 19, 2022

@berendt Thanks for the hint. What I meant was: is it possible to use Octavia Proxy on Kubernetes with Openstack CCM? How would I tell the CCM to go though the proxy?

@gardener-robot gardener-robot added lifecycle/rotten Nobody worked on this for 12 months (final aging stage) and removed lifecycle/stale Nobody worked on this for 6 months (will further age) labels Aug 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/control-plane Control plane related area/os Operation system related kind/enhancement Enhancement, improvement, extension lifecycle/rotten Nobody worked on this for 12 months (final aging stage) platform/openstack OpenStack platform/infrastructure priority/3 Priority (lower number equals higher priority)
Projects
None yet
Development

No branches or pull requests

7 participants