Thank you all for the feedback.

Any decisions and implementation here would be carried along for KVM
specific implementations.

Also, this whole process implies that the VM is using qcow2 images. Maybe
for raw images we need some extra work.

Some proposals:

On the Plugin Size
1) Import the volumes from the backup to a storage pool under new volume
names and filenames

On the Hypervisor side
2) Create a temp new VM copying all the configuration / network / e.t.c
details of the original VM to be restored
3) Attach the restored volumes to the new temp vm
4) Replace VM with new TEMP VM.

On the Plugin Size
1) Import the volumes from the backup to a storage pool under new volume
names and filenames

On the Hypervisor side
2) Detarch all volume form existing VM
3) Attach restored volumes
4) Mark old volumes as deleted.


Maybe Rohit can propose some high level implementation for this since he
visited all that for Vmware in the first place.

Thanks in advance,







On Thu, Jul 7, 2022 at 8:52 AM Slavka Peleva <slav...@storpool.com.invalid>
wrote:

> Hi, Curious,
>
> I also did some research on the B&R plugin for KVM. You are right about the
> `restoreBackupVolumeAndAttachToVM()` and the `restoreBackup()` methods
> that, in the end, are hypervisor-specific.
> There is a need to implement `attachRestoredVolumeToVirtualMachine()` and
> `importVirtualMachineFromBackup()` in the KVMGuru.
>
> I'm still not sure if a general implementation could work for B&R plugins
> that support the KVM hypervisor or if there is a need to be a B&R
> plugin-specific. My advice is to check when you override the methods in the
> KVMGuru class if the B&R plugin can support it. Probably to add
> BackupStrategy here
>
> https://github.com/apache/cloudstack/blob/main/engine/storage/src/main/java/org/apache/cloudstack/storage/helper/StorageStrategyFactoryImpl.java
>
> Best regards,
> Slavka
>
> On Thu, Jul 7, 2022 at 7:03 AM Harikrishna Patnala <
> harikrishna.patn...@shapeblue.com> wrote:
>
> > Hi Curious,
> >
> > Good to know that you could implement what you need.
> >
> > Regarding the framework part, you might have already checked this
> > document, if not please have a look to understand how the Backup and
> > recovery framework is made.
> >
> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Backup+and+Recovery+Framework
> >
> > As an example, you can check the implementation for the Veeam backup
> > plugin https://github.com/apache/cloudstack/tree/main/plugins/backup
> >
> > Regarding the specific question about restore method I think it is not
> > hypervisor specific. If you see this method
> >
> https://github.com/shapeblue/cloudstack/blob/c3a1c7862f6b490c4ee78b9796fd6aec0cd9a9ad/plugins/backup/veeam/src/main/java/org/apache/cloudstack/backup/VeeamBackupProvider.java#L213
> >
> > This is implemented for Veeam in VeeamBackupProvider. I assume you also
> > need to develop a similar plugin and implement methods as per your need.
> If
> > it is required to run the commands from either hypervisor, you will have
> to
> > implement specific command answer models as I explained in the previous
> > reply or you can use the SSH way as well.
> >
> > Hope this helps.
> >
> > Regards,
> > Harikrishna
> >
> >
> > ________________________________
> > From: Curious Pandora <p4nd...@gmail.com>
> > Sent: Thursday, July 7, 2022 6:03 AM
> > To: dev@cloudstack.apache.org <dev@cloudstack.apache.org>
> > Subject: Re: New B&R plugin for EMC Networker
> >
> > Hello Harikrishna,
> >
> > Thank you for your feedback.  We have implemented the communication and
> > works great.
> > We are at the restore part now  and it seems that there is no
> > implementation for the B&R Framework for KVM.
> > The restoreBackupVolumeAndAttachToVM() and restoreBackup() looks like
> they
> > are Hypervisor specific.
> >
> > For other hypervisors it looks like this is implemented in
> > HypervisorGuruBase.
> >
> > Does this have to be implemented for KVM too ?
> >
> >
> > On Tue, Jul 5, 2022 at 7:27 AM Harikrishna Patnala <
> > harikrishna.patn...@shapeblue.com> wrote:
> >
> > > Hello Curious,
> > >
> > > This is interesting and as far as I understand you can go with that
> > > approach of SSH into the host and run the scripts that are required.
> > >
> > > For better control from the CloudStack management server, you can also
> > try
> > > Command-Answer model to send a command to CloudStack agent in KVM host
> > and
> > > get the required job done on the host.
> > >
> > > For example, you may refer to the implementation of
> > > "UpdateHostPasswordCommand<
> > >
> >
> https://github.com/shapeblue/cloudstack/blob/523805c8bc63e5d5f2b8634e46db9bb9ec6214ad/server/src/main/java/com/cloud/resource/ResourceManagerImpl.java#L2878
> > >"
> > > class which updates the host password using a script. Following are the
> > > abstract steps that are done during the process.
> > >
> > >   1.  API implementation "updateHostPassword<
> > >
> >
> https://github.com/shapeblue/cloudstack/blob/893a88d225276e45f12f9490e6af2c94a81c2965/api/src/main/java/org/apache/cloudstack/api/command/admin/host/UpdateHostPasswordCmd.java#L30
> > > >"
> > >   2.  Prepare "UpdateHostPasswordCommand<
> > >
> >
> https://github.com/shapeblue/cloudstack/blob/523805c8bc63e5d5f2b8634e46db9bb9ec6214ad/server/src/main/java/com/cloud/resource/ResourceManagerImpl.java#L2878
> > >"
> > > and send it to corresponding host
> > >   3.  Implement a resource wrapper
> > > "LibvirtUpdateHostPasswordCommandWrapper<
> > >
> >
> https://github.com/shapeblue/cloudstack/blob/893a88d225276e45f12f9490e6af2c94a81c2965/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtUpdateHostPasswordCommandWrapper.java#L29
> > >"
> > > and run the specific script here.
> > >
> > > You may follow a similar procedure like above or you can directly use
> the
> > > SSH model as you mentioned.
> > >
> > > Hope this helps, let us know if you need something else.
> > >
> > > Regards,
> > > Harikrishna
> > > ________________________________
> > > From: Curious Pandora <p4nd...@gmail.com>
> > > Sent: Monday, July 4, 2022 6:17 PM
> > > To: dev@cloudstack.apache.org <dev@cloudstack.apache.org>
> > > Subject: Re: New B&R plugin for EMC Networker
> > >
> > > We are a cloud provider using cloudstack for our IaaS services.
> > >
> > >
> > >
> > >
> >
> >
> >
> > > On Mon, Jul 4, 2022 at 3:21 PM Sven Vogel <s.vo...@ewerk.com> wrote:
> > >
> > > > Hi p4nd0ra - the curious,
> > > >
> > > > who is deleloping the plugin?
> > > >
> > > > Cheers
> > > >
> > > > Sven
> > > >
> > > >
> > > >
> > > > __
> > > >
> > > > Sven Vogel
> > > > Senior Manager Research and Development - Cloud and Infrastructure
> > > >
> > > > EWERK DIGITAL GmbH
> > > > Br?hl 24, D-04109 Leipzig
> > > > P +49 341 42649 - 99
> > > > F +49 341 42649 - 98
> > > > s.vo...@ewerk.com
> > > > www.ewerk.com<http://www.ewerk.com>
> > > >
> > > > Gesch?ftsf?hrer:
> > > > Dr. Erik Wende, Markus B?ttcher, Marcus Leeb
> > > > Registergericht: Leipzig HRB 9065
> > > >
> > > > Support:
> > > > +49 341 42649 555
> > > >
> > > > Zertifiziert nach:
> > > > ISO/IEC 27001:2013
> > > > DIN EN ISO 9001:2015
> > > > DIN ISO/IEC 20000-1:2018
> > > >
> > > > ISAE 3402 Typ II Assessed
> > > >
> > > > EWERK-Blog<https://blog.ewerk.com/> | LinkedIn<
> > > > https://www.linkedin.com/company/ewerk-group> | Xing<
> > > > https://www.xing.com/company/ewerk> | Twitter<
> > > > https://twitter.com/EWERK_Group> | Facebook<
> > > > https://de-de.facebook.com/EWERK.Group/>
> > > >
> > > >
> > > > Ausk?nfte und Angebote per Mail sind freibleibend und unverbindlich.
> > > >
> > > > Disclaimer Privacy:
> > > > Der Inhalt dieser E-Mail (einschlie?lich etwaiger beigef?gter
> Dateien)
> > > ist
> > > > vertraulich und nur f?r den Empf?nger bestimmt. Sollten Sie nicht der
> > > > bestimmungsgem??e Empf?nger sein, ist Ihnen jegliche Offenlegung,
> > > > Vervielf?ltigung, Weitergabe oder Nutzung des Inhalts untersagt.
> Bitte
> > > > informieren Sie in diesem Fall unverz?glich den Absender und l?schen
> > Sie
> > > > die E-Mail (einschlie?lich etwaiger beigef?gter Dateien) von Ihrem
> > > System.
> > > > Vielen Dank.
> > > >
> > > > The contents of this e-mail (including any attachments) are
> > confidential
> > > > and may be legally privileged. If you are not the intended recipient
> of
> > > > this e-mail, any disclosure, copying, distribution or use of its
> > contents
> > > > is strictly prohibited, and you should please notify the sender
> > > immediately
> > > > and then delete it (including any attachments) from your system.
> Thank
> > > you.
> > > > Von: Curious Pandora <p4nd...@gmail.com>
> > > > Datum: Montag, 4. Juli 2022 um 14:11
> > > > An: dev@cloudstack.apache.org <dev@cloudstack.apache.org>
> > > > Betreff: New B&R plugin for EMC Networker
> > > > Hello all,
> > > >
> > > > We are developing a new plugin for supporting KVM backups for
> DELL/EMC
> > > > Networker.
> > > >
> > > > Unfortunately there is no straight way to do it (it's the same for
> > almost
> > > > all backup softwares out there) and we will need to access the
> > hypervisor
> > > > hosts directly and execute some custom scripts.
> > > >
> > > > As you understand this raises a series of design, implementation and
> > > > operation decisions and issues and we think it's better if we ask for
> > the
> > > > advise of the community.
> > > >
> > > > For starters, the implementation of SLA based backups is not feasible
> > due
> > > > to Networker design and concepts.
> > > >
> > > > It is most likely feasible to utilize ad-hoc and scheduled backups
> > > > (provided that are initiated by cloudstack).
> > > >
> > > > We wonder if we can utilize the ssh functionality from the management
> > > host
> > > > to the hypervisors (that is used for example to restart ssh-agent if
> > > > kvm.ssh.to.agent is enabled to execute a centralized script in bash
> > that
> > > > will be included in the cloudstack-agent.
> > > >
> > > > Is this approach acceptable ?
> > > >
> > > > Kind regards,
> > > >
> > > >
> > > >
> > > > --
> > > > p4nd0ra - the curious
> > > >
> > >
> > >
> > > --
> > > p4nd0ra - the curious
> > >
> >
> >
> > --
> > p4nd0ra - the curious
> >
>


-- 
p4nd0ra - the curious

Reply via email to