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

    Tips on installing XO

    Scheduled Pinned Locked Moved Xen Orchestra
    97 Posts 11 Posters 17.3k Views 9 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
      jasonnix @Danp
      last edited by

      Hi @Danp,
      I did:

      # sudo forever-service delete orchestra
      forever-service version 0.5.11
      
      Platform - Debian GNU/Linux 12 (bookworm)
      Service orchestra deleted successfully
      

      What is the next step? Should I run $ sudo forever-service install orchestra -r "Current_UserName" -s dist/cli.mjs command again?

      1 Reply Last reply Reply Quote 0
      • DanpD Offline
        Danp Pro Support Team
        last edited by

        These are the steps shown in the documentation --

        yarn global add forever
        yarn global add forever-service
        
        # Be sure to edit the path below to where your install is located!
        cd /home/username/xen-orchestra/packages/xo-server/
        
        # Change the username below to the user owning XO
        forever-service install orchestra -r username -s dist/cli.mjs
        

        I don't see where you previously ran the line to install forever-service. Is that no longer needed? šŸ¤”

        To answer your question, Yes, you would rerun that command after switching to the correct directory as shown above.

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

          Hi @Danp,
          I did the following commands:

          # yarn global add forever
          yarn global v1.22.21
          [1/4] Resolving packages...
          [2/4] Fetching packages...
          [3/4] Linking dependencies...
          [4/4] Building fresh packages...
          
          success Installed "forever@4.0.3" with binaries:
                - forever
          Done in 5.19s.
          #
          # yarn global add forever-service
          yarn global v1.22.21
          [1/4] Resolving packages...
          [2/4] Fetching packages...
          [3/4] Linking dependencies...
          [4/4] Building fresh packages...
          
          success Installed "forever-service@0.5.11" with binaries:
                - forever-service
                - get-forever-config
          Done in 4.48s.
          #
          # forever-service install orchestra -r xo -s dist/cli.mjs
          forever-service version 0.5.11
          
          Platform - Debian GNU/Linux 12 (bookworm)
          orchestra provisioned successfully
          
          Commands to interact with service orchestra
          Start   - "sudo service orchestra start"
          Stop    - "sudo service orchestra stop"
          Status  - "sudo service orchestra status"
          Restart - "sudo service orchestra restart"
          #
          # sudo service orchestra start
          #
          # sudo service orchestra status
          ā— orchestra.service - LSB: forever-service startup script for orchestra
               Loaded: loaded (/etc/init.d/orchestra; generated)
               Active: active (exited) since Thu 2024-03-28 08:38:18 EDT; 22s ago
                 Docs: man:systemd-sysv-generator(8)
              Process: 199365 ExecStart=/etc/init.d/orchestra start (code=exited, status=0/SUCCESS)
                  CPU: 19ms
          
          Mar 28 08:38:16 XO systemd[1]: Starting orchestra.service - LSB: forever-service startup script for orchestra...
          Mar 28 08:38:17 XO orchestra[199365]: Starting orchestra
          Mar 28 08:38:18 XO systemd[1]: Started orchestra.service - LSB: forever-service startup script for orchestra.
          #
          # systemctl enable orchestra.service
          orchestra.service is not a native service, redirecting to systemd-sysv-install.
          Executing: /lib/systemd/systemd-sysv-install enable orchestra
          

          Then I rebooted the system, but XO is not running:

          # ss -tupln
          Netid State  Recv-Q  Send-Q   Local Address:Port   Peer Address:Port Process                                                   
          udp   UNCONN 0       0              0.0.0.0:111         0.0.0.0:*     users:(("rpcbind",pid=472,fd=5),("systemd",pid=1,fd=37)) 
          udp   UNCONN 0       0                 [::]:111            [::]:*     users:(("rpcbind",pid=472,fd=7),("systemd",pid=1,fd=39)) 
          tcp   LISTEN 0       4096           0.0.0.0:111         0.0.0.0:*     users:(("rpcbind",pid=472,fd=4),("systemd",pid=1,fd=36)) 
          tcp   LISTEN 0       511          127.0.0.1:6379        0.0.0.0:*     users:(("redis-server",pid=517,fd=6))                    
          tcp   LISTEN 0       511              [::1]:6379           [::]:*     users:(("redis-server",pid=517,fd=7))                    
          tcp   LISTEN 0       4096              [::]:111            [::]:*     users:(("rpcbind",pid=472,fd=6),("systemd",pid=1,fd=38)) 
          

          The log shows me the following error:

          2024-03-28T12:45:02.002Z xo:main WARN   Access denied.
          2024-03-28T12:45:02.003Z xo:main WARN   Ports < 1024 are often reserved to privileges users.
          āœ– EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json'
          Error: EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json'
          {"level":"error","message":"Forever detected script exited with code: 1"}
          {"level":"error","message":"Script restart attempt #28"}
          

          What should I do if I want to completely remove XO and use the script xenorchestra_installer?

          DanpD 1 Reply Last reply Reply Quote 0
          • DanpD Offline
            Danp Pro Support Team @jasonnix
            last edited by

            @jasonnix

            2024-03-28T12:45:02.002Z xo:main WARN Access denied.
            2024-03-28T12:45:02.003Z xo:main WARN Ports < 1024 are often reserved to privileges users.
            āœ– EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json'

            Did you read this part of the documentation? https://xen-orchestra.com/docs/installation.html#sudo

            What should I do if I want to completely remove XO and use the script xenorchestra_installer?

            I hope that was more of a rhetorical question, because your best option is to simply spin up a new VM and start over. There are other options as well --

            • Revert to an existing snapshot that you took prior to all of the above
            • Remove the /home/username/xen-orchestra directory and hope for the best šŸ˜†
            J 1 Reply Last reply Reply Quote 0
            • J Offline
              jasonnix @Danp
              last edited by

              @Danp, Yes. I read.
              These were questions that I had asked before and no one answered:
              1- Should I run the commands as root or sudo?

              2- Which directory is suitable to clone XO? I want to clone it in the /usr/local/src directory and this requires administrative access.

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

                Hello,
                I cloned the repository Jarli01/xenorchestra_installer. I then tried to install it using the bash xo_install.sh command, but I got the following error:

                Cloning into 'xen-orchestra'...
                remote: Enumerating objects: 128131, done.
                remote: Counting objects: 100% (4123/4123), done.
                remote: Compressing objects: 100% (1937/1937), done.
                error: RPC failed; curl 92 HTTP/2 stream 5 was not closed cleanly: CANCEL (err 8)
                error: 611 bytes of body are still expected
                fetch-pack: unexpected disconnect while reading sideband packet
                fatal: early EOF
                fatal: fetch-pack: invalid index-pack output
                xo_install.sh: line 50: cd: /opt/xen-orchestra: No such file or directory
                yarn install v1.22.22
                info No lockfile found.
                [1/4] Resolving packages...
                [2/4] Fetching packages...
                [3/4] Linking dependencies...
                [4/4] Building fresh packages...
                success Saved lockfile.
                Done in 0.17s.
                yarn run v1.22.22
                error Couldn't find a package.json file in "/opt"
                info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
                xo_install.sh: line 54: cd: packages/xo-server: No such file or directory
                cp: cannot stat 'sample.config.toml': No such file or directory
                ls: cannot access '/opt/xen-orchestra/packages/xo-server-*': No such file or directory
                Created symlink /etc/systemd/system/multi-user.target.wants/xo-server.service → /lib/systemd/system/xo-server.service.
                
                
                Installation complete, open a browser to:
                172.20.2.56 
                
                Default Login:admin@admin.net Password:admin
                
                Don't forget to change your password!
                
                DanpD 1 Reply Last reply Reply Quote 0
                • olivierlambertO Offline
                  olivierlambert Vates 🪐 Co-Founder CEO
                  last edited by olivierlambert

                  @jasonnix you should report 3rd party script issues where they are built, eg https://github.com/Jarli01/xenorchestra_installer

                  The community forums are meant to deal with the documented way to install XO šŸ™‚

                  1 Reply Last reply Reply Quote 0
                  • DanpD Offline
                    Danp Pro Support Team @jasonnix
                    last edited by

                    @jasonnix Looks like you had an issue during the attempt to git clone the XO repository, which would explain why the directory was subsequently not found. I would recommend retrying the install using a fresh VM.

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

                      Hi @Danp,
                      Thank you so much for your reply.
                      I installed a new VM and cloned the repository manually. It has been at this stage for hours:

                      # yarn
                      yarn install v1.22.22
                      [1/5] Validating package.json...
                      [2/5] Resolving packages...
                      [3/5] Fetching packages...
                      [4/5] Linking dependencies...
                      warning "@commitlint/cli > @commitlint/load > cosmiconfig-typescript-loader@5.0.
                      0" has unmet peer dependency "@types/node@*".
                      warning "@commitlint/cli > @commitlint/load > cosmiconfig-typescript-loader@5.0.
                      0" has unmet peer dependency "typescript@>=4".
                      warning "@vue/eslint-config-typescript > @typescript-eslint/eslint-plugin > ts-a
                      pi-utils@1.3.0" has unmet peer dependency "typescript@>=4.2.0".
                      warning "workspace-aggregator-832699f2-72dd-4d94-b7ec-a6f4c545ea40 > @vates/even
                      t-listeners-manager > tap > @tapjs/test > @isaacs/ts-node-temp-fork-for-pr-2009@
                      10.9.5" has unmet peer dependency "@types/node@*".
                      warning "workspace-aggregator-832699f2-72dd-4d94-b7ec-a6f4c545ea40 > @vates/even
                      t-listeners-manager > tap > @tapjs/asserts > tcompare > react-element-to-jsx-str
                      ing@15.0.0" has unmet peer dependency "react@^0.14.8 || ^15.0.1 || ^16.0.0 || ^1
                      7.0.1 || ^18.0.0".
                      warning "workspace-aggregator-832699f2-72dd-4d94-b7ec-a6f4c545ea40 > @vates/even
                      t-listeners-manager > tap > @tapjs/asserts > tcompare > react-element-to-jsx-str
                      ing@15.0.0" has unmet peer dependency "react-dom@^0.14.8 || ^15.0.1 || ^16.0.0 |
                      | ^17.0.1 || ^18.0.0".
                      warning Workspaces can only be enabled in private projects.
                      [5/5] Building fresh packages...
                      [13/21] ā „ argon2
                      [-/21] ─ waiting...
                      [-/21] ─ waiting...
                      [-/21] ─ waiting...
                      [-/21] ─ waiting...
                      
                      DanpD 1 Reply Last reply Reply Quote 0
                      • DanpD Offline
                        Danp Pro Support Team @jasonnix
                        last edited by

                        @jasonnix There are several instance in this thread where the errors you encounter appear to be network related. Do you regularly have issues with your internet connection? Are you still using Debian 12 as the base OS?

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

                          Hi @Danp,
                          Yes, I'm using Debian. I got the following results:

                          # yarn
                          yarn install v1.22.22
                          [1/5] Validating package.json...
                          [2/5] Resolving packages...
                          success Already up-to-date.
                          $ husky install
                          husky - Git hooks installed
                          Done in 3.98s.
                          #
                          # yarn build
                          yarn run v1.22.22
                          $ TURBO_TELEMETRY_DISABLED=1 turbo run build --scope xo-server --scope xo-server-'*' --scope xo-web
                           WARNING  --scope is deprecated and will be removed in 2.0
                          • Packages in scope: xo-server, xo-server-audit, xo-server-auth-github, xo-server-auth-google, xo-server-auth-ldap, xo-server-auth-oidc, xo-server-auth-saml, xo-server-backup-reports, xo-server-load-balancer, xo-server-netbox, xo-server-perf-alert, xo-server-sdn-controller, xo-server-test, xo-server-test-plugin, xo-server-transport-email, xo-server-transport-icinga2, xo-server-transport-nagios, xo-server-transport-slack, xo-server-transport-xmpp, xo-server-usage-report, xo-server-web-hooks, xo-web
                          • Running build in 22 packages
                          • Remote caching disabled
                          
                           Tasks:    25 successful, 25 total
                          Cached:    0 cached, 25 total
                            Time:    4m4.224s 
                          
                          Done in 244.88s.
                          #
                          # npm install forever -g
                          npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
                          npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
                          npm warn deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
                          npm warn deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
                          npm warn deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
                          npm warn deprecated rimraf@2.7.1: Rimraf versions prior to v4 are no longer supported
                          npm warn deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
                          npm warn deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
                          
                          added 282 packages in 1m
                          
                          45 packages are looking for funding
                            run `npm fund` for details
                          #
                          # yarn global add forever
                          yarn global v1.22.22
                          [1/4] Resolving packages...
                          warning forever > forever-monitor > chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
                          warning forever > forever-monitor > chokidar > fsevents@1.2.13: The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2
                          warning forever > forever-monitor > chokidar > braces > snapdragon > source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
                          warning forever > flatiron > prompt > utile > rimraf@2.7.1: Rimraf versions prior to v4 are no longer supported
                          warning forever > forever-monitor > chokidar > braces > snapdragon > source-map-resolve > resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
                          warning forever > forever-monitor > chokidar > braces > snapdragon > source-map-resolve > source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
                          warning forever > forever-monitor > chokidar > braces > snapdragon > source-map-resolve > urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
                          warning forever > flatiron > prompt > utile > rimraf > glob@7.2.3: Glob versions prior to v9 are no longer supported
                          warning forever > flatiron > prompt > utile > rimraf > glob > inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
                          [2/4] Fetching packages...
                          [3/4] Linking dependencies...
                          [4/4] Building fresh packages...
                          success Installed "forever@4.0.3" with binaries:
                                - forever
                          Done in 31.95s.
                          #
                          # yarn global add forever-service
                          yarn global v1.22.22
                          [1/4] Resolving packages...
                          warning forever-service > swig@1.4.2: This package is no longer maintained
                          [2/4] Fetching packages...
                          [3/4] Linking dependencies...
                          [4/4] Building fresh packages...
                          success Installed "forever-service@0.5.11" with binaries:
                                - forever-service
                                - get-forever-config
                          Done in 8.61s.
                          #
                          # forever-service install orchestra -r xo -s dist/cli.mjs
                          forever-service version 0.5.11
                          
                          Platform - Debian GNU/Linux 12 (bookworm)
                          orchestra provisioned successfully
                          
                          Commands to interact with service orchestra
                          Start   - "sudo service orchestra start"
                          Stop    - "sudo service orchestra stop"
                          Status  - "sudo service orchestra status"
                          Restart - "sudo service orchestra restart"
                          #
                          # /sbin/service orchestra start
                          #
                          # /sbin/service orchestra status
                          ā— orchestra.service - LSB: forever-service startup script for orchestra
                               Loaded: loaded (/etc/init.d/orchestra; generated)
                               Active: active (exited) since Tue 2024-05-28 00:14:36 PDT; 13s ago
                                 Docs: man:systemd-sysv-generator(8)
                              Process: 45721 ExecStart=/etc/init.d/orchestra start (code=exited, status=0/SUCCESS)
                                  CPU: 33ms
                          
                          May 28 00:14:34 XO systemd[1]: Starting orchestra.service - LSB: forever-service startup script for orchestra...
                          May 28 00:14:35 XO orchestra[45721]: Starting orchestra
                          May 28 00:14:36 XO systemd[1]: Started orchestra.service - LSB: forever-service startup script for orchestra.
                          

                          But:

                          # ss -tupln
                          Netid  State   Recv-Q   Send-Q     Local Address:Port      Peer Address:Port  Process                                                      
                          udp    UNCONN  0        0                0.0.0.0:111            0.0.0.0:*      users:(("rpcbind",pid=16688,fd=5),("systemd",pid=1,fd=66))  
                          udp    UNCONN  0        0                   [::]:111               [::]:*      users:(("rpcbind",pid=16688,fd=7),("systemd",pid=1,fd=68))  
                          tcp    LISTEN  0        128              0.0.0.0:22             0.0.0.0:*      users:(("sshd",pid=10085,fd=3))                             
                          tcp    LISTEN  0        4096             0.0.0.0:111            0.0.0.0:*      users:(("rpcbind",pid=16688,fd=4),("systemd",pid=1,fd=58))  
                          tcp    LISTEN  0        511            127.0.0.1:6379           0.0.0.0:*      users:(("redis-server",pid=40261,fd=6))                     
                          tcp    LISTEN  0        128                 [::]:22                [::]:*      users:(("sshd",pid=10085,fd=4))                             
                          tcp    LISTEN  0        4096                [::]:111               [::]:*      users:(("rpcbind",pid=16688,fd=6),("systemd",pid=1,fd=67))  
                          tcp    LISTEN  0        511                [::1]:6379              [::]:*      users:(("redis-server",pid=40261,fd=7))    
                          

                          No service runs on Potter 80!

                          DanpD 1 Reply Last reply Reply Quote 0
                          • DanpD Offline
                            Danp Pro Support Team @jasonnix
                            last edited by

                            @jasonnix You didn't answer my question about your internet connection, so I'm going to assume the answer is "yes". 😜

                            Also, you should reread the documentation on adding the forever service because that isn't the proper method. Seems like we went over this several months ago.

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

                              Hi @Danp,
                              I followed the documentation and as you can see I have installed the forever service.

                              DanpD 1 Reply Last reply Reply Quote 0
                              • DanpD Offline
                                Danp Pro Support Team @jasonnix
                                last edited by

                                @jasonnix said in Tips on installing XO:

                                Hi @Danp,
                                I followed the documentation and as you can see I have installed the forever service.

                                I don't recall the documentation telling you to run npm install forever -g. šŸ¤”

                                I can't recall if it was in this thread, but I previously mentioned that I've never actually used this service. If I get some time, I'll try building a VM from scratch and give forever a try.

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

                                  Hi @Danp,
                                  In the Always Running section, when you click on forever, you will go to the Github address and it is written there.

                                  DanpD 1 Reply Last reply Reply Quote 0
                                  • DanpD Offline
                                    Danp Pro Support Team @jasonnix
                                    last edited by

                                    @jasonnix AFAIK, that command isn't part of our documentation and it shouldn't be needed.

                                    J J 2 Replies Last reply Reply Quote 0
                                    • J Offline
                                      jasonnix @Danp
                                      last edited by

                                      @Danp, does this cause a problem?

                                      DanpD 1 Reply Last reply Reply Quote 0
                                      • DanpD Offline
                                        Danp Pro Support Team @jasonnix
                                        last edited by

                                        @jasonnix No idea since I haven't worked with this service.

                                        1 Reply Last reply Reply Quote 0
                                        • J Offline
                                          john.c @Danp
                                          last edited by john.c

                                          This post is deleted!
                                          1 Reply Last reply Reply Quote 0
                                          • P Offline
                                            probain
                                            last edited by

                                            I've acctually got a PR to help solve the documentation regarding the yarn forever part. Since I never could get that to work, I implemented a systemd variant instead.

                                            #7848

                                            Ping @olivierlambert for visibility šŸ™‚

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