[ovirt-users] cloud_init not apply when v create from API

Arpit Makhiyaviya arpit.icreate at gmail.com
Wed Mar 30 06:44:05 UTC 2016


I used  *Version: 3.6.3.4-1.el7.centos* of ovirt engine.I already tried
following xml request with run VM but still its not working.
>From admin panel of oVirt Its completely working but I found issue only
with oVirt API (VM start but cloudinit data not accepted).

*XML Request : *

<action>
   <async>false</async>
  <use_cloud_init>true</use_cloud_init>
<vm>
  <initialization>
     <cloud_init>
       <host>
         <address>vishal.123456</address>
       </host>
       <regenerate_ssh_keys>true</regenerate_ssh_keys>
       <timezone>Atlantic/Reykjavik</timezone>
       <users>
         <user>
           <user_name>root</user_name>
           <password>Vishal at 131</password>
         </user>
       </users>
       <network_configuration>
         <nics>
           <nic>
             <name>eth1</name>
             <boot_protocol>STATIC</boot_protocol>
             <network>
               <ip address="51.254.56.84" netmask="255.255.255.255"
gateway="149.202.85.254" />
             </network>
             <on_boot>false</on_boot>
           </nic>

         </nics>
         <dns>
           <servers>
             <host>
               <address>8.8.8.8</address>
             </host>
           </servers>
           <search_domains>
             <host>
               <address>8.8.4.4</address>
             </host>
           </search_domains>
         </dns>
       </network_configuration>


     </cloud_init>
  </initialization>
</vm>

</action>

Regards,
*Arpit Makhiyaviya*
Software Engineer
+91-79-40038284
+91-971-437-6669
<http://www.sculptsoft.com>

On Wed, Mar 30, 2016 at 12:27 AM, Juan Hernández <jhernand at redhat.com>
wrote:

> On 03/29/2016 03:07 PM, Arpit Makhiyaviya wrote:
> > Thanks for quick response.
> > we already knew this and we are passing following xml when calling Start
> > action.
> >
>
> What version of the engine are you using exactly? This is a known bug.
> The "cloud_init" element is ignored. See here for details:
>
>   Cloud-Init payload not passed into VM via python SDK
>   https://bugzilla.redhat.com/1305904
>
> That will be fixed in version 3.6.5. If you have a version 3.6.2 or
> newer then you can use the workaround described there, using the
> "initailization" element directly.
>
> > <action>
> > <vm>
> >   <initialization>
> >      <cloud_init>
> >        <host>
> >          <address>vm-cloud-init-restapi</address>
> >        </host>
> >        <authorized_keys>
> >          <authorized_key>
> >            <user>
> >              <user_name>root</user_name>
> >            </user>
> >            <key>ssh-rsa restapi-cloud-init-ssh-key root at localdomain
> </key>
> >          </authorized_key>
> >        </authorized_keys>
> >        <regenerate_ssh_keys>true</regenerate_ssh_keys>
> >        <timezone>Atlantic/Reykjavik</timezone>
> >        <users>
> >          <user>
> >            <user_name>root</user_name>
> >            <password>SuperSecretPassword!</password>
> >          </user>
> >        </users>
> >        <network_configuration>
> >          <nics>
> >            <nic>
> >              <name>eth0</name>
> >              <boot_protocol>STATIC</boot_protocol>
> >              <network>
> >                <ip address="192.168.2.11" netmask="255.255.255.0"
> > gateway="192.168.2.254" />
> >              </network>
> >              <on_boot>true</on_boot>
> >            </nic>
> >            <nic>
> >              <name>eth1</name>
> >              <boot_protocol>DHCP</boot_protocol>
> >              <on_boot>true</on_boot>
> >            </nic>
> >          </nics>
> >          <dns>
> >            <servers>
> >              <host>
> >                <address>10.20.30.100</address>
> >              </host>
> >            </servers>
> >            <search_domains>
> >              <host>
> >                <address>domain.your.rhevm.com
> > <http://domain.your.rhevm.com></address>
> >              </host>
> >            </search_domains>
> >          </dns>
> >        </network_configuration>
> >        <files>
> >          <file>
> >            <name>/tmp/file1.txt</name>
> >            <content>line 1
> > line 2
> > and now something special
> > !@#$%^&amp;*()_+</content>
> >            <type>PLAINTEXT</type>
> >          </file>
> >        </files>
> >      </cloud_init>
> >   </initialization>
> > </vm>
> > </action>
> >
> > we also found following link . is this related to my issue?
> >
> > https://gerrit.ovirt.org/#/c/50240/2
> >
> > Regards,
> > *Arpit Makhiyaviya*
> > Software Engineer
> > +91-79-40038284
> > +91-971-437-6669
> > <http://www.sculptsoft.com>
> >
> > On Tue, Mar 29, 2016 at 6:24 PM, Renout Gerrits <mail at renout.nl
> > <mailto:mail at renout.nl>> wrote:
> >
> >     In the more recent versions you have to use 'use_cloud_init=True' in
> >     the api, which isn't described in most documentation yet. Maybe
> >     thats the reason it isn't working?
> >
> >     Here's a working snippet:
> >
> >     vm = api.vms.get(name=vm_name)
> >
> >     action = params.Action(
> >         use_cloud_init=True,
> >         vm=params.VM(
> >           initialization=params.Initialization(
> >             regenerate_ssh_keys=True,
> >             host_name=vm_fqdn,
> >             nic_configurations=params.GuestNicsConfiguration(
> >               nic_configuration=[
> >                 params.GuestNicConfiguration(
> >                   name="eth0",
> >                   boot_protocol="static",
> >                   on_boot=True,
> >                   ip=params.IP(
> >                     address=vm_address,
> >                     netmask=vm_netmask,
> >                     gateway=vm_gateway,
> >                     ),
> >                   ),
> >                 ],
> >               ),
> >             ),
> >           ),
> >         )
> >
> >     vm.start(action)
> >
> >
> >     On Tue, Mar 29, 2016 at 2:03 PM, Arpit Makhiyaviya
> >     <arpit.icreate at gmail.com <mailto:arpit.icreate at gmail.com>> wrote:
> >
> >         Hello,
> >         we are using ovirt api with json data format.
> >         we have create vm from template and i want to set
> >         ip,macaddress,user and password for that we are using cloud_init
> >         for that we it can't set any options.
> >
>
>
> --
> Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta
> 3ºD, 28016 Madrid, Spain
> Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941 - Red Hat S.L.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/users/attachments/20160330/28bcf40d/attachment-0001.html>


More information about the Users mailing list