{"id":2217,"date":"2021-06-13T22:48:14","date_gmt":"2021-06-13T22:48:14","guid":{"rendered":"https:\/\/dft.wiki\/?p=2217"},"modified":"2026-06-08T22:37:15","modified_gmt":"2026-06-09T02:37:15","slug":"xen-cloud-platform-xcp-ng-xen-orchestra-appliance-xoa","status":"publish","type":"post","link":"https:\/\/dft.wiki\/?p=2217","title":{"rendered":"Xen Cloud Platform (XCP-ng) + Xen Orchestra Appliance (XOA)"},"content":{"rendered":"<p>XCP-ng is an open-source type 1 hypervisor (runs on bare metal). The best way to manage it is through the Xen Orchestra (also open-source) web interface.<\/p>\n<p>Download the ISO (about 560MB) from <a href=\"https:\/\/xcp-ng.org\/\">https:\/\/xcp-ng.org\/<\/a> and copy it to a USB drive:<\/p>\n<pre>dd if=xcp-ng-X.X.X.iso of=\/dev\/sdX bs=8M oflag=direct status=progress<\/pre>\n<p>Follow the installation wizard.<\/p>\n<p>If the system does not boot after installation in UEFI mode, enter the BIOS and switch to Legacy boot mode. A reinstall will be required after making this change.<\/p>\n<p>The easiest way to install XOA as a VM inside the host is via SSH or Terminal:<\/p>\n<pre>bash -c \"$(curl -sS https:\/\/xoa.io\/deploy)\"<\/pre>\n<p>You can also download the free XOA image (about 820MB) from <a href=\"https:\/\/xen-orchestra.com\/\">https:\/\/xen-orchestra.com\/<\/a>.<\/p>\n<p>Alternatively, spin up a container on your desktop for a temporary XOA instance:<\/p>\n<pre>docker run -itd -p 80:80 ronivay\/xen-orchestra<\/pre>\n<p>Open a browser, go to http:\/\/localhost, and log in with admin@admin.net:admin.<\/p>\n<hr \/>\n<p><strong>VM TOOLS FROM APT<\/strong><\/p>\n<pre>sudo apt update\r\nsudo apt install xe-guest-utilities -y<\/pre>\n<pre>sudo systemctl enable xe-linux-distribution\r\nsudo systemctl start xe-linux-distribution<\/pre>\n<hr \/>\n<p><strong>USB DRIVE AS LOCAL STORAGE<\/strong><\/p>\n<pre>fdisk -l\r\nxe sr-create name-label=\"Storage-A\" shared=false device-config:device=\"\/dev\/sdb\" type=lvm content-type=user<\/pre>\n<hr \/>\n<p><strong>BASIC COMMANDS<\/strong><\/p>\n<ul>\n<li>Updating the system:\n<ul>\n<li>yum update -y<\/li>\n<li>xe-toolstack-restart<\/li>\n<\/ul>\n<\/li>\n<li>Information gathering:\n<ul>\n<li>xe help &#8211;all<\/li>\n<li>xe host-compute-free-memory<\/li>\n<li>xe host-cpu-info<\/li>\n<li>xe pif-list<\/li>\n<li>xe network-list<\/li>\n<li>xe sr-list<\/li>\n<li>xe cd-list<\/li>\n<li>xe vdi-list<\/li>\n<li>xe vm-list<\/li>\n<li>xe host-list<\/li>\n<\/ul>\n<\/li>\n<li>Importing VMs:\n<ul>\n<li>xe vm-import filename=image.ova<\/li>\n<li>xe vm-import filename=image.xva preserve=true<\/li>\n<\/ul>\n<\/li>\n<li>Managing VMs:\n<ul>\n<li>xe vm-start vm=&#8221;Ubuntu Focal Fossa 20.04&#8243;<\/li>\n<li>xe vm-reboot uuid=81f6da57-0242-5408-ffc6-8217bf522e1f force=true<\/li>\n<li>xe vm-shutdown vm=&#8221;Ubuntu Focal Fossa 20.04&#8243;<\/li>\n<li>xe vm-destroy uuid=81f6da57-0242-5408-ffc6-8217bf522e1f<\/li>\n<\/ul>\n<\/li>\n<li>Using the CD drive:\n<ul>\n<li>xe vm-cd-insert cd-name=ms-office.iso vm=&#8221;Windows 10&#8243;<\/li>\n<li>xe vm-cd-eject vm=&#8221;Windows 10&#8243;<\/li>\n<\/ul>\n<\/li>\n<li>Creating an ISO repository:\n<ul>\n<li>xe sr-create name-label=&#8221;ISO Repository&#8221; type=iso device-config:location=\/opt\/xensource\/packages\/iso device-config:legacy_mode=true content-type=iso<\/li>\n<li>xe sr-create name-label=&#8221;Local storage 2&#8243; shared=false type=ext content-type=user device-config:device=\/dev\/sda host-uuid=ae8b5532-e2c8-4041-b939-58cd201e540f<\/li>\n<\/ul>\n<\/li>\n<li>Creating a local storage repository:\n<ul>\n<li>xe sr-create name-label=&#8221;Storage&#8221; shared=false device-config:device=&#8221;\/dev\/sdc&#8221; type=lvm content-type=user<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<p><strong>FULL-FEATURED XOA FROM SOURCE<\/strong><\/p>\n<p>Pre-installation:<\/p>\n<pre>sudo apt update\r\nsudo apt install xe-guest-utilities git -y\r\nsudo systemctl enable xe-linux-distribution\r\nsudo systemctl start xe-linux-distribution\r\nsudo mkdir \/etc\/ssl\/xo\r\nsudo openssl req -newkey rsa:4096 -x509 -sha256 -days 3650 -nodes -out \/etc\/ssl\/xo\/xo.crt -keyout \/etc\/ssl\/xo\/xo.key\r\ngit clone https:\/\/github.com\/ronivay\/XenOrchestraInstallerUpdater.git\r\ncd XenOrchestraInstallerUpdater\/\r\ncp sample.xo-install.cfg xo-install.cfg\r\nnano xo-install.cfg<\/pre>\n<p>Update the following configuration values:<\/p>\n<pre>PORT=\"<strong><span style=\"color: #ff0000;\">443<\/span><\/strong>\"\r\n...\r\nPLUGINS=\"<strong><span style=\"color: #ff0000;\">all<\/span><\/strong>\"\r\n...\r\nPATH_TO_HTTPS_CERT=<strong><span style=\"color: #ff0000;\">\/etc\/ssl\/xo\/xo.crt<\/span><\/strong>\r\nPATH_TO_HTTPS_KEY=<strong><span style=\"color: #ff0000;\">\/etc\/ssl\/xo\/xo.key<\/span><\/strong><\/pre>\n<p>Installation (option 1: Autoinstall):<\/p>\n<pre>sudo .\/xo-install.sh<\/pre>\n<p>Each option can also be run non-interactively:<\/p>\n<pre>sudo .\/xo-install.sh --install\r\nsudo .\/xo-install.sh --update\r\nsudo .\/xo-install.sh --update --force\r\nsudo .\/xo-install.sh --rollback<\/pre>\n<hr \/>\n<p><strong>BONUS<\/strong><\/p>\n<p>HA-Lizard is a free high availability solution for two physical servers with no external storage required [<a href=\"https:\/\/www.halizard.com\/\">Link<\/a>].<\/p>\n","protected":false},"excerpt":{"rendered":"<p>XCP-ng is an open-source type 1 hypervisor (runs on bare metal). The best way to [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-2217","post","type-post","status-publish","format-standard","hentry","category-linux"],"_links":{"self":[{"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/posts\/2217","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dft.wiki\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2217"}],"version-history":[{"count":24,"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/posts\/2217\/revisions"}],"predecessor-version":[{"id":5721,"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/posts\/2217\/revisions\/5721"}],"wp:attachment":[{"href":"https:\/\/dft.wiki\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2217"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dft.wiki\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2217"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dft.wiki\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2217"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}