2011-04-09 06:20:17 -04:00
|
|
|
====
|
2011-08-16 21:14:30 -04:00
|
|
|
Licensed to jclouds, Inc. (jclouds) under one or more
|
|
|
|
contributor license agreements. See the NOTICE file
|
|
|
|
distributed with this work for additional information
|
|
|
|
regarding copyright ownership. jclouds licenses this file
|
|
|
|
to you under the Apache License, Version 2.0 (the
|
|
|
|
"License"); you may not use this file except in compliance
|
|
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
|
|
software distributed under the License is distributed on an
|
|
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
|
|
KIND, either express or implied. See the License for the
|
|
|
|
specific language governing permissions and limitations
|
|
|
|
under the License.
|
2011-04-09 06:20:17 -04:00
|
|
|
====
|
|
|
|
|
2010-11-01 17:37:32 -04:00
|
|
|
The libvirt library is used to interface with different virtualization technologies (http://libvirt.org/)
|
|
|
|
|
|
|
|
libvirt supports:
|
|
|
|
The Xen hypervisor on Linux and Solaris hosts.
|
|
|
|
The QEMU emulator
|
|
|
|
The KVM Linux hypervisor
|
|
|
|
The LXC Linux container system
|
|
|
|
The OpenVZ Linux container system
|
|
|
|
The User Mode Linux paravirtualized kernel
|
|
|
|
The VirtualBox hypervisor
|
|
|
|
The VMware ESX and GSX hypervisors
|
|
|
|
Storage on IDE/SCSI/USB disks, FibreChannel, LVM, iSCSI, NFS and filesystems
|
|
|
|
|
|
|
|
Getting Started Guide for jclouds-libvirt
|
|
|
|
|
2010-10-24 23:59:01 -04:00
|
|
|
install libvirt on your os
|
|
|
|
* if os/x, see http://github.com/justinclift/libvirt
|
2010-11-01 17:37:32 -04:00
|
|
|
* if you are using Linux, let's suppose you want to use KVM:
|
|
|
|
- install libvirt and KVM (http://www.linux-kvm.org/page/Main_Page).
|
|
|
|
|
|
|
|
Remember to run
|
|
|
|
egrep '(vmx|svm)' /proc/cpuinfo
|
|
|
|
If nothing is printed, it means that your cpu does not support hardware virtualization.
|
|
|
|
|
|
|
|
Verify Installation
|
|
|
|
$ virsh -c qemu:///system list
|
|
|
|
Id Name State
|
|
|
|
----------------------------------
|
|
|
|
|
|
|
|
(for Ubuntu users: look also at this good turorial https://help.ubuntu.com/community/KVM)
|
|
|
|
|
|
|
|
Create your first guest
|
|
|
|
- download, for example, an ubuntu 10.04 LTS ISO
|
|
|
|
- create a libvirt domain by using:
|
|
|
|
virt-manager: a GUI tool at http://virt-manager.et.redhat.com/
|
|
|
|
virt-install, a python script developed by Red Hat (sudo apt-get install python-virtinst)
|
|
|
|
ubuntu-vm-builder, developed by Canonical. (sudo apt-get install ubuntu-vm-builder)
|
|
|
|
NB: use Javascript tool that generates the parameters for ubuntu-vm-builder: http://people.ubuntu.com/~kirkland/ubuntu-vm-builder.html
|
|
|
|
|
|
|
|
Now that you have a libvirt domain, your workstation is ready to use jclouds-libvirt.
|
|
|
|
You can now download jclouds-libvirt and give a try by running
|
|
|
|
|
|
|
|
ComputeServiceContext context = null;
|
|
|
|
try {
|
|
|
|
context = new ComputeServiceContextFactory()
|
|
|
|
.createContext(new StandaloneComputeServiceContextSpec<Domain, Domain, Image, Datacenter>("libvirt",
|
|
|
|
endpoint, apiversion, identity, credential, new LibvirtComputeServiceContextModule(), ImmutableSet
|
|
|
|
.<Module> of()));
|
|
|
|
|
|
|
|
Template defaultTemplate = context.getComputeService().templateBuilder()
|
|
|
|
.hardwareId("c7ff2039-a9f1-a659-7f91-e0f82f59d52e").imageId("1").build();
|
|
|
|
|
|
|
|
|
|
|
|
context.getComputeService().runNodesWithTag(domainName, 1, defaultTemplate);
|
|
|
|
|
|
|
|
} catch (RunNodesException e) {
|
|
|
|
e.printStackTrace();
|
|
|
|
} finally {
|
|
|
|
if (context != null)
|
|
|
|
context.close();
|
|
|
|
}
|
|
|
|
|
|
|
|
where identity=your_name, endpoint=qemu:///system
|
|
|
|
and domainName equals to the name chosen during the creation of libvirt domain
|
|
|
|
|
|
|
|
NB: apiversion, credential can be null
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|