<p dir="ltr">I&#39;m using rhevm 3.3 java sdk,which doesn&#39;t have NetworkConfiguration class. </p>
<div class="gmail_quote">On 20 Feb 2014 20:58, &quot;Juan Hernandez&quot; &lt;<a href="mailto:jhernand@redhat.com">jhernand@redhat.com</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On 02/20/2014 10:40 AM, Tejesh M wrote:<br>
&gt; I wrote this code to assign IP address to VM interface eth0, but not<br>
&gt; luck. Also, have attached debug log.<br>
&gt;<br>
<br>
I&#39;m attaching a complete examaple of how to do this. However, I think<br>
that setting the DNS information doesn&#39;t currently work. Apparently<br>
cloud-init is expecting a network configuration containing the DNS<br>
settings inside the network interface, something like this:<br>
<br>
iface eth0 inet static<br>
&nbsp; dns-nameservers 1.1.2.2 1.2.3.4<br>
&nbsp; dns-search <a href="http://google.com" target="_blank">google.com</a><br>
&nbsp; address 192.168.1.102<br>
&nbsp; netmask 255.255.0.0<br>
&nbsp; gateway 192.168.2.1<br>
auto eth0<br>
<br>
But we actually pass them outside of the network interface, like this:<br>
<br>
dns-nameservers 1.1.2.2 1.2.3.4<br>
dns-search <a href="http://google.com" target="_blank">google.com</a><br>
iface eth0 inet static<br>
&nbsp; address 192.168.1.102<br>
&nbsp; netmask 255.255.0.0<br>
&nbsp; gateway 192.168.2.1<br>
auto eth0<br>
<br>
I need to check it.<br>
<br>
&gt; _*Java Code:*_<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; org.ovirt.engine.sdk.entities.User userData = new User();<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; userData.setUserName(&quot;root&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; userData.setPassword(password);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Users usersData = new Users();<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; usersData.getUsers().add(userData);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CloudInit cloudData = new CloudInit();<br>
&gt;<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cloudData.setUsers(usersData);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Host hostData = new Host();<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; hostData.setAddress(vmName);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cloudData.setHost(hostData);<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; org.ovirt.engine.sdk.entities.CloudInit.Network<br>
&gt; networkConfiguration=new org.ovirt.engine.sdk.entities.CloudInit.Network();<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; DNS dns = new DNS();<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dns.setServers(createServersList(&quot;1.1.2.2&quot;, &quot;1.2.3.4&quot;));<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dns.setSearchDomains(createServersList(&quot;<a href="http://google.com" target="_blank">google.com</a><br>
&gt; &lt;<a href="http://google.com" target="_blank">http://google.com</a>&gt;&quot;));<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; networkConfiguration.setDns(dns);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; networkConfiguration.setNics(new Nics());<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Nics nics = networkConfiguration.getNics();<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; nics.getNics().add(createNic(&quot;eth0&quot;, &quot;STATIC&quot;,<br>
&gt; createNetwork(&quot;192.168.1.102&quot;, &quot;255.255.0.0&quot;, &quot;192.168.2.1&quot;), true));<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; networkConfiguration.setNics(nics);<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cloudData.setNetwork(networkConfiguration);<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Initialization initData = new Initialization();<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; initData.setCloudInit(cloudData);<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; VM vmDataForStart = new VM();<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; vmDataForStart.setInitialization(initData);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Action actionData = new Action();<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; actionData.setVm(vmDataForStart);<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Send the request to start the VM to the server:<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; api.getVMs().get(vmName).start(actionData);<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On Thu, Feb 20, 2014 at 1:39 PM, Moti Asayag &lt;<a href="mailto:masayag@redhat.com">masayag@redhat.com</a><br>
&gt; &lt;mailto:<a href="mailto:masayag@redhat.com">masayag@redhat.com</a>&gt;&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; &nbsp; &nbsp; ----- Original Message -----<br>
&gt; &nbsp; &nbsp; &gt; From: &quot;Tejesh M&quot; &lt;<a href="mailto:tejeshmk@gmail.com">tejeshmk@gmail.com</a> &lt;mailto:<a href="mailto:tejeshmk@gmail.com">tejeshmk@gmail.com</a>&gt;&gt;<br>
&gt; &nbsp; &nbsp; &gt; To: &quot;Moti Asayag&quot; &lt;<a href="mailto:masayag@redhat.com">masayag@redhat.com</a> &lt;mailto:<a href="mailto:masayag@redhat.com">masayag@redhat.com</a>&gt;&gt;<br>
&gt; &nbsp; &nbsp; &gt; Cc: &quot;users@oVirt.org&quot; &lt;<a href="mailto:users@ovirt.org">users@ovirt.org</a> &lt;mailto:<a href="mailto:users@ovirt.org">users@ovirt.org</a>&gt;&gt;<br>
&gt; &nbsp; &nbsp; &gt; Sent: Thursday, February 20, 2014 8:52:52 AM<br>
&gt; &nbsp; &nbsp; &gt; Subject: Re: [Users] Fwd: Sample code for setting NIC - CloudInit<br>
&gt; &nbsp; &nbsp; &gt;<br>
&gt; &nbsp; &nbsp; &gt; I&#39;m not getting below class:<br>
&gt; &nbsp; &nbsp; &gt;<br>
&gt; &nbsp; &nbsp; &gt; import org.ovirt.engine.sdk.entities.*NetworkConfiguration*;<br>
&gt;<br>
&gt; &nbsp; &nbsp; Which version of ovirt-engine-sdk-java are you using ?<br>
&gt;<br>
&gt; &nbsp; &nbsp; I used ovirt-engine-sdk-java-3.4.0.1-1, added to my project&#39;s pom.xml:<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;dependency&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;groupId&gt;org.ovirt.engine.sdk&lt;/groupId&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;artifactId&gt;ovirt-engine-sdk-java&lt;/artifactId&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;version&gt;3.4.0.1-1&lt;/version&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;type&gt;jar&lt;/type&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;scope&gt;compile&lt;/scope&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;/dependency&gt;<br>
&gt;<br>
&gt; &nbsp; &nbsp; &gt;<br>
&gt; &nbsp; &nbsp; &gt;<br>
&gt; &nbsp; &nbsp; &gt; On Thu, Feb 20, 2014 at 4:11 AM, Moti Asayag &lt;<a href="mailto:masayag@redhat.com">masayag@redhat.com</a><br>
&gt; &nbsp; &nbsp; &lt;mailto:<a href="mailto:masayag@redhat.com">masayag@redhat.com</a>&gt;&gt; wrote:<br>
&gt; &nbsp; &nbsp; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; ----- Original Message -----<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; From: &quot;Tejesh M&quot; &lt;<a href="mailto:tejeshmk@gmail.com">tejeshmk@gmail.com</a> &lt;mailto:<a href="mailto:tejeshmk@gmail.com">tejeshmk@gmail.com</a>&gt;&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; To: &quot;users@oVirt.org&quot; &lt;<a href="mailto:users@ovirt.org">users@ovirt.org</a> &lt;mailto:<a href="mailto:users@ovirt.org">users@ovirt.org</a>&gt;&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; Sent: Wednesday, February 19, 2014 3:24:40 PM<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; Subject: [Users] Fwd: Sample code for setting NIC - CloudInit<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; Hi,<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; Can someone share me sample java code for assigning IP address<br>
&gt; &nbsp; &nbsp; for VM on<br>
&gt; &nbsp; &nbsp; &gt; &gt; eth0<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; through Java SDK via CloudInit ?<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; Hi Tejesh,<br>
&gt; &nbsp; &nbsp; &gt; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; I&#39;ve attached a sample code that sends the required request (as<br>
&gt; &nbsp; &nbsp; the output<br>
&gt; &nbsp; &nbsp; &gt; &gt; is demonstrated in debug mode).<br>
&gt; &nbsp; &nbsp; &gt; &gt; Note that the code is jdk-7 compliant.<br>
&gt; &nbsp; &nbsp; &gt; &gt; I haven&#39;t configured cloud-init and haven&#39;t tested it end-to-end.<br>
&gt; &nbsp; &nbsp; &gt; &gt; Please try to test it on your environment and provide a feedback<br>
&gt; &nbsp; &nbsp; for it.<br>
&gt; &nbsp; &nbsp; &gt; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; Thanks,<br>
&gt; &nbsp; &nbsp; &gt; &gt; Moti<br>
&gt; &nbsp; &nbsp; &gt; &gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; Something Like this but in Java:<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &lt;network_configuration&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;nics&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;nic&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;name&gt;eth0&lt;/name&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;boot_protocol&gt;STATIC&lt;/boot_protocol&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;network&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;ip address=&quot;192.168.2.11&quot; netmask=&quot;255.255.0.0&quot;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;gateway=&quot;192.168.2.1&quot; /&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/network&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;on_boot&gt;true&lt;/on_boot&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/nic&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;nic&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;name&gt;eth1&lt;/name&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;boot_protocol&gt;DHCP&lt;/boot_protocol&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/nic&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;nic&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;name&gt;eth2&lt;/name&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;boot_protocol&gt;NONE&lt;/boot_protocol&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;on_boot&gt;true&lt;/on_boot&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/nic&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/nics&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;dns&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;servers&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;host&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;address&gt;1.1.2.2&lt;/address&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/host&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;host&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;address&gt;1.2.3.4&lt;/address&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/host&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/servers&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;search_domains&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;host&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;address&gt;qa.lab&lt;/address&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/host&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;host&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;address&gt; <a href="http://google.com" target="_blank">google.com</a> &lt;<a href="http://google.com" target="_blank">http://google.com</a>&gt; &lt;/address&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/host&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/search_domains&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/dns&gt;<br>
&gt; &nbsp; &nbsp; &gt; &gt; &gt; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/network_configuration&gt;<br>
<br>
--<br>
Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta<br>
3ºD, 28016 Madrid, Spain<br>
Inscrita en el Reg. Mercantil de Madrid &ndash; C.I.F. B82657941 - Red Hat S.L.<br>
</blockquote></div>