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

Platform Request: IONOSCloud #1815

Open
mcbenjemaa opened this issue Oct 21, 2024 · 5 comments
Open

Platform Request: IONOSCloud #1815

mcbenjemaa opened this issue Oct 21, 2024 · 5 comments

Comments

@mcbenjemaa
Copy link

mcbenjemaa commented Oct 21, 2024

Why is the platform important? Who uses it?

IONOS Cloud is a widely used Cloud provider, all teams, companies running on IONOS, they would like to use COREOS and ignition

What is the official name of the platform? Is there a short name that's commonly used in client API implementations?

IONOS Cloud

How can the OS retrieve instance userdata? What happens if no userdata is provided?

IONOS Cloud injects a file into the Storage volume before booting the VM.
the default path is /var/lib/cloud/seed/nocloud/user-data

https://docs.ionos.com/cloud/compute-services/compute-engine/how-tos/boot-cloud-init

IONOS Cloud will work on building a metadata service, so we can add support for this as well. (but this is not happening soon)

Does the platform provide a way to configure SSH keys for the instance? How can the OS retrieve them? What happens if none are provided?

The ssh keys are selected from a set of previously uploaded keys within the platform when the image is started.
if none are provided we still can have a password auth.

How can the OS retrieve network configuration? Is DHCP sufficient, or is there some other network-accessible metadata service?

IONOS Cloud is based on QEMU.
DHCP, along with static IPs,

In particular, how can the OS retrieve the system hostname?

IONOS Cloud by default, sets the hostname as the machine name, but we can customize it via the userdata

Does the platform require the OS to have a specific console configuration?

No

Is there a mechanism for the OS to report to the platform that it has successfully booted? Is the mechanism required?

TBD

Does the platform have an agent that runs inside the instance? Is it required? What does it do? What language is it implemented in, and where is the source code repository?

no agent.

How are VM images uploaded to the platform and published to other users? Is there an API? What disk image format is expected?

The VM images are uploaded to a FTP

Are there any other platform quirks we should know about?

No response

ignition Ref coreos/ignition#1957

@travier
Copy link
Member

travier commented Oct 22, 2024

Does the platform provide a way to configure SSH keys for the instance? How can the OS retrieve them? What happens if none are provided?

Yes, the platform also injects SSH keys in the volume.

How does it figure out which user to inject the keys to?

@tuunit
Copy link

tuunit commented Oct 23, 2024

Does the platform provide a way to configure SSH keys for the instance? How can the OS retrieve them? What happens if none are provided?

Yes, the platform also injects SSH keys in the volume.

How does it figure out which user to inject the keys to?

@travier as of now the default account ssh key is injected into the /var/lib/cloud/nocloud/seed/meta-data file. Which is normally used by cloud-init based distros to load into the root user. The files content could be used by a custom ignition script to load into which ever user is desired. If no SSH key is provided, no injection will happen and the VM will start without any pre-boot modification.

@travier
Copy link
Member

travier commented Oct 23, 2024

How are VM images uploaded to the platform and published to other users? Is there an API? What disk image format is expected?

The VM images are uploaded to a FTP

Can you confirm that QCOW2 is expected, compressed or not? Would RAW also work?

@mcbenjemaa
Copy link
Author

Yes Qcow2 images are expected.

@tuunit
Copy link

tuunit commented Nov 6, 2024

How are VM images uploaded to the platform and published to other users? Is there an API? What disk image format is expected?

The VM images are uploaded to a FTP

Can you confirm that QCOW2 is expected, compressed or not? Would RAW also work?

https://docs.ionos.com/cloud/storage-and-backup/block-storage/images-snapshots/private-images

https://www.ionos.com/help/server-cloud-infrastructure/images/importing-an-image/

Compatible image formats:

VMWare disk image
Microsoft disk image
RAW disk image
QEMU QCOW image
UDF file system
Parallels disk image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants