Return-Path: X-Original-To: apmail-incubator-deltacloud-dev-archive@minotaur.apache.org Delivered-To: apmail-incubator-deltacloud-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9337964F3 for ; Tue, 14 Jun 2011 11:42:02 +0000 (UTC) Received: (qmail 65525 invoked by uid 500); 14 Jun 2011 11:42:02 -0000 Delivered-To: apmail-incubator-deltacloud-dev-archive@incubator.apache.org Received: (qmail 65478 invoked by uid 500); 14 Jun 2011 11:42:02 -0000 Mailing-List: contact deltacloud-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: deltacloud-dev@incubator.apache.org Delivered-To: mailing list deltacloud-dev@incubator.apache.org Received: (qmail 65460 invoked by uid 99); 14 Jun 2011 11:42:01 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 14 Jun 2011 11:42:01 +0000 X-ASF-Spam-Status: No, hits=-5.0 required=5.0 tests=RCVD_IN_DNSWL_HI,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of mfojtik@redhat.com designates 209.132.183.28 as permitted sender) Received: from [209.132.183.28] (HELO mx1.redhat.com) (209.132.183.28) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 14 Jun 2011 11:41:57 +0000 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p5EBfZBV006757 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Tue, 14 Jun 2011 07:41:35 -0400 Received: from dhcp-2-126.brq.redhat.com (dhcp-2-126.brq.redhat.com [10.34.2.126]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id p5EBfYjU021059 for ; Tue, 14 Jun 2011 07:41:35 -0400 From: mfojtik@redhat.com To: deltacloud-dev@incubator.apache.org Subject: Initial vSphere support Date: Tue, 14 Jun 2011 13:42:07 +0200 Message-Id: <1308051728-4074-1-git-send-email-mfojtik@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.25 Hi, This is an initial draft of VMWare vSphere driver for Deltacloud API. I spend a lot of time debugging issues with 'spherical' gem and after some time I gave up (eg. I was not able to call PowerOnVM_Task, etc..). Then I found a gem called 'rbvmomi'[1] developed by regular VMWare employee. This gem was claimed to work 'only' with 1.9 but it works nice on my 1.8.7 installation. List of supported things: - Hardware profiles (there are 4 predefined: small, medium, large and x-large) Also there is a 'unknown' profile for VM's launched manually using vSphere GUI. - Listing of images (will list VMs marked as 'template') - Get single image (it's fast, since I'm using find_vm instead of filtering whole collection) - Listing of instances - Get single instance (same as above) - Instance operations: start, stop, destroy and reboot are working flawlessly - Create instance is working from predefined template. You can specify a hardware profile and name, which will be used then as an 'id'. Mostly because find_vm() method search for an instance name instead of uuid. List of unsupported/not-working things: - Instance has *no* image information, because it's imposible to get information about whot template was used to 'deploy' virtual machine. If it's a problem, it can be solved by YAML/JSON local mapping, but I would rather avoid this. - Create instance is 'slow' (mean it takes like 50 seconds to launch a new instance. Again this could be solved using some local mapper, but fist I want to know if it's necessary or not. How to use this driver: - You will need vSphere installed and SOAP API enabled on some URL. - Then: API_PROVIDER="vsphere.provider.com" ./bin/deltacloudd -i vsphere NOTE: 'http' and 'sdk' are not needed in PROVIDER All other things should work as ussual. -- Michal [1] https://github.com/rlane/rbvmomi (look to examples directory)