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

    Xen to XCP-NG

    Scheduled Pinned Locked Moved Unsolved Migrate to XCP-ng
    18 Posts 3 Posters 977 Views 3 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.
    • olivierlambertO Offline
      olivierlambert Vates 🪐 Co-Founder CEO
      last edited by

      Hi!

      Take a look at https://docs.xcp-ng.org/installation/migrate-to-xcp-ng/#-from-xen-on-linux

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

        Hi @olivierlambert ,
        Thanks for that script. I was working on it the last day and had some attempt to day with some python 2to3 converter. I am not lucky 🙂
        Is there a tested Python3 script ?
        Cheers and thanks for your help,
        Josef

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

          Sadly, you'll need Python 2. I'll be happy if the community around could make it updated for Python 3 🙂

          J 1 Reply Last reply Reply Quote 0
          • J Offline
            josef1909 @olivierlambert
            last edited by josef1909

            Hi @olivierlambert ,
            I worked on the P3 Script. at this time, I getting to the stage where the script returns
            VM Details:
            Name: justanothername
            Type: Paravirtualised
            VCPUS: 4
            Memory(bytes): 2147483648
            ACPI: true
            APIC: true
            PAE: true
            NX: false
            Viridian: true
            Disk xvda(Bootable): /dev/vgxen/justanothername
            Connecting to target xxx.xxx.145.157

            Processing disk /dev/vgxen/justanothername(21474836480 bytes)
            Internal Error. Possible problem: Please make sure you have enough space on your default SR

            While this is an issue which is announced on the link you send, I check via xoa and xcp-ng center. We have set a default SR. may I ask your help to proceed?
            Screenshot from 2023-11-29 20-58-02.png

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

              Hmm it's probably not processing correctly the SR size on destination?

              J 1 Reply Last reply Reply Quote 0
              • J Offline
                josef1909 @olivierlambert
                last edited by

                @olivierlambert Can we just stream it like fire and forget as long it can identify the default SR?

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

                  @josef1909 I just need to go ahead to check if the script will send more issues I need to work on.

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

                    Hi @olivierlambert ,
                    Please check script here or might suggest someone to collaborate:
                    https://github.com/josef-bocklage/xcp-ng_xen2xcpng-py3/blob/main/xen2xcpng-Vpy3.py

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

                      Hi, I just wanted to check-in if someone was so kind and had a look.
                      Cheers,
                      Josef

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

                        Hi!

                        We are pretty busy here (at Vates) about 8.2.1 new ISO and 8.3 release. We'll be happy that anyone around in the community is able to assist!

                        J 1 Reply Last reply Reply Quote 0
                        • J Offline
                          josef1909 @olivierlambert
                          last edited by

                          @olivierlambert understand.
                          Please let me know if I can help trigger people to support on that.
                          It seems that this topic has already a little dust on it - so I am happy to collabortate.

                          In the meantime, I made some Tests and will provide the last lines from the debugging.

                          > /root/xen2xcpng3-V1.py(839)<module>()
                          -> if options.filename:
                          (Pdb) n
                          > /root/xen2xcpng3-V1.py(842)<module>()
                          -> machine.save_as(server=options.server, username=options.username,
                          (Pdb) n
                          > /root/xen2xcpng3-V1.py(843)<module>()
                          -> password=options.password, ssl= not options.nossl,  sparse=options.sparse, sftp=options.sftp)
                          (Pdb) n
                          > /root/xen2xcpng3-V1.py(842)<module>()
                          -> machine.save_as(server=options.server, username=options.username,
                          (Pdb) n
                          VM Details:
                          Name: JUSTANOTHERNAME
                          Type: Paravirtualised
                          VCPUS: 4
                          Memory(bytes): 2147483648
                          ACPI: true
                          APIC: true
                          PAE: true
                          NX: false
                          Viridian: true
                          Disk xvda(Bootable): /dev/vgxen/JUSTANOTHERNAME
                          Connecting to target XXX.XXX.XXX.157
                          
                          Processing disk /dev/vgxen/JUSTANOTHERNAME(21474836480 bytes)
                          TypeError: initial_value must be str or None, not bytes
                          > /root/xen2xcpng3-V1.py(842)<module>()
                          -> machine.save_as(server=options.server, username=options.username,
                          (Pdb) 
                          
                          
                          1 Reply Last reply Reply Quote 0
                          • J Offline
                            josef1909
                            last edited by

                            Here are some more logs from todays session:

                            (Pdb) n
                            > /root/xen2xcpng3-V1.py(871)<module>()
                            -> machine.save_as(server=options.server, username=options.username,
                            (Pdb) w
                              /usr/lib/python3.9/bdb.py(580)run()
                            -> exec(cmd, globals, locals)
                              <string>(1)<module>()
                            > /root/xen2xcpng3-V1.py(871)<module>()
                            -> machine.save_as(server=options.server, username=options.username,
                            (Pdb) n
                            VM Details:
                            Name: JUSTANOTHERNAME
                            Type: Paravirtualised
                            VCPUS: 4
                            Memory(bytes): 2147483648
                            ACPI: true
                            APIC: true
                            PAE: true
                            NX: false
                            Viridian: true
                            Disk xvda(Bootable): /dev/vgxen/JUSTANOTHERNAME
                            Connecting to target xxx.xxx.xxx.157
                            
                            Processing disk /dev/vgxen/JUSTANOTHERNAME(21474836480 bytes)
                            TypeError: initial_value must be str or None, not bytes
                            > /root/xen2xcpng3-V1.py(871)<module>()
                            -> machine.save_as(server=options.server, username=options.username,
                            (Pdb) w
                              /usr/lib/python3.9/bdb.py(580)run()
                            -> exec(cmd, globals, locals)
                              <string>(1)<module>()
                            > /root/xen2xcpng3-V1.py(871)<module>()
                            -> machine.save_as(server=options.server, username=options.username,
                              /root/xen2xcpng3-V1.py(617)save_as()
                            -> string = io.StringIO(input_buffer)
                            (Pdb) n
                            --Return--
                            > /root/xen2xcpng3-V1.py(871)<module>()->None
                            -> machine.save_as(server=options.server, username=options.username,
                            (Pdb) w
                              /usr/lib/python3.9/bdb.py(580)run()
                            -> exec(cmd, globals, locals)
                              <string>(1)<module>()->None
                            > /root/xen2xcpng3-V1.py(871)<module>()->None
                            -> machine.save_as(server=options.server, username=options.username,
                            (Pdb) n
                            TypeError: initial_value must be str or None, not bytes
                            > <string>(1)<module>()->None
                            (Pdb) w
                              /usr/lib/python3.9/bdb.py(580)run()
                            -> exec(cmd, globals, locals)
                            > <string>(1)<module>()->None
                              /root/xen2xcpng3-V1.py(871)<module>()->None
                            -> machine.save_as(server=options.server, username=options.username,
                              /root/xen2xcpng3-V1.py(617)save_as()
                            -> string = io.StringIO(input_buffer)
                            (Pdb) n
                            --Return--
                            > <string>(1)<module>()->None
                            (Pdb) w
                              /usr/lib/python3.9/bdb.py(580)run()
                            -> exec(cmd, globals, locals)
                            > <string>(1)<module>()->None
                            (Pdb) n
                            Traceback (most recent call last):
                              File "/usr/lib/python3.9/pdb.py", line 1723, in main
                                pdb._runscript(mainpyfile)
                              File "/usr/lib/python3.9/pdb.py", line 1583, in _runscript
                                self.run(statement)
                              File "/usr/lib/python3.9/bdb.py", line 580, in run
                                exec(cmd, globals, locals)
                              File "<string>", line 1, in <module>
                              File "/root/xen2xcpng3-V1.py", line 871, in <module>
                                machine.save_as(server=options.server, username=options.username,
                              File "/root/xen2xcpng3-V1.py", line 617, in save_as
                                string = io.StringIO(input_buffer)
                            TypeError: initial_value must be str or None, not bytes
                            Uncaught exception. Entering post mortem debugging
                            Running 'cont' or 'step' will restart the program
                            > /root/xen2xcpng3-V1.py(617)save_as()
                            -> string = io.StringIO(input_buffer)
                            (Pdb) q
                            Post mortem debugger finished. The /root/xen2xcpng3-V1.py will be restarted
                            > /root/xen2xcpng3-V1.py(13)<module>()
                            
                            
                            1 Reply Last reply Reply Quote 0
                            • olivierlambertO Offline
                              olivierlambert Vates 🪐 Co-Founder CEO
                              last edited by

                              I know @yann is very busy but if he can, he'll take a look

                              J 1 Reply Last reply Reply Quote 0
                              • J Offline
                                josef1909 @olivierlambert
                                last edited by

                                @olivierlambert @yann
                                I understand that there is a big GoLive on your side.
                                Do we have alternative suggestions to migrate from xen to xcp-ng?

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

                                  The other alternative, if a bit cumbersome, is to use Clonezilla, like a P2V situation 🙂

                                  1 Reply Last reply Reply Quote 0
                                  • andrewperryA Offline
                                    andrewperry
                                    last edited by

                                    I also worked on trying to update the script to python3 last week and hadn't realised you had this work here so was starting from scratch.

                                    I am not a python developer so when I got to errors in the section that is actually streaming the files I decided to stop and just finish 'making' python2.7 on the servers that I need to get the VMs off and that has worked for me.

                                    It doesn't seem like it should be a huge amount of work left to upgrade the script to python3 but probably not something I have the skills or time for right now.

                                    Thanks for sharing your efforts here. What have you ended up doing @josef1909

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

                                      Thanks for re-pinging. This might be a "simple" mission to finance to a Python specialist. Let me add @AtaxyaNetwork in the loop.

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