I have a question on this. In the above example I see only one node that was used for deployment through custom boot iso but in case there are multiple nodes? the same kickstart iso cannot be used right. because the IP address for each node would be different. how to dynamically build VMs by reading IPs dynamically?
On Monday, 29 February 2016 06:55:20 UTC+5:30, Jason Hiatt wrote: > > The kickstart path should be set in your ISO > > It should look something like ks=http://example.com/ks.php kssendmac > > The kssendmac parameter sends the VMs MAC address to the kickstart file. > > Here is an example play and and scripts I use. > > > https://github.com/OneMainF/vmware-rhel-server-builder/blob/master/example_build.yaml > > Hope this helps. > > On Feb 28, 2016, at 11:39, afroz. khan <[email protected] <javascript:>> > wrote: > > Hi Jason, > > Thanks for your quick response.... > Now i have made custom iso of linux. and upload it esxi datastore. do i > need to add any parameter in ansible playbook for kickstart or just need to > run same play book after define the customer iso path ? > > vm_cdrom: > type: "iso" > iso_path: "*datastore1/boot.iso"* > > *boot.iso* is a RHEL 7 iso file which i have customized.. > > > Regards, > Afroz Khan > > > On Sat, Feb 27, 2016 at 6:06 AM, Jason Hiatt <[email protected] > <javascript:>> wrote: > >> You will need to open up the ISO and add a few parameters to boot config. >> >> I added the location of my dynamic kickstart web service (ks= >> http://example.com/ks.php) and the kssendmac parameter. >> >> Once you modify that file recreate your ISO. >> This link should help. >> >> >> http://www.softpanorama.org/Commercial_linuxes/RHEL/Installation/Kickstart/modifing_iso_image_to_include_kickstart_file.shtml >> >> Copy the new iso to your data store and reference it you Ansible play. >> >> On Feb 26, 2016, at 14:31, [email protected] <javascript:> wrote: >> >> Hi Mark, >> >> bit confusion, need your suggestion... >> >> i made a play book to create vm machine and attached iso_path. when i >> run the playbook it creates a vm automatically boot from rhel6 iso. >> if it is booting from iso automatically then why i need to use pxe ? can >> i install rhel6 OS by kickstart ? if yes then what more syntax i need to >> define in my script. >> please find the below mentioned my playbook and suggest me the right way. >> >> --- >> - name: create some vms >> hosts: localhost >> connection: local >> vars_prompt: >> - name: "vcenter_host" >> prompt: "Enter vcenter host" >> private: no >> default: "vcsa" >> - name: "vcenter_user" >> prompt: "Enter vcenter username" >> private: no >> - name: "vcenter_pass" >> prompt: "Enter vcenter password" >> private: yes >> - name: "vcenter_datacenter" >> prompt: "Enter datacenter name" >> private: no >> - name: "vcenter_datastore" >> prompt: "Enter datastore name" >> private: no >> - name: "esxi_host" >> prompt: "Enter vsphere host" >> private: no >> vars: >> # - vcenter_folder: 'beta' >> - vms: >> - guest: 'test04' >> state: 'powered_on' >> vcpu_hotadd: 'yes' >> mem_hotadd: 'yes' >> notes: 'Ansible Created' >> num_disks: '1' >> disks: >> disk1: >> size: '10' >> type: 'thin' >> network: 'VM Network' >> memory: '1024' >> cpus: '1' >> osid: 'rhel6_64Guest' >> tasks: >> - name: create vms (Single Disk) >> vsphere_guest: >> vcenter_hostname: "{{ vcenter_host }}" >> username: "{{ vcenter_user }}" >> password: "{{ vcenter_pass }}" >> guest: "{{ item.guest }}" >> state: "{{ item.state }}" >> vm_extra_config: >> vcpu.hotadd: "{{ item.vcpu_hotadd|default(omit) }}" >> mem.hotadd: "{{ item.mem_hotadd|default(omit) }}" >> notes: "{{ item.notes|default(omit) }}" >> # folder: "{{ vcenter_folder }}" >> vm_disk: >> disk1: >> size_gb: "{{ item.disks.disk1.size }}" >> type: "{{ item.disks.disk1.type }}" >> datastore: "{{ vcenter_datastore }}" >> # folder: "{{ vcenter_folder }}" >> vm_nic: >> nic1: >> type: "vmxnet3" >> network: "{{ item.network }}" >> network_type: "standard" >> vm_hardware: >> memory_mb: "{{ item.memory }}" >> num_cpus: "{{ item.cpus }}" >> osid: "{{ item.osid }}" >> scsi: "paravirtual" >> vm_cdrom: >> type: "iso" >> iso_path: "datastore1/rhel-server-6.6-x86_64-dvd.iso" >> esxi: >> datacenter: "{{ vcenter_datacenter }}" >> hostname: "{{ esxi_host }}" >> with_items: vms >> when: item.num_disks == '1' >> >> >> On Wednesday, November 11, 2015 at 10:48:29 PM UTC+5:30, Mark Phillips >> wrote: >>> >>> Hello Mihai, >>> >>> Well, it's two other products there that are in effect needing control >>> of. You need vSphere to interact with the Linux boot disc menu - so not >>> easy, really. >>> >>> See my earlier post in this thread - set up a network boot (PXE) and >>> have two menu items. Or, alternatively, use something like iPXE ( >>> http://ipxe.org) to make a specific boot disc image which you 'insert' >>> into the VMware VM CDROM to boot. >>> >>> Cheers >>> >>> On Wednesday, 11 November 2015 16:58:00 UTC, Mihai Cristian Satmarean >>> wrote: >>>> >>>> Thanks Mark, >>>> We are already doing both, I thought that there is a module or an >>>> Ansible trick that you can specify the boot parameter in the vsphere boot >>>> :) that would be helpful. >>>> >>>> >>>> vineri, 6 noiembrie 2015, 18:33:56 UTC+1, Mark Phillips a scris: >>>>> >>>>> If it's from a CD boot Mihai just hit 'tab' then put ks= as Michael >>>>> suggested. >>>>> >>>>> Otherwise, with PXE boot you can specify the option on the kernel >>>>> line, like: >>>>> >>>>> kernel -n img >>>>> http://ks.internal/centos/7/os/x86_64/images/pxeboot/vmlinuz ks= >>>>> http://ks.internal/bootstrap/ks/7.ks >>>>> >>>>> On Friday, 6 November 2015 16:19:23 UTC, Mihai Cristian Satmarean >>>>> wrote: >>>>>> >>>>>> @Michael, thanks! This might be exactly what I am looking for in this >>>>>> stage, but I cannot find an example of how to insert the arguments at >>>>>> boot >>>>>> to point to the remote kickstart. >>>>>> >>>>>> Mihai Satmarean >>>>>> >>>>>> miercuri, 7 ianuarie 2015, 18:10:38 UTC+1, Michael DeHaan a scris: >>>>>>> >>>>>>> If you don't want to bake in the ks.cfg (for instance, if you have >>>>>>> different install profiles coming off the same OS), supplying the >>>>>>> kernel >>>>>>> argument ks=http://server.example.com/foo.ks also works. >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Wed, Jan 7, 2015 at 11:28 AM, Earl Robinson <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Parimal, >>>>>>>> >>>>>>>> To use kickstart you first need to present a boot media which is >>>>>>>> configured to pull the kickstart file >>>>>>>> See: >>>>>>>> http://www.centos.org/docs/5/html/5.2/Installation_Guide/s1-kickstart2-howuse.html >>>>>>>> >>>>>>>> You can use ansible to present the VM with such bootable media by >>>>>>>> launching it in a VLAN with a PXE boot server which will present the >>>>>>>> media, >>>>>>>> or by presenting the VM with a CD image with the kickstart file built >>>>>>>> in. >>>>>>>> >>>>>>>> I've gone the CD image route with ansible, you can specify a cd >>>>>>>> image to boot like this: >>>>>>>> >>>>>>>> vsphere_guest: >>>>>>>> vm_hardware: >>>>>>>> vm_cdrom: >>>>>>>> type: "iso" >>>>>>>> iso_path: "DatastoreName/cd-image.iso" >>>>>>>> >>>>>>>> Of course you need to give the vsphere_guest module all other >>>>>>>> required arguments, but this is the simplest way I've found to >>>>>>>> kiskstart a >>>>>>>> vm using ansible. >>>>>>>> >>>>>>>> -earl >>>>>>>> >>>>>>>> >>>>>>>> On Tue, Jan 6, 2015 at 4:07 AM, Patel Parimal <[email protected] >>>>>>>> > wrote: >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> I am newbie to Ansible. >>>>>>>>> >>>>>>>>> I have gone through the online documentation and examples for >>>>>>>>> creating new VM on Ansible Docs - vsphere_guest ( >>>>>>>>> http://docs.ansible.com/vsphere_guest_module.html). >>>>>>>>> >>>>>>>>> I want to automate VM creation and OS installation process using >>>>>>>>> Ansible. >>>>>>>>> >>>>>>>>> Currently I have VMWare ESXi available which doesn't support VM >>>>>>>>> cloning, so I need to create a new VM every time from scratch and >>>>>>>>> install >>>>>>>>> OS(RHEL 6) into it. >>>>>>>>> >>>>>>>>> Is there any way to provide kickstart file URL in Ansible Playbook >>>>>>>>> (for example, static HTTP URL like http://192.168.0.1/ks/ks.cfg) >>>>>>>>> so after newly built VM is powered on, OS will be installed into it ? >>>>>>>>> >>>>>>>>> Thanks and regards, >>>>>>>>> Parimal >>>>>>>>> >>>>>>>>> -- >>>>>>>>> You received this message because you are subscribed to the Google >>>>>>>>> Groups "Ansible Project" group. >>>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>>> send an email to [email protected]. >>>>>>>>> To post to this group, send email to [email protected]. >>>>>>>>> To view this discussion on the web visit >>>>>>>>> https://groups.google.com/d/msgid/ansible-project/da56aeef-01f0-41f6-8dc9-3cd1bdd138d5%40googlegroups.com >>>>>>>>> >>>>>>>>> <https://groups.google.com/d/msgid/ansible-project/da56aeef-01f0-41f6-8dc9-3cd1bdd138d5%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>>> . >>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> You received this message because you are subscribed to the Google >>>>>>>> Groups "Ansible Project" group. >>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>> send an email to [email protected]. >>>>>>>> To post to this group, send email to [email protected]. >>>>>>>> To view this discussion on the web visit >>>>>>>> https://groups.google.com/d/msgid/ansible-project/CABGf5APRF_HeN%3Dgyvh0UGdBP%2BV8AeLsaXZZR1SYX833C17wrkQ%40mail.gmail.com >>>>>>>> >>>>>>>> <https://groups.google.com/d/msgid/ansible-project/CABGf5APRF_HeN%3Dgyvh0UGdBP%2BV8AeLsaXZZR1SYX833C17wrkQ%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>> . >>>>>>>> >>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>> >>>>>>> >>>>>>> -- >> You received this message because you are subscribed to a topic in the >> Google Groups "Ansible Project" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/ansible-project/Holm0CFBbLo/unsubscribe >> . >> To unsubscribe from this group and all its topics, send an email to >> [email protected] <javascript:>. >> To post to this group, send email to [email protected] >> <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/ansible-project/6fe8e245-4544-4310-a31a-e4ff2eed8f18%40googlegroups.com >> >> <https://groups.google.com/d/msgid/ansible-project/6fe8e245-4544-4310-a31a-e4ff2eed8f18%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> >> -- >> You received this message because you are subscribed to a topic in the >> Google Groups "Ansible Project" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/ansible-project/Holm0CFBbLo/unsubscribe >> . >> To unsubscribe from this group and all its topics, send an email to >> [email protected] <javascript:>. >> To post to this group, send email to [email protected] >> <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/ansible-project/4E8116A2-4337-4ED7-ADD5-5E7ABA9742CF%40gmail.com >> >> <https://groups.google.com/d/msgid/ansible-project/4E8116A2-4337-4ED7-ADD5-5E7ABA9742CF%40gmail.com?utm_medium=email&utm_source=footer> >> . >> >> For more options, visit https://groups.google.com/d/optout. >> > > -- > You received this message because you are subscribed to a topic in the > Google Groups "Ansible Project" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/ansible-project/Holm0CFBbLo/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected] <javascript:>. > To post to this group, send email to [email protected] > <javascript:>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/ansible-project/CABrh7Bo6eNfb-o1yVMmd%2B5BeRUba9XXsC7YsU7o6_PNVVob3Kw%40mail.gmail.com > > <https://groups.google.com/d/msgid/ansible-project/CABrh7Bo6eNfb-o1yVMmd%2B5BeRUba9XXsC7YsU7o6_PNVVob3Kw%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > > -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/193becaa-3b8c-49f3-b417-d4a58265bae5%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
