XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Execute pre-freeze and post-thaw

    Scheduled Pinned Locked Moved Backup
    15 Posts 5 Posters 118 Views 4 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J Offline
      jsajous26
      last edited by

      Hello,

      I'm working on testing the XCP-NG solution (PoC).

      Using the latest Veeam backup plugin, I want to run a script on the VM to freeze the Oracle database with ArchiveLog (BEGIN BACKUP and END BACKUP).
      I can't find a way to run /usr/sbin/pre-freeze-script and /usr/sbin/post-thaw-script via Guest Tools.

      Do you have a solution, or a feature that would allow me to run these two scripts?

      Thanks.

      florentF 1 Reply Last reply Reply Quote 0
      • florentF Online
        florent Vates 🪐 XO Team @jsajous26
        last edited by

        @jsajous26 we have something for this, web hooks : https://xen-orchestra.com/blog/xen-orchestra-5-75/
        doc : https://github.com/vatesfr/xen-orchestra/blob/master/%40xen-orchestra/xapi/docs/vm-sync-hook.md?ref=xen-orchestra.com

        1 Reply Last reply Reply Quote 0
        • J Offline
          jsajous26
          last edited by jsajous26

          I don't quite understand the use of webhooks.
          Do you have a more specific example?

          Veeam not use XOA for backup, use directly XCP-ng.

          florentF 1 Reply Last reply Reply Quote 0
          • florentF Online
            florent Vates 🪐 XO Team @jsajous26
            last edited by

            @jsajous26 sorry I misread. I don't know how ti setup this while using veeam

            J 1 Reply Last reply Reply Quote 0
            • J Offline
              jsajous26 @florent
              last edited by jsajous26

              @florent

              Using webhooks, if I understand correctly, requires installing a Node.js server. This server would then call the commands to put Oracle into backup mode.

              This solution is cumbersome because it would require maintaining Node.js.

              Is there no way to directly use Guest Tools to call a script before and after snapshot, like with VMware or QEMU? If not, is this planned?

              florentF 1 Reply Last reply Reply Quote 0
              • florentF Online
                florent Vates 🪐 XO Team @jsajous26
                last edited by

                @jsajous26 AFAIK this is not possible to call a script inside the VM through the guest tools. Maybe on veeam side there are other way to do this ( throug ssh / powershell) ?

                1 Reply Last reply Reply Quote 0
                • olivierlambertO Offline
                  olivierlambert Vates 🪐 Co-Founder CEO
                  last edited by

                  You can read key/values from the xenstore, and write some (from VM to outside), but you cannot write values "in live" from outside the VM to the inside.

                  D 1 Reply Last reply Reply Quote 0
                  • D Offline
                    dcskinner @olivierlambert
                    last edited by

                    @olivierlambert do the guest tools quiesce the filesystems before snapshotting?

                    1 Reply Last reply Reply Quote 0
                    • olivierlambertO Offline
                      olivierlambert Vates 🪐 Co-Founder CEO
                      last edited by

                      Tools are aware of a snapshot so you don't have blocks in flight.

                      D TeddyAstieT 2 Replies Last reply Reply Quote 0
                      • D Offline
                        dcskinner @olivierlambert
                        last edited by

                        @olivierlambert So there is information coming from outside into the VM 🙂

                        Is there a particular reason not to implement freeze/thaw scripts in that case? The tools know there is a snap taking place and you said that you can write info from VM to outside, which would have to happen to tell the system that blocks have been committed and is ok to start. Seems like the communication is there, just need to implement the scripts.

                        Coming from VMware land, this is expected behavior of the guest tools.

                        I agree with OP, the webhooks looks janky, does not appear to be in the main docs, and the linked docs says it is unstable after 3 years.

                        1 Reply Last reply Reply Quote 0
                        • olivierlambertO Offline
                          olivierlambert Vates 🪐 Co-Founder CEO
                          last edited by

                          No, it's not using the same mechanism. It's a PV call (if I remember, but I'm not sure). You cannot write a xenstore key in live to a VM (only on boot).

                          D 1 Reply Last reply Reply Quote 0
                          • olivierlambertO Offline
                            olivierlambert Vates 🪐 Co-Founder CEO
                            last edited by

                            And beyond that, I'm not sure we actually want this behaviour from a security perspective. But it's another topic.

                            1 Reply Last reply Reply Quote 0
                            • D Offline
                              dcskinner @olivierlambert
                              last edited by

                              @olivierlambert ok, but it wouldn't have to. The guest tools always run the scripts (if they exist) when it sees a snap happening and then reports out the status the same way it says that the block commits are complete.

                              1 Reply Last reply Reply Quote 0
                              • olivierlambertO Offline
                                olivierlambert Vates 🪐 Co-Founder CEO
                                last edited by

                                They aren't meant for that, I have no idea how difficult it would be to make the PV drivers to actually "do something" (what exactly? write a value in the xenstore?). Maybe @teddyastie could provide an opinion on that.

                                1 Reply Last reply Reply Quote 0
                                • TeddyAstieT Offline
                                  TeddyAstie Vates 🪐 XCP-ng Team Xen Guru @olivierlambert
                                  last edited by TeddyAstie

                                  @dcskinner @olivierlambert

                                  You can read key/values from the xenstore, and write some (from VM to outside), but you cannot write values "in live" from outside the VM to the inside.

                                  It is, but XAPI doesn't provide a interface for it.

                                  do the guest tools quiesce the filesystems before snapshotting?

                                  Tools are aware of a snapshot so you don't have blocks in flight.

                                  do the guest tools quiesce the filesystems before snapshotting?

                                  Guests kernel are aware, as it is them that are performing a "suspend" on toolstack request (thus quiece filesystems); although "tools" can only observe that the system has been suspended after the fact by measuring side effects, and not orchestrate it.

                                  It's because suspend/resume operation doesn't come from "guest tools" actually, but instead from the kernel drivers. So userland tools has no say on it.

                                  1 Reply Last reply Reply Quote 1
                                  • First post
                                    Last post