Re: Fedora @ Google Cloud

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jun 22, 2014 at 2:27 PM, Dennis Gilmore <dennis@xxxxxxxx> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On Sun, 22 Jun 2014 05:05:36 -0700
> Colin Walters <walters@xxxxxxxxxx> wrote:
>
>> On Wed, Jun 18, 2014, at 01:49 PM, Dennis Gilmore wrote:
>> >
>> > The issue is we are trying to build one image to run in all clouds,
>> > so cloud provider specific tools are out.
>>
>> I faced a similar problem with the images I am generating with ostree,
>> and what I ended up doing was producing a base image, and then
>> "postprocessing" it via libguestfs to enable/disable services.
>>
>> So if we did decide to ship the GCE agent software, it would be
>> possible to produce one cloud image with both cloud-init and GCE
>> agent, with *both disabled by default* (note requires changing
>> cloud-init package to stop auto-enabling itself)
>>
>> Then the script boils down to:
>>
>> $ cp fedora-cloud.qcow2 fedora-cloud-standard.qcow2
>> $ guestmount /path/to/fedora-cloud-standard.qcow2 /mnt
>> $ systemctl --root=/mnt/ enable cloud-init.service
>> $ fusermount -u /mnt
>>
>> $ cp fedora-cloud.qcow2 fedora-cloud-google.qcow2
>> $ guestmount /path/to/fedora-cloud-google.qcow2 /mnt
>> $ systemctl --root=/mnt/ enable google-daemon.service
>> $ fusermount -u /mnt
>>
>> Each takes literally just a second or two to execute and can be easily
>> scripted on a rel-eng server (though I guess you'd want to wrap mock
>> around it).
> It may not take long but its not an option. for a few reasons.
>
> 1) the image is intended to be just ran without tweaks
> 2) we publish the image on the mirrors and anyone using them will have
> to tweak it before using. which breaks at least openstack. you can
> point it at a mirror and it will pull in the cloud image and it just
> works.
> 3) it means having two systems installed in the image along with any
> unique deps. We are trying to make the base as small and unbloated as
> possible.
>
>
>> > extend the functionality of
>> > cloud-init if you feel its useful. Ideally its something that can
>> > work in all providers.
>>
>> All of the above said, I agree and would prefer investing in
>> cloud-init, even at the cost of the image deviating a bit from the
>> "GCE standard". Any other opinions?
>
> I strongly believe we need one way to do it. now having a hook to say
> start an extra service when it detects its being run in GCE i wouldn't
> object to. assuming that service is not huge.
>

This is very possible and should not be much work.  cloud-init already
is smart enough to determine it's on GCE and use the GCE data source
to grab data from the metadata service.  It's been a while since I've
dug into the cloud-init code, but it should be trivial write some
special metadata if the GCE datasource is active, and then have a
config module that starts services if those special metadata bits are
present (might mean writing to dbus or something to do it the "right"
way from systemd's perspective.)

Andy
_______________________________________________
cloud mailing list
cloud@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/cloud
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct





[Index of Archives]     [Fedora General Discussion]     [Older Fedora Users Archive]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Coolkey]     [Yum Users]     [Big List of Linux Books]     [Yosemite News]     [Linux Apps]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Asterisk PBX]

  Powered by Linux