Hi Hieu,

Will it be good to include bulk operation of this feature? In addition,
does Xen support parallel execution of these operations ?

Regards,
Amit
*CloudByte Inc.* <http://www.cloudbyte.com/>


On Thu, Jun 5, 2014 at 8:59 AM, Hieu LE <hieul...@gmail.com> wrote:

> Mike, Punith,
>
> Please review "Golden Primary Storage" proposal. [1]
>
> Thank you.
>
> [1]:
> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Golden+Primary+Storage
>
>
> On Wed, Jun 4, 2014 at 10:32 PM, Mike Tutkowski <
> mike.tutkow...@solidfire.com> wrote:
>
>> Daan helped out with this. You should be good to go now.
>>
>>
>> On Tue, Jun 3, 2014 at 8:50 PM, Hieu LE <hieul...@gmail.com> wrote:
>>
>> > Hi Mike,
>> >
>> > Could you please give edit/create permission on ASF Jira/Wiki
>> confluence ?
>> > I can not add a new Wiki page.
>> >
>> > My Jira ID: hieulq
>> > Wiki: hieulq89
>> > Review Board: hieulq
>> >
>> > Thanks !
>> >
>> >
>> > On Wed, Jun 4, 2014 at 9:17 AM, Mike Tutkowski <
>> > mike.tutkow...@solidfire.com
>> > > wrote:
>> >
>> > > Hi,
>> > >
>> > > Yes, please feel free to add a new Wiki page for your design.
>> > >
>> > > Here is a link to applicable design info:
>> > >
>> > > https://cwiki.apache.org/confluence/display/CLOUDSTACK/Design
>> > >
>> > > Also, feel free to ask more questions and have me review your design.
>> > >
>> > > Thanks!
>> > > Mike
>> > >
>> > >
>> > > On Tue, Jun 3, 2014 at 7:29 PM, Hieu LE <hieul...@gmail.com> wrote:
>> > >
>> > > > Hi Mike,
>> > > >
>> > > > You are right, performance will be decreased over time because
>> writes
>> > > IOPS
>> > > > will always end up on slower storage pool.
>> > > >
>> > > > In our case, we are using CloudStack integrated in VDI solution to
>> > > provived
>> > > > pooled VM type[1]. So may be my approach can bring better UX for
>> user
>> > > with
>> > > > lower bootime ...
>> > > >
>> > > > A short change in design are followings
>> > > > - VM will be deployed with golden primary storage if primary
>> storage is
>> > > > marked golden and this VM template is also marked as golden.
>> > > > - Choosing the best deploy destionation for both golden primary
>> storage
>> > > and
>> > > > normal root volume primary storage. Chosen host can also access both
>> > > > storage pools.
>> > > > - New Xen Server plug-in for modifying VHD parent id.
>> > > >
>> > > > Is there some place for me to submit my design and code. Can I
>> write a
>> > > new
>> > > > proposal in CS wiki ?
>> > > >
>> > > > [1]:
>> > > >
>> > > >
>> > >
>> >
>> http://support.citrix.com/proddocs/topic/xendesktop-rho/cds-choose-scheme-type-rho.html
>> > > >
>> > > >
>> > > > On Mon, Jun 2, 2014 at 9:04 PM, Mike Tutkowski <
>> > > > mike.tutkow...@solidfire.com
>> > > > > wrote:
>> > > >
>> > > > > It is an interesting idea. If the constraints you face at your
>> > company
>> > > > can
>> > > > > be corrected somewhat by implementing this, then you should go for
>> > it.
>> > > > >
>> > > > > It sounds like writes will be placed on the slower storage pool.
>> This
>> > > > means
>> > > > > as you update OS components, those updates will be placed on the
>> > slower
>> > > > > storage pool. As such, your performance is likely to somewhat
>> > decrease
>> > > > over
>> > > > > time (as more and more writes end up on the slower storage pool).
>> > > > >
>> > > > > That may be OK for your use case(s), though.
>> > > > >
>> > > > > You'll have to update the storage-pool orchestration logic to take
>> > this
>> > > > new
>> > > > > scheme into account.
>> > > > >
>> > > > > Also, we'll have to figure out how this ties into storage tagging
>> (if
>> > > at
>> > > > > all).
>> > > > >
>> > > > > I'd be happy to review your design and code.
>> > > > >
>> > > > >
>> > > > > On Mon, Jun 2, 2014 at 1:54 AM, Hieu LE <hieul...@gmail.com>
>> wrote:
>> > > > >
>> > > > > > Thanks Mike and Punith for quick reply.
>> > > > > >
>> > > > > > Both solutions you gave here are absolutely correct. But as I
>> > > mentioned
>> > > > > in
>> > > > > > the first email, I want another better solution for current
>> > > > > infrastructure
>> > > > > > at my company.
>> > > > > >
>> > > > > > Creating a high IOPS primary storage using storage tags is good
>> but
>> > > it
>> > > > > will
>> > > > > > be very waste of disk capacity. For example, if I only have 1TB
>> SSD
>> > > and
>> > > > > > deploy 100 VM from a 100GB template.
>> > > > > >
>> > > > > > So I think about a solution where a high IOPS primary storage
>> can
>> > > only
>> > > > > > store golden image (master image), and a child image of this VM
>> > will
>> > > be
>> > > > > > stored in another normal (NFS, ISCSI...) storage. In this case,
>> > with
>> > > > 1TB
>> > > > > > SSD Primary Storage I can store as much golden image as I need.
>> > > > > >
>> > > > > > I have also tested it with 256 GB SSD mounted on Xen Server
>> 6.2.0
>> > > with
>> > > > > 2TB
>> > > > > > local storage 10000RPM, 6TB NFS share storage with 1GB network.
>> The
>> > > > IOPS
>> > > > > of
>> > > > > > VMs which have golden image (master image) in SSD and child
>> image
>> > in
>> > > > NFS
>> > > > > > increate more than 30-40% compare with VMs which have both
>> golden
>> > > image
>> > > > > and
>> > > > > > child image in NFS. The boot time of each VM is also decrease.
>> > > ('cause
>> > > > > > golden image in SSD only reduced READ IOPS).
>> > > > > >
>> > > > > > Do you think this approach OK ?
>> > > > > >
>> > > > > >
>> > > > > > On Mon, Jun 2, 2014 at 12:50 PM, Mike Tutkowski <
>> > > > > > mike.tutkow...@solidfire.com> wrote:
>> > > > > >
>> > > > > > > Thanks, Punith - this is similar to what I was going to say.
>> > > > > > >
>> > > > > > > Any time a set of CloudStack volumes share IOPS from a common
>> > pool,
>> > > > you
>> > > > > > > cannot guarantee IOPS to a given CloudStack volume at a given
>> > time.
>> > > > > > >
>> > > > > > > Your choices at present are:
>> > > > > > >
>> > > > > > > 1) Use managed storage (where you can create a 1:1 mapping
>> > between
>> > > a
>> > > > > > > CloudStack volume and a volume on a storage system that has
>> QoS).
>> > > As
>> > > > > > Punith
>> > > > > > > mentioned, this requires that you purchase storage from a
>> vendor
>> > > who
>> > > > > > > provides guaranteed QoS on a volume-by-volume bases AND has
>> this
>> > > > > > integrated
>> > > > > > > into CloudStack.
>> > > > > > >
>> > > > > > > 2) Create primary storage in CloudStack that is not managed,
>> but
>> > > has
>> > > > a
>> > > > > > high
>> > > > > > > number of IOPS (ex. using SSDs). You can then storage tag this
>> > > > primary
>> > > > > > > storage and create Compute and Disk Offerings that use this
>> > storage
>> > > > tag
>> > > > > > to
>> > > > > > > make sure their volumes end up on this storage pool (primary
>> > > > storage).
>> > > > > > This
>> > > > > > > will still not guarantee IOPS on a CloudStack volume-by-volume
>> > > basis,
>> > > > > but
>> > > > > > > it will at least place the CloudStack volumes that need a
>> better
>> > > > chance
>> > > > > > of
>> > > > > > > getting higher IOPS on a storage pool that could provide the
>> > > > necessary
>> > > > > > > IOPS. A big downside here is that you want to watch how many
>> > > > CloudStack
>> > > > > > > volumes get deployed on this primary storage because you'll
>> need
>> > to
>> > > > > > > essentially over-provision IOPS in this primary storage to
>> > increase
>> > > > the
>> > > > > > > probability that each and every CloudStack volume that uses
>> this
>> > > > > primary
>> > > > > > > storage gets the necessary IOPS (and isn't as likely to suffer
>> > from
>> > > > the
>> > > > > > > Noisy Neighbor Effect). You should be able to tell CloudStack
>> to
>> > > only
>> > > > > > use,
>> > > > > > > say, 80% (or whatever) of the storage you're providing to it
>> (so
>> > as
>> > > > to
>> > > > > > > increase your effective IOPS per GB ratio). This
>> > over-provisioning
>> > > of
>> > > > > > IOPS
>> > > > > > > to control Noisy Neighbors is avoided in option 1. In that
>> > > situation,
>> > > > > you
>> > > > > > > only provision the IOPS and capacity you actually need. It is
>> a
>> > > much
>> > > > > more
>> > > > > > > sophisticated approach.
>> > > > > > >
>> > > > > > > Thanks,
>> > > > > > > Mike
>> > > > > > >
>> > > > > > >
>> > > > > > > On Sun, Jun 1, 2014 at 11:36 PM, Punith S <
>> > punit...@cloudbyte.com>
>> > > > > > wrote:
>> > > > > > >
>> > > > > > > > hi hieu,
>> > > > > > > >
>> > > > > > > > your problem is the bottle neck we see as a storage vendors
>> in
>> > > the
>> > > > > > cloud,
>> > > > > > > > meaning all the vms in the cloud have not been guaranteed
>> iops
>> > > from
>> > > > > the
>> > > > > > > > primary storage, because in your case i'm assuming you are
>> > > running
>> > > > > > > 1000vms
>> > > > > > > > on a xen cluster whose all vm's disks are lying on a same
>> > primary
>> > > > nfs
>> > > > > > > > storage mounted to the cluster,
>> > > > > > > > hence you won't get the dedicated iops for each vm since
>> every
>> > vm
>> > > > is
>> > > > > > > > sharing the same storage. to solve this issue in cloudstack
>> we
>> > > the
>> > > > > > third
>> > > > > > > > party vendors have implemented the plugin(namely cloudbyte ,
>> > > > > solidfire
>> > > > > > > etc)
>> > > > > > > > to support managed storage(dedicated volumes with guaranteed
>> > qos
>> > > > for
>> > > > > > each
>> > > > > > > > vms) , where we are mapping each root disk(vdi) or data disk
>> > of a
>> > > > vm
>> > > > > > with
>> > > > > > > > one nfs or iscsi share coming out of a pool, also we are
>> > > proposing
>> > > > > the
>> > > > > > > new
>> > > > > > > > feature to change volume iops on fly in 4.5, where you can
>> > > increase
>> > > > > or
>> > > > > > > > decrease your root disk iops while booting or at peak times.
>> > but
>> > > to
>> > > > > use
>> > > > > > > > this plugin you have to buy our storage solution.
>> > > > > > > >
>> > > > > > > > if not , you can try creating a nfs share out of ssd pool
>> > storage
>> > > > and
>> > > > > > > > create a primary storage in cloudstack out of it named as
>> > golden
>> > > > > > primary
>> > > > > > > > storage with specific tag like gold, and create a compute
>> > > offering
>> > > > > for
>> > > > > > > your
>> > > > > > > > template with the storage tag as gold, hence all the vm's
>> you
>> > > > create
>> > > > > > will
>> > > > > > > > sit on this gold primary storage with high iops. and other
>> data
>> > > > disks
>> > > > > > on
>> > > > > > > > other primary storage but still here you cannot guarantee
>> the
>> > qos
>> > > > at
>> > > > > vm
>> > > > > > > > level.
>> > > > > > > >
>> > > > > > > > thanks
>> > > > > > > >
>> > > > > > > >
>> > > > > > > > On Mon, Jun 2, 2014 at 10:12 AM, Hieu LE <
>> hieul...@gmail.com>
>> > > > wrote:
>> > > > > > > >
>> > > > > > > >> Hi all,
>> > > > > > > >>
>> > > > > > > >> There are some problems while deploying a large amount of
>> VMs
>> > in
>> > > > my
>> > > > > > > >> company
>> > > > > > > >> with CloudStack. All VMs are deployed from same template
>> (e.g:
>> > > > > Windows
>> > > > > > > 7)
>> > > > > > > >> and the quantity is approximately ~1000VMs. The problems
>> here
>> > is
>> > > > low
>> > > > > > > IOPS,
>> > > > > > > >> low performance of VM (about ~10-11 IOPS, boot time is very
>> > > high).
>> > > > > The
>> > > > > > > >> storage of my company is SAN/NAS with NFS and Xen Server
>> > 6.2.0.
>> > > > All
>> > > > > > Xen
>> > > > > > > >> Server nodes have standard server HDD disk raid.
>> > > > > > > >>
>> > > > > > > >> I have found some solutions for this such as:
>> > > > > > > >>
>> > > > > > > >>    - Enable Xen Server Intellicache and some tweaks in
>> > > CloudStack
>> > > > > > codes
>> > > > > > > to
>> > > > > > > >>    deploy and start VM in Intellicache mode. But this
>> solution
>> > > > will
>> > > > > > > >> transfer
>> > > > > > > >>    all IOPS from shared storage to all local storage, hence
>> > > affect
>> > > > > and
>> > > > > > > >> limit
>> > > > > > > >>    some CloudStack features.
>> > > > > > > >>    - Buying some expensive storage solutions and network to
>> > > > increase
>> > > > > > > IOPS.
>> > > > > > > >>    Nah..
>> > > > > > > >>
>> > > > > > > >> So, I am thinking about a new feature that (may be)
>> increasing
>> > > > IOPS
>> > > > > > and
>> > > > > > > >> performance of VMs:
>> > > > > > > >>
>> > > > > > > >>    1. Separate golden image in high IOPS partition: buying
>> new
>> > > > SSD,
>> > > > > > plug
>> > > > > > > >> in
>> > > > > > > >>    Xen Server and deployed a new VM in NFS storage WITH
>> golden
>> > > > image
>> > > > > > in
>> > > > > > > >> this
>> > > > > > > >>    new SSD partition. This can reduce READ IOPS in shared
>> > > storage
>> > > > > and
>> > > > > > > >> decrease
>> > > > > > > >>    boot time of VM. (Currenty, VM deployed in Xen Server
>> > always
>> > > > > have a
>> > > > > > > >> master
>> > > > > > > >>    image (golden image - in VMWare) always in the same
>> storage
>> > > > > > > repository
>> > > > > > > >> with
>> > > > > > > >>    different image (child image)). We can do this trick by
>> > > > tweaking
>> > > > > in
>> > > > > > > VHD
>> > > > > > > >>    header file with new Xen Server plug-in.
>> > > > > > > >>    2. Create golden primary storage and VM template that
>> > enable
>> > > > this
>> > > > > > > >>    feature.
>> > > > > > > >>    3. So, all VMs deployed from template that had enabled
>> this
>> > > > > feature
>> > > > > > > >> will
>> > > > > > > >>    have a golden image stored in golden primary storage
>> (SSD
>> > or
>> > > > some
>> > > > > > > high
>> > > > > > > >> IOPS
>> > > > > > > >>    partition), and different image (child image) stored in
>> > other
>> > > > > > normal
>> > > > > > > >>    primary storage.
>> > > > > > > >>
>> > > > > > > >> This new feature will not transfer all IOPS from shared
>> > storage
>> > > to
>> > > > > > local
>> > > > > > > >> storage (because high IOPS partition can be another high
>> IOPS
>> > > > shared
>> > > > > > > >> storage) and require less money than buying new storage
>> > > solution.
>> > > > > > > >>
>> > > > > > > >> What do you think ? If possible, may I write a proposal in
>> > > > > CloudStack
>> > > > > > > >> wiki ?
>> > > > > > > >>
>> > > > > > > >> BRs.
>> > > > > > > >>
>> > > > > > > >> Hieu Lee
>> > > > > > > >>
>> > > > > > > >> --
>> > > > > > > >> -----BEGIN GEEK CODE BLOCK-----
>> > > > > > > >> Version: 3.1
>> > > > > > > >> GCS/CM/IT/M/MU d-@? s+(++):+(++) !a C++++(++++)$
>> > ULC++++(++)$ P
>> > > > > > > >> L++(+++)$ E
>> > > > > > > >> !W N* o+ K w O- M V- PS+ PE++ Y+ PGP+ t 5 X R tv+
>> b+(++)>+++
>> > DI-
>> > > > D+
>> > > > > G
>> > > > > > > >> e++(+++) h-- r(++)>+++ y-
>> > > > > > > >> ------END GEEK CODE BLOCK------
>> > > > > > > >>
>> > > > > > > >
>> > > > > > > >
>> > > > > > > >
>> > > > > > > > --
>> > > > > > > > regards,
>> > > > > > > >
>> > > > > > > > punith s
>> > > > > > > > cloudbyte.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>*™*
>> > > > > > >
>> > > > > >
>> > > > > >
>> > > > > >
>> > > > > > --
>> > > > > > -----BEGIN GEEK CODE BLOCK-----
>> > > > > > Version: 3.1
>> > > > > > GCS/CM/IT/M/MU d-@? s+(++):+(++) !a C++++(++++)$ ULC++++(++)$ P
>> > > > > L++(+++)$
>> > > > > > E
>> > > > > > !W N* o+ K w O- M V- PS+ PE++ Y+ PGP+ t 5 X R tv+ b+(++)>+++ DI-
>> > D+ G
>> > > > > > e++(+++) h-- r(++)>+++ y-
>> > > > > > ------END GEEK CODE BLOCK------
>> > > > > >
>> > > > >
>> > > > >
>> > > > >
>> > > > > --
>> > > > > *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>*™*
>> > > > >
>> > > >
>> > > >
>> > > >
>> > > > --
>> > > > -----BEGIN GEEK CODE BLOCK-----
>> > > > Version: 3.1
>> > > > GCS/CM/IT/M/MU d-@? s+(++):+(++) !a C++++(++++)$ ULC++++(++)$ P
>> > > L++(+++)$
>> > > > E
>> > > > !W N* o+ K w O- M V- PS+ PE++ Y+ PGP+ t 5 X R tv+ b+(++)>+++ DI- D+
>> G
>> > > > e++(+++) h-- r(++)>+++ y-
>> > > > ------END GEEK CODE BLOCK------
>> > > >
>> > >
>> > >
>> > >
>> > > --
>> > > *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>*™*
>> > >
>> >
>> >
>> >
>> > --
>> > -----BEGIN GEEK CODE BLOCK-----
>> > Version: 3.1
>> > GCS/CM/IT/M/MU d-@? s+(++):+(++) !a C++++(++++)$ ULC++++(++)$ P
>> L++(+++)$
>> > E
>> > !W N* o+ K w O- M V- PS+ PE++ Y+ PGP+ t 5 X R tv+ b+(++)>+++ DI- D+ G
>> > e++(+++) h-- r(++)>+++ y-
>> > ------END GEEK CODE BLOCK------
>> >
>>
>>
>>
>> --
>> *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>*™*
>>
>
>
>
> --
> -----BEGIN GEEK CODE BLOCK-----
> Version: 3.1
> GCS/CM/IT/M/MU d-@? s+(++):+(++) !a C++++(++++)$ ULC++++(++)$ P L++(+++)$
> E !W N* o+ K w O- M V- PS+ PE++ Y+ PGP+ t 5 X R tv+ b+(++)>+++ DI- D+ G
> e++(+++) h-- r(++)>+++ y-
> ------END GEEK CODE BLOCK------
>

Reply via email to