Open mcbenjemaa opened 1 month ago
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?
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.
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?
Yes Qcow2 images are expected.
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
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 https://github.com/coreos/ignition/pull/1957