[Puppet Users] Re: GSoC - Introducing myself
Hello, My name is Carla, and I am one of Google Summer of Code 2010 students selected to work on Puppet this summer. My proposal is to develop types for management of virtual machines, initially focus on Xen and KVM. Cool, I'm looking forward to check out your work ! Just wondering if there are plans to use libvirt, which supports much more systems than just xen and kvm ? It even seems to have ruby bindings. Marc -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: GSoC - Introducing myself
Hi! On Thu, May 6, 2010 at 3:17 PM, Marc Fournier marc.fourn...@camptocamp.comwrote: Cool, I'm looking forward to check out your work ! Just wondering if there are plans to use libvirt, which supports much more systems than just xen and kvm ? It even seems to have ruby bindings. Marc Yes, I will use libvirt. Initially I plan to test it using XEN and KVM, and then further technologies will be added =) --Carla -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: GSoC - Introducing myself
Hi Carla, I am currently working on a noder type that I will use to model cloud provisioning with puppet. It would be nice if we could use the same type specification. Let me get what I have checked in to github so you can at least have a peek at the specification. Also, here is a primitive example of virtual machine modeling in Puppet lang. http://github.com/puppetlabs/puppetlabs-nodes -Dan On Thu, May 6, 2010 at 11:44 AM, Carla Araujo carla.aso...@gmail.comwrote: Hi! On Thu, May 6, 2010 at 3:17 PM, Marc Fournier marc.fourn...@camptocamp.com wrote: Cool, I'm looking forward to check out your work ! Just wondering if there are plans to use libvirt, which supports much more systems than just xen and kvm ? It even seems to have ruby bindings. Marc Yes, I will use libvirt. Initially I plan to test it using XEN and KVM, and then further technologies will be added =) --Carla -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.compuppet-users%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: GSoC - Introducing myself
Hello Dan, On Thu, May 6, 2010 at 3:50 PM, Dan Bode d...@puppetlabs.com wrote: Hi Carla, I am currently working on a noder type that I will use to model cloud provisioning with puppet. It would be nice if we could use the same type specification. Let me get what I have checked in to github so you can at least have a peek at the specification. Also, here is a primitive example of virtual machine modeling in Puppet lang. http://github.com/puppetlabs/puppetlabs-nodes -Dan Very interesting! Thank you for sharing this with me. Let's keep in touch to discus that. -Carla -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: GSoC - Introducing myself
On Thu, May 6, 2010 at 2:50 PM, Dan Bode d...@puppetlabs.com wrote: Hi Carla, I am currently working on a noder type that I will use to model cloud provisioning with puppet. It would be nice if we could use the same type specification. Let me get what I have checked in to github so you can at least have a peek at the specification. Also, here is a primitive example of virtual machine modeling in Puppet lang. http://github.com/puppetlabs/puppetlabs-nodes -Dan Can you give some examples of your system in practice Dan? I'm confused as to why the YAML is there as an intermediate layer. Ideally I want to be able to do something like this on a host: virt { vmname = 'example-host', virt_ram = 512, # Megs, changeable install_kernel = '/path/to/vmlinuz', install_initrd = '/path/to/initrd.img', virt_disk_size = 100 # GB, not changeable ensure = running, autoboot = true, } FYI, some things I want to make sure we can do: * install qemu and KVM guests * install Xen guests both fullvirt and paravirt * kernel + initrd installs (not image based) if the given VM name does not exist (if we do images, we do them second). * change RAM assigned to virtual machine * control virtual machine start/stop state as well as autoboot at next OS restart state * change number of virtual CPUs. Eventually we'll want to augment install_kernel and install_initrd to take an image, and then for bonus points, a cobbler profile or system name and a server address, in which case, it wouldn't need to supply any parameters other than the name of the profile/system. --Michael On Thu, May 6, 2010 at 11:44 AM, Carla Araujo carla.aso...@gmail.com wrote: Hi! On Thu, May 6, 2010 at 3:17 PM, Marc Fournier marc.fourn...@camptocamp.com wrote: Cool, I'm looking forward to check out your work ! Just wondering if there are plans to use libvirt, which supports much more systems than just xen and kvm ? It even seems to have ruby bindings. Marc Yes, I will use libvirt. Initially I plan to test it using XEN and KVM, and then further technologies will be added =) --Carla -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: GSoC - Introducing myself
On Thu, May 6, 2010 at 4:54 PM, Michael DeHaan mich...@puppetlabs.com wrote: On Thu, May 6, 2010 at 2:50 PM, Dan Bode d...@puppetlabs.com wrote: Hi Carla, I am currently working on a noder type that I will use to model cloud provisioning with puppet. It would be nice if we could use the same type specification. Let me get what I have checked in to github so you can at least have a peek at the specification. Also, here is a primitive example of virtual machine modeling in Puppet lang. http://github.com/puppetlabs/puppetlabs-nodes -Dan Can you give some examples of your system in practice Dan? I'm confused as to why the YAML is there as an intermediate layer. Ideally I want to be able to do something like this on a host: virt { vmname = 'example-host', virt_ram = 512, # Megs, changeable install_kernel = '/path/to/vmlinuz', install_initrd = '/path/to/initrd.img', virt_disk_size = 100 # GB, not changeable ensure = running, autoboot = true, } In the above, I mean: virt { vmname: } FYI, some things I want to make sure we can do: * install qemu and KVM guests * install Xen guests both fullvirt and paravirt * kernel + initrd installs (not image based) if the given VM name does not exist (if we do images, we do them second). * change RAM assigned to virtual machine * control virtual machine start/stop state as well as autoboot at next OS restart state * change number of virtual CPUs. Eventually we'll want to augment install_kernel and install_initrd to take an image, and then for bonus points, a cobbler profile or system name and a server address, in which case, it wouldn't need to supply any parameters other than the name of the profile/system. --Michael On Thu, May 6, 2010 at 11:44 AM, Carla Araujo carla.aso...@gmail.com wrote: Hi! On Thu, May 6, 2010 at 3:17 PM, Marc Fournier marc.fourn...@camptocamp.com wrote: Cool, I'm looking forward to check out your work ! Just wondering if there are plans to use libvirt, which supports much more systems than just xen and kvm ? It even seems to have ruby bindings. Marc Yes, I will use libvirt. Initially I plan to test it using XEN and KVM, and then further technologies will be added =) --Carla -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: GSoC - Introducing myself
On Thu, May 6, 2010 at 1:54 PM, Michael DeHaan mich...@puppetlabs.comwrote: On Thu, May 6, 2010 at 2:50 PM, Dan Bode d...@puppetlabs.com wrote: Hi Carla, I am currently working on a noder type that I will use to model cloud provisioning with puppet. It would be nice if we could use the same type specification. Let me get what I have checked in to github so you can at least have a peek at the specification. Also, here is a primitive example of virtual machine modeling in Puppet lang. http://github.com/puppetlabs/puppetlabs-nodes -Dan thats not my creation, I just mentioned it because it exists. Can you give some examples of your system in practice Dan? I'm confused as to why the YAML is there as an intermediate layer. I am working on an EC2 type/provider, here is an example of its usage: noder{'blah': ensure = present, user = 'user', password = 'password', image = 'ami-84db39ed', desc = 'happy instance', } Ideally I want to be able to do something like this on a host: virt { vmname = 'example-host', virt_ram = 512, # Megs, changeable install_kernel = '/path/to/vmlinuz', install_initrd = '/path/to/initrd.img', virt_disk_size = 100 # GB, not changeable ensure = running, autoboot = true, } FYI, some things I want to make sure we can do: * install qemu and KVM guests * install Xen guests both fullvirt and paravirt * kernel + initrd installs (not image based) if the given VM name does not exist (if we do images, we do them second). * change RAM assigned to virtual machine * control virtual machine start/stop state as well as autoboot at next OS restart state * change number of virtual CPUs. Eventually we'll want to augment install_kernel and install_initrd to take an image, and then for bonus points, a cobbler profile or system name and a server address, in which case, it wouldn't need to supply any parameters other than the name of the profile/system. --Michael On Thu, May 6, 2010 at 11:44 AM, Carla Araujo carla.aso...@gmail.com wrote: Hi! On Thu, May 6, 2010 at 3:17 PM, Marc Fournier marc.fourn...@camptocamp.com wrote: Cool, I'm looking forward to check out your work ! Just wondering if there are plans to use libvirt, which supports much more systems than just xen and kvm ? It even seems to have ruby bindings. Marc Yes, I will use libvirt. Initially I plan to test it using XEN and KVM, and then further technologies will be added =) --Carla -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.compuppet-users%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.compuppet-users%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.compuppet-users%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: GSoC - Introducing myself
I am working on an EC2 type/provider, here is an example of its usage: noder{'blah': ensure = present, user = 'user', password = 'password', image = 'ami-84db39ed', desc = 'happy instance', } your noder example looks good ... you could add a virt_type and not use a lot of the fields when doing non-EC2/cloud. A big part of what I want to do is to not require using the images, so that's definitely going to be a new thing. (It also requires a new field kernel_options ...) If it's in a branch there though with a separate provider (link), we could easily have Carla fork it and extend it. Providers could raise errors if they are used with incompatible arguments. --Michael -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: GSoC - Introducing myself
On Thu, May 6, 2010 at 5:21 PM, Michael DeHaan mich...@puppetlabs.com wrote: I am working on an EC2 type/provider, here is an example of its usage: noder{'blah': ensure = present, user = 'user', password = 'password', image = 'ami-84db39ed', desc = 'happy instance', } your noder example looks good ... you could add a virt_type and not use a lot of the fields when doing non-EC2/cloud. A big part of what I want to do is to not require using the images, so that's definitely going to be a new thing. (It also requires a new field kernel_options ...) If it's in a branch there though with a separate provider (link), we could easily have Carla fork it and extend it. Providers could raise errors if they are used with incompatible arguments. --Michael Here's what I mean by virt type: noder { provider = 'libvirt', virt_type = 'qemu' } The idea is that we could reuse the one provider to do all the libvirt development, and EC2 could be a different provider. (Optionally, we could create a libvirt library, and have providers for EC2, xen, and qemu seperately, but they share way so much in common). (Also for those that don't know, qemu is the virt type underlying KVM. If kvm-intel or an equivalent kernel module is present, /dev/kvm exists, and the OS is then accelerated. Xen paravirt works a little differently, meaning it isn't accelerated, but requires a specially modified OS. Xen fullvirt can use any OS, but requires special hardware. When using Xen, we'd also need to pass around paravirt = true or paravirt = false. Virtualization is complicated. Fun, but complicated :) -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.