[Users] Cloud-init for Windows

Tejesh M tejeshmk at gmail.com
Mon Apr 7 13:59:16 UTC 2014


Hi,

I tried as you suggested, but floppy is not getting attached it seems.
below is the code



*Steps followed:*

I. Create windows VM
II. installed host agent
III. *To seal a Windows virtual machine with sysprep*

   1. In the Windows virtual machine to be used as a template, open a
   command line terminal and type *regedit*.
   2. The *Registry Editor* window displays. On the left pane, expand
   *HKEY_LOCAL_MACHINE* → *SYSTEM* → *SETUP*.
   3. On the main window, right click to add a new string value using
*New*→ *String
   Value*. Right click on the string value file and select *Modify*. When
   the *Edit String* dialog box displays, fill in the provided text boxes:
      - Value name: UnattendFile
      - Value data: a:\sysprep.xml
   4. Launch sysprep from C:\Windows\System32\sysprep\sysprep.exe
      - Under *System Cleanup Action*, select *Enter System
      Out-of-Box-Experience (OOBE)*.
      - Tick the *Generalize* checkbox if you need to change the computer's
      system identification number (SID).
      - Under *Shutdown Options*, select *Shutdown*.

Click *OK*. The virtual machine will now go through the sealing process and
shut down automatically.



IV.


  org.ovirt.engine.sdk.decorators.VM vm1 =  api.getVMs().get(vmName);
  Payloads payloads = new Payloads();
  Payload payload = new Payload();
  payload.setType("floppy");

  Files payloadFiles = new Files();
  File payloadFile = new File();
  payloadFile.setName("sysprep.xml");
  payloadFile.setContent("<?xml version=\"1.0\" encoding=\"utf-8\"?>
<unattend xmlns=\"urn:schemas-microsoft-com:unattend\"> *FILE CONTENT *
"</unattend>");
  payloadFiles.getFiles().add(payloadFile);
  payload.setFiles(payloadFiles);
  vm1.setPayloads(payloads);
  Action action = new Action();
  vm1.start(action);



On Thu, Mar 27, 2014 at 3:52 PM, Itamar Heim <iheim at redhat.com> wrote:

> On 03/27/2014 06:18 AM, Tejesh M wrote:
>
>> Can you guide me on sysprep with sample code & sysprep file?
>>
>>
> just launch a windows VM, look at the generated sysprep file we pass to
> the VM via the floppy disk.
> then pass it as a payload as-is.
> then try to change what you want.
>
>
>> On Thu, Mar 27, 2014 at 3:16 PM, Itamar Heim <iheim at redhat.com
>> <mailto:iheim at redhat.com>> wrote:
>>
>>     On 03/27/2014 05:33 AM, Tejesh M wrote:
>>
>>         Hi All,
>>
>>         I was doing google to see if i can set Hostname,Password & IP
>>         details
>>         for Windows server from RHEV-M. I got to know that we can create
>> VM
>>         Payload & send that to Windows VM (installed with Cloud-init)
>>
>>         Refer this link
>>         http://www.cloudbase.it/cloud-__init-for-windows-instances/#
>> __comment-9411
>>         <http://www.cloudbase.it/cloud-init-for-windows-
>> instances/#comment-9411>
>>
>>         Cloud-init expects Meta-data & User-Data file to be sent either
>> via
>>         Config Drive or via HTTP. I'm trying to achive this via
>> ConfigDrive
>>         (created using VM Payload).
>>
>>
>>     note you can also just pass the full sysprep file as a payload
>>     yourself via the API, and set all these items in it.
>>
>>
>>         But i'm wondering what should be the format of this two files
>>         (Meta-data
>>         & User-data). Have any1  tried this? If yes, would request to
>> share
>>         sample for both the files with setting Hostname, Password & IP
>>         details.
>>
>>
>>     just launch a linux VM and check the file we create?
>>
>>
>>         Java code:
>>
>>             org.ovirt.engine.sdk.__decorators.VM vm1 =
>>           api.getVMs().get(vmName);
>>                         Payloads payloads = new Payloads();
>>                         Payload payload = new Payload();
>>                         payload.setType("cdrom");
>>
>>                         Files payloadFiles = new Files();
>>                         File payloadFile = new File();
>>                         payloadFile.setName("meta-__data.txt");
>>                         payloadFile.setContent("__hostname:"+vmName);
>>                         payloadFiles.getFiles().add(__payloadFile);
>>                         payload.setFiles(payloadFiles)__;
>>                         vm1.setPayloads(payloads);
>>                         Action action = new Action();
>>                         vm1.start(action);
>>
>>         --
>>         Thanks & Regards
>>         Tejesh
>>
>>
>>
>>
>>
>> --
>> Thanks & Regards
>> Tejesh
>>
>
>


-- 
Thanks & Regards
Tejesh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/users/attachments/20140407/aa00d1a3/attachment-0001.html>


More information about the Users mailing list