Hi Edison, I believe I understand the requirements for the plug-in better now.
It sounds like the flow will be as such: * The user executes a Compute or Disk Offering that is tied via a storage tag to a Primary Storage that is associated with a plug-in. * The storage framework will ask the plug-in to create a volume. The plug-in will create a volume and hook the volume up to the appropriate hypervisor. For VMware, this means the plug-in will create a Datastore. For XenServer, this means the plug-in will create a Storage Repository. (So on and so forth for other hypervisors.) * The VM or data disk is then deployed to the hypervisor. Does that sound correct, Edison? Thanks! On Thu, Mar 21, 2013 at 5:44 PM, Edison Su <edison...@citrix.com> wrote: > ** ** > > ** ** > > *From:* Mike Tutkowski [mailto:mike.tutkow...@solidfire.com] > *Sent:* Thursday, March 21, 2013 4:18 PM > *To:* Edison Su > *Subject:* Re: Storage Subsystem 2.0 plugin docs**** > > ** ** > > Hi Edison,**** > > ** ** > > I wanted to dive into these comments a bit more:**** > > ** ** > > [Edison] plugin’s driver->createasync will be called when mgt server want > to create a volume on the storage. In the driver’s implementation, it can > directly call storage box’s api, or send a command to hypervisor host, then > call storage box’s api to create an iscsi.**** > > Then create a datastore(for vmware), SR(for xenserver), or storage > pool(for KVM) on hypervisor host, based on the iscsi iqn.**** > > If the volume is created from a template(for root disk), need to find a > way to import that template(which is nfs based currently, it will be just a > plain http url the future) into the root disk.**** > > The part about creating a datastore or a storage repository...is that > something the plug-in will be responsible for doing or will the storage > framework cover that piece? I'm thinking the storage framework will since > all sorts of plug-ins would seem to need that ability (to have their > storage hooked up to a datastore or a storage repository).**** > > ** ** > > [Edison] It’s a specific requirement for per volume per LUN case, and > specific for certain hypervisors(seems KVM doesn’t need to create a storage > pool when using iscsi LUN), so the storage framework will not deal with it > right now.**** > > ** ** > > ** ** > > Thanks for your time, Edison! :)**** > > ** ** > > On Thu, Mar 21, 2013 at 4:45 PM, Edison Su <edison...@citrix.com> wrote:** > ** > > Feedback/comments are appreciated, need to know your input from storage > vendor point of view.**** > > **** > > *From:* Vladimir Popovski [mailto:vladi...@zadarastorage.com] > *Sent:* Thursday, March 21, 2013 11:52 AM > *To:* Edison Su; cloudstack**** > > > *Cc:* mike.tutkow...@solidfire.com > *Subject:* RE: Storage Subsystem 2.0 plugin docs**** > > **** > > Hi Edison,**** > > **** > > Thank you for the reply. We will check it out.**** > > **** > > Regards,**** > > -Vladimir**** > > **** > > **** > > *From:* Edison Su [mailto:edison...@citrix.com] > *Sent:* Thursday, March 21, 2013 11:36 AM > *To:* 'Vladimir Popovski'; cloudstack > *Cc:* mike.tutkow...@solidfire.com > *Subject:* RE: Storage Subsystem 2.0 plugin docs**** > > **** > > **** > > **** > > *From:* Vladimir Popovski > [mailto:vladi...@zadarastorage.com<vladi...@zadarastorage.com>] > > *Sent:* Wednesday, March 20, 2013 9:05 AM > *To:* cloudstack > *Cc:* mike.tutkow...@solidfire.com; Edison Su > *Subject:* Storage Subsystem 2.0 plugin docs**** > > **** > > Hi All,**** > > **** > > Thank you for a great work on CloudStack! We are interested in integrating > CS with our storage system and started to look at your documentation and > storage-related code. I see that Mike from SolidFire started working on > something similar some time ago and Edison even created an empty plugin for > it (in Nov’12?).**** > > **** > > We have couple of questions related to that:**** > > - Is there any documentation about plugins (except of > https://cwiki.apache.org/CLOUDSTACK/storage-subsystem-20.html)**** > > [Edison] There are not much docs about the plugins other than the above > link. See below.**** > > - Are there any exemplary plugins for primary & secondary > datastores? Was the SolidFire plugin ever finished?**** > > [Edison] yesterday, I checked in some code to separate existing cloudstack > storage code into a standalone maven project, called: > cloud-plugin-storage-volume-default, which can give you an example how a > storage plugin will look like.**** > > - How to activate a new plugin and use it (at least through > CLIs/APIs)**** > > [Edison] First, put a bean configuration in client/tomcatconf/ > componentContext.xml.in for your plugin provider class, like:**** > > <bean id="ClassicalPrimaryDataStoreProvider" > class="org.apache.cloudstack.storage.datastore.provider.CloudStackPrimaryDataStoreProviderImpl"> > **** > > </bean>**** > > Second, when adding a data store into cloudstack, with an extra parameter > in createstoragepoolcmd: provider=your-provider-name, > liststorageproviderscmd can list all the registered providers in mgt server. > **** > > **** > > **** > > - How to integrate it with the UI**** > > There is no UI part of example code for storage yet, the idea is to use > pluggable UI( > https://cwiki.apache.org/confluence/display/CLOUDSTACK/UI+Plugin+Tutorial), > for each storage provider may need a separate UI to add a storage. For > example, in adding primary storage ui, there will be a drop down list, show > all the registered providers, if user selects one of the drop down list, > then UI will pop up a diagram, based on providers’ pluggable ui, then user > can type whatever information needed for a storage(e.g. nfs server, nfs > path, if its nfs). At the end, UI will call createstoragepoolcmd to > register a storage into cloudstack.**** > > **** > > Thanks,**** > > -Vladimir**** > > **** > > **** > > -------**** > > Vladimir Popovski**** > > VP, Cloud Operations**** > > Zadara Storage > (949) 677-2095**** > > vladi...@zadarastorage.com**** > > www.zadarastorage.com**** > > **** > > **** > > > > **** > > ** ** > > -- > *Mike Tutkowski***** > > *Senior CloudStack Developer, SolidFire Inc.***** > > e: mike.tutkow...@solidfire.com**** > > o: 303.746.7302**** > > Advancing the way the world uses the > cloud<http://solidfire.com/solution/overview/?video=play> > *™***** > -- *Mike Tutkowski* *Senior CloudStack Developer, SolidFire Inc.* e: mike.tutkow...@solidfire.com o: 303.746.7302 Advancing the way the world uses the cloud<http://solidfire.com/solution/overview/?video=play> *™*