In that case you will have to use CloudInit.Network. That was an error
in that version of the SDK, which will be fixed with the next release.
On 20 Feb 2014 20:58, "Juan Hernandez"
<jhernand(a)redhat.com
<mailto:jhernand@redhat.com>> wrote:
On 02/20/2014 10:40 AM, Tejesh M wrote:
> I wrote this code to assign IP address to VM interface eth0, but not
> luck. Also, have attached debug log.
>
I'm attaching a complete examaple of how to do this. However, I think
that setting the DNS information doesn't currently work. Apparently
cloud-init is expecting a network configuration containing the DNS
settings inside the network interface, something like this:
iface eth0 inet static
dns-nameservers 1.1.2.2 1.2.3.4
dns-search
google.com <
http://google.com>
address 192.168.1.102
netmask 255.255.0.0
gateway 192.168.2.1
auto eth0
But we actually pass them outside of the network interface, like this:
dns-nameservers 1.1.2.2 1.2.3.4
dns-search
google.com <
http://google.com>
iface eth0 inet static
address 192.168.1.102
netmask 255.255.0.0
gateway 192.168.2.1
auto eth0
I need to check it.
> _*Java Code:*_
> org.ovirt.engine.sdk.entities.User userData = new User();
> userData.setUserName("root");
> userData.setPassword(password);
> Users usersData = new Users();
> usersData.getUsers().add(userData);
> CloudInit cloudData = new CloudInit();
>
>
> cloudData.setUsers(usersData);
> Host hostData = new Host();
> hostData.setAddress(vmName);
> cloudData.setHost(hostData);
>
> org.ovirt.engine.sdk.entities.CloudInit.Network
> networkConfiguration=new
org.ovirt.engine.sdk.entities.CloudInit.Network();
>
> DNS dns = new DNS();
> dns.setServers(createServersList("1.1.2.2",
"1.2.3.4"));
>
dns.setSearchDomains(createServersList("google.com
<
http://google.com>
> <
http://google.com>"));
> networkConfiguration.setDns(dns);
> networkConfiguration.setNics(new Nics());
>
> Nics nics = networkConfiguration.getNics();
> nics.getNics().add(createNic("eth0", "STATIC",
> createNetwork("192.168.1.102", "255.255.0.0",
"192.168.2.1"), true));
>
> networkConfiguration.setNics(nics);
>
> cloudData.setNetwork(networkConfiguration);
>
> Initialization initData = new Initialization();
>
> initData.setCloudInit(cloudData);
>
> VM vmDataForStart = new VM();
> vmDataForStart.setInitialization(initData);
> Action actionData = new Action();
> actionData.setVm(vmDataForStart);
>
> // Send the request to start the VM to the server:
> api.getVMs().get(vmName).start(actionData);
>
>
>
>
>
>
> On Thu, Feb 20, 2014 at 1:39 PM, Moti Asayag <masayag(a)redhat.com
<mailto:masayag@redhat.com>
> <mailto:masayag@redhat.com <mailto:masayag@redhat.com>>> wrote:
>
>
>
> ----- Original Message -----
> > From: "Tejesh M" <tejeshmk(a)gmail.com
<mailto:tejeshmk@gmail.com> <mailto:tejeshmk@gmail.com
<mailto:tejeshmk@gmail.com>>>
> > To: "Moti Asayag" <masayag(a)redhat.com
<mailto:masayag@redhat.com> <mailto:masayag@redhat.com
<mailto:masayag@redhat.com>>>
> > Cc: "users(a)oVirt.org" <users(a)ovirt.org
<mailto:users@ovirt.org> <mailto:users@ovirt.org
<mailto:users@ovirt.org>>>
> > Sent: Thursday, February 20, 2014 8:52:52 AM
> > Subject: Re: [Users] Fwd: Sample code for setting NIC -
CloudInit
> >
> > I'm not getting below class:
> >
> > import org.ovirt.engine.sdk.entities.*NetworkConfiguration*;
>
> Which version of ovirt-engine-sdk-java are you using ?
>
> I used ovirt-engine-sdk-java-3.4.0.1-1, added to my project's
pom.xml:
>
> <dependency>
> <groupId>org.ovirt.engine.sdk</groupId>
> <artifactId>ovirt-engine-sdk-java</artifactId>
> <version>3.4.0.1-1</version>
> <type>jar</type>
> <scope>compile</scope>
> </dependency>
>
> >
> >
> > On Thu, Feb 20, 2014 at 4:11 AM, Moti Asayag
<masayag(a)redhat.com <mailto:masayag@redhat.com>
> <mailto:masayag@redhat.com <mailto:masayag@redhat.com>>>
wrote:
> >
> > >
> > >
> > > ----- Original Message -----
> > > > From: "Tejesh M" <tejeshmk(a)gmail.com
<mailto:tejeshmk@gmail.com> <mailto:tejeshmk@gmail.com
<mailto:tejeshmk@gmail.com>>>
> > > > To: "users(a)oVirt.org" <users(a)ovirt.org
<mailto:users@ovirt.org> <mailto:users@ovirt.org
<mailto:users@ovirt.org>>>
> > > > Sent: Wednesday, February 19, 2014 3:24:40 PM
> > > > Subject: [Users] Fwd: Sample code for setting NIC -
CloudInit
> > > >
> > > > Hi,
> > > >
> > > > Can someone share me sample java code for assigning IP
address
> for VM on
> > > eth0
> > > > through Java SDK via CloudInit ?
> > > >
> > >
> > > Hi Tejesh,
> > >
> > > I've attached a sample code that sends the required
request (as
> the output
> > > is demonstrated in debug mode).
> > > Note that the code is jdk-7 compliant.
> > > I haven't configured cloud-init and haven't tested it
end-to-end.
> > > Please try to test it on your environment and provide a
feedback
> for it.
> > >
> > > Thanks,
> > > Moti
> > >
> > > > Something Like this but in Java:
> > > > <network_configuration>
> > > > <nics>
> > > > <nic>
> > > > <name>eth0</name>
> > > >
<boot_protocol>STATIC</boot_protocol>
> > > > <network>
> > > > <ip address="192.168.2.11"
netmask="255.255.0.0"
> > > > gateway="192.168.2.1" />
> > > > </network>
> > > > <on_boot>true</on_boot>
> > > > </nic>
> > > > <nic>
> > > > <name>eth1</name>
> > > > <boot_protocol>DHCP</boot_protocol>
> > > > </nic>
> > > > <nic>
> > > > <name>eth2</name>
> > > > <boot_protocol>NONE</boot_protocol>
> > > > <on_boot>true</on_boot>
> > > > </nic>
> > > > </nics>
> > > > <dns>
> > > > <servers>
> > > > <host>
> > > > <address>1.1.2.2</address>
> > > > </host>
> > > > <host>
> > > > <address>1.2.3.4</address>
> > > > </host>
> > > > </servers>
> > > > <search_domains>
> > > > <host>
> > > > <address>qa.lab</address>
> > > > </host>
> > > > <host>
> > > > <address>
google.com
<
http://google.com>
<
http://google.com> </address>
> > > > </host>
> > > > </search_domains>
> > > > </dns>
> > > > </network_configuration>
--
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.
--
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.