[ovirt-users] Custom Cloud-Init script only partially executing
routh at amateurwriting.net
Sun Oct 12 21:23:23 UTC 2014
On 2014-10-12 12:54, Chris Routh wrote:
> On 2014-10-12 09:17, Omer Frenkel wrote:
>> ----- Original Message -----
>>> From: "Chris Routh" <routh at amateurwriting.net>
>>> To: users at ovirt.org
>>> Sent: Wednesday, October 8, 2014 1:42:53 PM
>>> Subject: [ovirt-users] Custom Cloud-Init script only partially
>>> I'm trying to get the custom cloud-init script section in my site to
>>> run. My goal is to have the VM run 'yum update', add the PuppetLabs
>>> repository, and then install the latest puppet agent, and join it to
>>> Following the docs for oVirt and Cloud-Init I have this:
>>> BEGIN SCRIPT
>>> # The name of the repository
>>> enabled: true
>>> failovermethod: priority
>>> gpgcheck: true
>>> gpgkey: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs
>>> name: Puppet Labs repository for Enterprise Linux 6
>>> # Upgrade the instance on first boot
>>> package_upgrade: true
>>> # Install additional packages on first boot
>>> - puppet
>>> # Automatically setup and run puppetd
>>> server: "puppet.example.com"
>>> certname: "%f"
>>> ca_cert: |
>>> -----BEGIN CERTIFICATE-----
>>> < My Cert >
>>> -----END CERTIFICATE-----
>>> END SCRIPT
>>> However what I end up with from this is:
>>> - No Yum update
>>> - No added repository
>>> - Puppet gets installed from the default repos
>>> - No attempt to join
>>> According to the cloud-init docs my code is correct, however oVirt is
>>> not respecting anything, with the sole exception being the
>>> argument. Can someone please explain?
>>> Also, I have combed the script and ensured that the indentation was 4
>>> spaces, and not tabs. I noted that previous users in this mailing
>>> have had that issue before.
>> the custom script should be sent as-is to the vm,
>> you can check what is actually attached to the vm,
>> just mount the "config-2" cd rom and look for it under
>> please update if it somehow sent wrong
>>> Users mailing list
>>> Users at ovirt.org
> I have gotten much farther in troubleshooting this thanks to your
> help. I managed to find the config-2 cdrom by using 'blkid' and then
> mounted it. I see that my code is correct. I was then able to run the
> script manual with debug mode and being some trial and error
> I managed to figure out that in order for my script to work, I needed
> two extra modules added to /etc/cloud/cloud.cfg:
> - yum-add-repo
> - package-update-upgrade-install
> Now, while that allows me to fix the issue with a manual run after the
> VM has been created, it doesn't really cure the root issue.
> How do I add these modules to the cdrom-2 so that this will work
> without intervention on the first run?
> I'm using the ovirt-image-repository CentOS-6.5 image as a template.
> Is the issue in the image? Or the cdrom? Will creating a custom
> template help?
> Users mailing list
> Users at ovirt.org
After further investigation it appears the problem is in the config of
the Glance image for CentOS in the ovirt-image-repository.
Is there a way to load these modules with a setting in ovirt? Or can we
request that these modules be enabled in the Glance image?
More information about the Users