XCP-NG few basic command lines- CLI

Run the following command to list VMs and their UUIDs:

xe vm-list resident-on=<uuid_of_host>

Try the shutdown command with force:

xe vm-shutdown uuid=<uuid_of_vm> force=true

Restart the toolstack on the host by using the following command:

xe-toolstack-restart

Restart the host.

shutdown -r now

If the VM is still not shutdown, you might need to destroy the domain. However, the steps given below can cause problems for your VM and should only be done as a last resort.

Read more

Share

Reset XCP-ng root password

The full prodecure can also be found on xcp-ng site.

  • Reboot your XCP-ng into Grub boot menu.
  • Select XCP-ng boot menu entry and press e key to edit boot options.
  • Locate the read-only parameter ro and replace it with rw init=/sysroot/bin/sh.
  • Press Ctrl + X to boot into single-mode.
  • From the Emergency Mode prompt, execute the command chroot /sysroot.
  • Once in single-mode, use passwd command to reset your XCP-ng root password.
  • Reboot XCP-ng by sending Ctrl + Alt + Suppr.
  • If everything went well, you should now be able to login with your new XCP-ng password.
Share

Create Internal Network in XCP-ng using XCP-ng Center

You may need to add a new network that’s internal network for your internal applications communication. You have the flexibility of configuring up to 16 networks per managed server. This operation can be performed on XenCenter or Xen Orchestra web console. Choose the solution you have in your Infrastructure to create an private internal network in Xen | XCP-ng.

Under “Networking” tab click on “Add Network“

For single server setup choose “Single-Server Private Network“. If you have a pool with a number of servers then use “Cross-Server Private Network“.

Read more

Share

Install Xen Orchestra on Ubuntu / Debian

Step 1: Update System

Let’s start the installation by updating all the system packages:

sudo apt update

Also consider performing an upgrade:

sudo apt upgrade -y

Step 2: Install Node.js on Ubuntu / Debian

Install dependencies.

sudo apt install -y ca-certificates curl gnupg

Import GPG repository keys:

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg

The next step is the installation of Node.js on Ubuntu / Debian Linux system:

Read more

Share

XOA on XCP-NG import and install

Start a new SSH session to your XenServer host and run the commands below.

### Using curl ###
[18:18 xcp-node-01 ~]# bash -c "$(curl -sS https://xoa.io/deploy)"
### Using wget ###
[18:18 xcp-node-01 ~]# bash -c "$(wget -qO- https://xoa.io/deploy)"

If you are using an old XenServer version, you may encounter SSL connection issues. This can bypassed by using the unsecure connection instead:

Read more

Share

Install Xen Orchestra on Ubuntu 20

Prework

apt-get update && apt-get dist-upgrade

Node.js

For this particular installation node 16 is needed to be installed. Lets install-

Add NodeSource PPA

This command will add PPA sources required to be able to install NodeJS 16 on your Ubuntu 20.04 installation:

curl -s https://deb.nodesource.com/setup_16.x | sudo bash

Install NodeJS 16

Now that the PPA source has been added, we can install NodeJS 16 on our Ubuntu 20.04 installation. Run the following command:

sudo apt install nodejs -y

Tip: The -y flag means we’re not prompted to confirm our choices.

Read more

Share

Force stop xen vm using command line

Instructions

  1. Disable High Availability (HA) so you don’t run into issues.
  2. Log into the Xenserver host that is running your VM with issues via ssh or console via XenCenter. Run the following command to list VMs and their UUIDs
    xe vm-list resident-on=<uuid_of_host>
  3. First you can try just the normal shutdown command with force
    xe vm-shutdown uuid=<UUID from step 3> force=true
  4. If that just hangs, use CONTROL+C to kill it off and try to reset the power state.  The force is required on this command
    xe vm-reset-powerstate uuid=<UUID from step 3> force=true
  5. If the VM is still not shutdown, we may need to destroy the domain.  Run this command to get the domain id of the VM.  It is the number in the first row of output. The list will be the VMs on the host.  Dom0 will be the host itself and all numbers after are running VM
    list_domains

Now run this command using the domain ID from the output of step 7

xl destroy <DOMID from step 7>

To start the VM use-

xe vm-start name-label=$VMN
Share

Running pfSense in a XenServer with xenguest

If you deploy pfSense on a XenServer, you may be shocked at the performance loss-specially on interface speed! But wait, there are some tweaks to make this usable.

Installing pfSense

Go ahead and setup pfSense like normal, and when you are done, perform the following tweaks. (the day till it’s tested on pfsense version 2.5.2 and xen on scp-ng 8.1)

XenServer tweaks

Find UUID for the pfSense VM you just installed.

xe vm-list

You should get something like the following

uuid ( RO) : b435d920-eb22-b45d-5058-091619ed427f
name-label ( RW): pfSense
power-state ( RO): running

uuid ( RO) : 42626f69-6185-4aa6-a125-839700f96828
name-label ( RW): Control domain on host: xenserver-000
power-state ( RO): running

We want the UUID of the instance running pfSense, b435d920-eb22-b45d-5058-091619ed427f in this case.

Read more

Share

Export/ Import VM to/from a backup file using command line on XenServer

Identify VM’s UUID

We start by identifying a virtual machine we would lake to export to as a regular backup file. Run xe vm-list to list all available virtual machines and take a note of the virtual machine in question:

# xe vm-list
uuid ( RO) : 7371124f-7d4d-66b7-cbc7-a98b1457543e
name-label ( RW): Debian Jessie 8.5
power-state ( RO): halted

uuid ( RO) : bad8e456-df88-435d-ba12-3f0f6e54b2c6
name-label ( RW): Control domain on host: xenserver
power-state ( RO): running

Take VM snapshot

Read more

Share