[Openstack-operators] CentOS image

Lorin Hochstein lorin at nimbisservices.com
Wed Jul 3 17:15:46 UTC 2013


Yeah, I'm vaguely aware of it, but it's a little lacking in documentation
about how to use any of the pieces. I should probably take a closer look.


On Tue, Jul 2, 2013 at 3:53 PM, Brian Schott <
brian.schott at nimbisservices.com> wrote:

> Are you guys following Disk Image Builder project?
> https://github.com/stackforge/diskimage-builder
> I saw a bug related to udev rules for Fedora.
>
> -------------------------------------------------
> Brian Schott, CTO
> Nimbis Services, Inc.
> brian.schott at nimbisservices.com
> ph: 443-274-6064  fx: 443-274-6060
>
>
>
> On Jul 2, 2013, at 3:15 PM, Lorin Hochstein <lorin at nimbisservices.com>
> wrote:
>
> Hi Joe:
>
> Ah, gotcha. No, you couldn't use virt-sysprep from inside of the instance.
> It only works on VMs that are shutdown.
>
> It's a shame that virt-sysprep doesn't completely remove the relevant udev
> rules generator entirely.
>
> Lorin
>
>
> On Tue, Jul 2, 2013 at 3:06 PM, Joe Topjian <joe.topjian at cybera.ca> wrote:
>
>> Hi Lorin,
>>
>> Right, virt-sysprep is used in Dean's build script to create the initial
>> image. The issue I see is when an instance is created from the image and
>> then a snapshot is created -- unless the udev rules are manually removed
>> prior to snapshot creation, they will still exist for each instance based
>> off of the snapshot and so the virtual NICs won't get named properly.
>>
>> Maybe virt-sysprep can be run from inside the instance? If so, it still
>> requires all users to manually run it prior to snapshotting. This is why
>> I've gone and just disabled udev rule entries for all NICs (based on a
>> KVM-based MAC address).
>>
>> Joe
>>
>>
>> On Tue, Jul 2, 2013 at 12:31 PM, Lorin Hochstein <
>> lorin at nimbisservices.com> wrote:
>>
>>> Joe:
>>>
>>> That's great news, I'd like to update the image guide with info on how
>>> to do a fully scripted creation of CentOS images that resize properly.
>>>
>>> For udev, there's a great tool called "virt-sysprep" from libguestfs
>>> project. It will remove the MAC address from udev as well as clean up
>>> various other things: http://libguestfs.org/virt-sysprep.1.html
>>>
>>> Lorin
>>>
>>>
>>> On Tue, Jul 2, 2013 at 2:13 PM, Joe Topjian <joe.topjian at cybera.ca>wrote:
>>>
>>>> Hi Lorin,
>>>>
>>>> I was working on this the week before last and ran into the same
>>>> problems you've described. I was on vacation last week, but before I left,
>>>> I had a solution that I'm 99% happy with -- I just need to do some final
>>>> testing.
>>>>
>>>> Dean Troyer has some great CentOS build scripts here<https://github.com/dtroyer/image-recipes>.
>>>> These scripts will build a CentOS image on the fly from start to finish.
>>>> The only issue I ran into was with udev: On first boot, udev will record
>>>> the MAC addresses of the virtual NIC(s) in the instance. If you create a
>>>> snapshot, these records are not removed and so udev renames the interfaces
>>>> to something else.
>>>>
>>>> Here is my fork <https://github.com/jtopjian/image-recipes> of the
>>>> scripts which resolves this udev issue.
>>>>
>>>> If you use these scripts, let me know if you run into any issues. I
>>>> hope to finish up my testing either this week or next week and finally have
>>>> a good (on par with Ubuntu) CentOS cloud image -- even better that it can
>>>> be generated on the fly and receive all current updates.
>>>>
>>>> Joe
>>>>
>>>>
>>>> On Sun, Jun 30, 2013 at 12:46 PM, Lorin Hochstein <
>>>> lorin at nimbisservices.com> wrote:
>>>>
>>>>> Robert:
>>>>>
>>>>> This script doesn't support LVM partitions, does it?
>>>>>
>>>>> Also, I've discovered that it breaks if there's a /boot partition.
>>>>> Apparently, if a boot partition is present then grub prepends a "/boot" to
>>>>> the paths for the kernel and ramdisk, and this script also prepends /boot.
>>>>>
>>>>> Lorin
>>>>>
>>>>>
>>>>> On Tue, Jun 11, 2013 at 8:38 AM, Robert Plestenjak <
>>>>> robert.plestenjak at xlab.si> wrote:
>>>>>
>>>>>> Almost forgot, don't forget to install 'wget' and 'openssh-clients'
>>>>>>
>>>>>> - Robert
>>>>>>
>>>>>> ----- Original Message -----
>>>>>> From: "Robert Plestenjak" <robert.plestenjak at xlab.si>
>>>>>> To: openstack-operators at lists.openstack.org
>>>>>> Sent: Tuesday, June 11, 2013 11:35:01 AM
>>>>>> Subject: Re: [Openstack-operators] CentOS image
>>>>>>
>>>>>> Yes, that would be great.
>>>>>>
>>>>>> You can also create image manually in KVM, until proper tools are
>>>>>> ready.
>>>>>>
>>>>>> 1. create disk image with QCOW2 format
>>>>>>
>>>>>> qemu-img create -f qcow2 -o preallocation=metadata
>>>>>> /extra/libvirt/images/centos-6-cloud.qcow2 2G
>>>>>>
>>>>>> 2. install centos, I recomend only one partition and no swap (in
>>>>>> grizzly, you can set swap size in flavor)
>>>>>>
>>>>>> virt-install --name=centos-6-cloud --disk
>>>>>> path=/extra/libvirt/images/centos-6-cloud.qcow2,format=qcow2 -r 1024
>>>>>> --vcpus=1 --hvm -c /extra/iso/CentOS-6.3-x86_64-minimal.iso
>>>>>>
>>>>>> 3. login into your new image and modify
>>>>>> '/etc/sysconfig/network-scripts/ifcfg-eth0' to look like this
>>>>>>
>>>>>> DEVICE="eth0"
>>>>>> BOOTPROTO="dhcp"
>>>>>> NM_CONTROLLED="no"
>>>>>> ONBOOT="yes"
>>>>>> TYPE="Ethernet"
>>>>>>
>>>>>> 4. add EPEL repository and update OS
>>>>>>
>>>>>> wget
>>>>>> http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
>>>>>> rpm -ivh epel-release-6-8.noarch.rpm
>>>>>>
>>>>>> 5. install cloud-utils and cloud-init
>>>>>>
>>>>>> yum update
>>>>>> yum install cloud-utils, cloud-init
>>>>>>
>>>>>> 6. Download 'centos-image-mod.sh' and 'init-part' together in same
>>>>>> directory, run 'centos-image-mod.sh'. This will modify initrd and grub.conf.
>>>>>>
>>>>>> 6.1. Edit '/boot/grub/grub.conf', check if everything is OK. Also,
>>>>>> may not be a bad idea to set timeout to 0.
>>>>>>
>>>>>> 7. Delete '/etc/udev/rules.d/70-persistent-net.rules', this will be
>>>>>> auto created during boot. Don't forget this, since you won't have
>>>>>> functional network when you bring this image up on Openstack.
>>>>>>
>>>>>> 8. Power down your virtual Centos
>>>>>>
>>>>>> 9. Compress QCOW2 image with
>>>>>>
>>>>>> qemu-img convert -c /extra/libvirt/images/centos-6-cloud.qcow2 -O
>>>>>> qcow2 /tmp/centos.qcow2
>>>>>>
>>>>>>
>>>>>> Image /tmp/centos.qcow2 is now ready for upload to Openstack
>>>>>>
>>>>>> - Robert
>>>>>>
>>>>>>
>>>>>> On 16 May 2013 21:08, Robert Plestenjak <robert.plestenjak at xlab.si>
>>>>>> wrote:
>>>>>> > This script will modify initrd for image resize during boot,
>>>>>> redirect boot log messages to ttyS0 and set NOOP sceduler. Tested on CentOS
>>>>>> 6.3 and 6.4.
>>>>>> >
>>>>>> > https://github.com/flegmatik/centos-image-resize
>>>>>>
>>>>>> This would be lovely to integrate into diskimage-builder [as part of a
>>>>>> CentOS supporting element].
>>>>>>
>>>>>> -Rob
>>>>>>
>>>>>> --
>>>>>> Robert Collins <rbtcollins at hp.com>
>>>>>> Distinguished Technologist
>>>>>> HP Cloud Services
>>>>>>
>>>>>> _______________________________________________
>>>>>> OpenStack-operators mailing list
>>>>>> OpenStack-operators at lists.openstack.org
>>>>>>
>>>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
>>>>>>
>>>>>> _______________________________________________
>>>>>> OpenStack-operators mailing list
>>>>>> OpenStack-operators at lists.openstack.org
>>>>>>
>>>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Lorin Hochstein
>>>>> Lead Architect - Cloud Services
>>>>> Nimbis Services, Inc.
>>>>> www.nimbisservices.com
>>>>>
>>>>> _______________________________________________
>>>>> OpenStack-operators mailing list
>>>>> OpenStack-operators at lists.openstack.org
>>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Joe Topjian
>>>> Systems Architect
>>>> Cybera Inc.
>>>>
>>>> www.cybera.ca
>>>>
>>>> Cybera is a not-for-profit organization that works to spur and support
>>>> innovation, for the economic benefit of Alberta, through the use
>>>> of cyberinfrastructure.
>>>>
>>>
>>>
>>>
>>> --
>>> Lorin Hochstein
>>> Lead Architect - Cloud Services
>>> Nimbis Services, Inc.
>>> www.nimbisservices.com
>>>
>>
>>
>>
>> --
>> Joe Topjian
>> Systems Architect
>> Cybera Inc.
>>
>> www.cybera.ca
>>
>> Cybera is a not-for-profit organization that works to spur and support
>> innovation, for the economic benefit of Alberta, through the use
>> of cyberinfrastructure.
>>
>
>
>
> --
> Lorin Hochstein
> Lead Architect - Cloud Services
> Nimbis Services, Inc.
> www.nimbisservices.com
>  _______________________________________________
> OpenStack-operators mailing list
> OpenStack-operators at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
>
>
>


-- 
Lorin Hochstein
Lead Architect - Cloud Services
Nimbis Services, Inc.
www.nimbisservices.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-operators/attachments/20130703/076b5a82/attachment.html>


More information about the OpenStack-operators mailing list