Cloud-init for automatic install?

I’m trying to wrap my head around how I can add RancherOS nodes to my cluster with the minimum amount of upfront configuration. From the sound of it, I can use cloud-init for that purpose, but I’m trying to understand how I pass the cloud-init configs to the RancherOS image at first boot (or otherwise without having to log in manually), as well as where secret information (like user passwords) are added into the cloud-init configs (especially if cloud-init configs are baked into the image)? Unfortunately this is the first time I’ve done something like this, so I’m not familiar with cloud-init or the terminology around what I’m trying to do, so I apologize for my lack of clarity.

1 Like

When I ran into this problem I just used the CentOS container, installed nfs-utils from yum and mounted a drive on NFS

I am interested in this as I created a user_data script in AWS as part of my scaling launch config and it looks like it doesn’t get injected.

I use https://github.com/SvenDowideit/bin-dir/blob/master/cloud-configs/airgap/install-bastion.sh as the cloud-init when booting from PXE or ISO - it does the installation and it was possible to partition the disk in there, and then use the -p (iirc) option to ros-install to install to it.

user_data on aws should also work - but that script would need to be written not to install, but there, the install is already done, and the script can only really adjust the existing install.