更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 鸿蒙开发Linux教程 > 在Linux系统上安装和配置Xen Orchestra的方法

在Linux系统上安装和配置Xen Orchestra的方法

更新时间:2023-05-27 09:30:05浏览次数:853+次

本文介绍如何在Linux系统上安装和配置Xen Orchestra的方法,将以Rocky/CentOS/RHEL/AlmaLinux发行版为例说明。通常情况下,在基于RHEL的系统上,操作过程都应该类似。

安装和配置Xen Orchestra的具体操作步骤

步骤1:更新系统

通过运行以下命令确保系统是最新的:

sudo dnf -y update

系统更新后,请重新启动:

sudo systemctl reboot

重新启动后,继续下一步。

步骤2:安装Node.js和Yarn

将Node.JS存储库添加到系统中:

curl -sL https://rpm.nodesource.com/setup_16.x | sudo bash -

使用dnf命令安装Node.js:

sudo dnf install -y nodejs

要安装Yarn包管理器,请运行:

sudo yum install gcc-c++ make -y

curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo

sudo yum install yarn -y

确认Node.js和Yarn的安装:

$ node -v

v16.20.0

$ yarn -v

1.22.19

步骤3:安装Xen Orchestra

在系统上安装Python3:

sudo dnf install python3 -y

然后安装用于构建Xen Orchestra的依赖程序包:

sudo dnf -y install epel-release

sudo dnf -y install git redis libpng-devel git lvm2 cifs-utils make automake gcc gcc-c++ rpm-build fuse-devel python3-devel

sudo dnf -y install git autoconf automake gettext-devel libtool pkg-config libvhdi-tools

然后构建libvhdi包。我们将从openSUSE libvhdi页面下载它,比如使用命令行方式下载:

wget https://download.opensuse.org/repositories/openSUSE:/Factory/standard/src/libvhdi-20221124-3.7.src.rpm

sudo rpm -Uvh libvhdi-20221124-3.7.src.rpm

步骤4:获取并构建Xen Orchestra

从github下载Xen Orchestra源代码:

git clone -b master https://github.com/vatesfr/xen-orchestra

导航到xen-orchestra目录:

cd xen-orchestra

安装依赖项并从源代码构建Xen Orchestra:

$ yarn

yarn install v1.22.19

[1/5] Validating package.json...

[2/5] Resolving packages...

[3/5] Fetching packages...

[4/5] Linking dependencies...

[5/5] Building fresh packages...

$ yarn build

yarn run v1.22.19

$ turbo run build --scope xo-server --scope xo-server-'*' --scope xo-web

 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: 26 successful, 26 total

Cached: 0 cached, 26 total

Time: 2m28.707s

Done in 149.37s.

现在您必须为xo-server创建一个配置文件:

cd packages/xo-server

sudo mkdir /etc/xo-server

sudo cp sample.config.toml /etc/xo-server/config.toml

在这个配置文件中,您可以更改xo服务器的默认端口(80和443)。如果以非root用户身份运行服务器,则需要将端口设置为1024或更高。

启动并启用redis服务:

sudo systemctl enable --now redis

您可以尝试启动xo-server,看看它是否正常工作:

$ sudo yarn start

yarn run v1.22.19

注:按CTRL+C关闭应用程序。

以下是配置永久服务的方法

使用forever-service将XO作为系统服务安装:

# yarn global add forever

yarn global v1.22.19

[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 6.06s.

# yarn global add forever-service

yarn global v1.22.19

[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.28s.

# yarn global add pm2

yarn global v1.22.19

[1/4] Resolving packages...

[2/4] Fetching packages...

[3/4] Linking dependencies...

[4/4] Building fresh packages...

success Installed "pm2@5.3.0" with binaries:

      - pm2

      - pm2-dev

      - pm2-docker

      - pm2-runtime

Done in 6.54s.

# cd ~/xen-orchestra/packages/xo-server/

# forever-service install orchestra -r root -s dist/cli.mjs

forever-service version 0.5.11

Platform - Ubuntu 22.04.2 LTS

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"

开始:

# pm2 start dist/cli.mjs

PM2是Node.js应用程序的生产流程管理器,内置负载均衡器。

启动并守护任何应用程序:

pm2 start app.js

负载平衡4个api.js实例:

$ pm2 start api.js -i 4

生产中的监视器:

$ pm2 monitor

使pm2在服务器重新启动时自动启动:

$ pm2 startup

[PM2] Spawning PM2 daemon with pm2_home=/root/.pm2

[PM2] PM2 Successfully daemonized

[PM2] Starting /root/xen-orchestra/packages/xo-server/dist/cli.mjs in fork_mode (1 instance)

[PM2] Done.

统计:

# pm2 status

注:会返回名称、名称空间、版本、模式、时间、运行、处理器、内存、使用者等信息。

运行此命令可生成用于自动启动的活动启动脚本:

pm2 startup

pm2 save

确认服务正在运行:

$ sudo ss -tunelp | grep *:80

tcp   LISTEN 0      511                *:80              *:*    users:(("node /root/xen-",pid=12495,fd=19)) ino:52496 sk:5 v6only:0 <->

如果您需要删除服务,请运行命令“forever-service delete orchestra”。

另外安装xo-cli工具:

$ sudo npm install --global xo-cli

added 45 packages, and audited 46 packages in 6s

5 packages are looking for funding

  run `npm fund` for details

found 0 vulnerabilities

npm notice

npm notice New major version of npm available! 8.19.4 -> 9.6.7

npm notice Changelog: https://github.com/npm/cli/releases/tag/v9.6.7

npm notice Run npm install -g npm@9.6.7 to update!

npm notice

步骤5:访问Xen Orchestra Web界面

现在,您可以通过将部署期间配置的IP输入web浏览器来访问Xen Orchestra的web UI:

\

使用以下默认登录凭据:

用户名:admin@admin.net

密码:admin

导航至“设置”>“用户”(“Settings” > “Users”):

\

选择管理员用户,然后单击密码部分下的“编辑(edit)”以更新用户的密码:

\

步骤6:添加XenServer | XCP-ng服务器

通过转到“主页”>“添加服务器”(“Home” > “Add server”)添加XenServer | XCP-ng服务器:

\

输入用于登录的服务器标签、IP地址、用户名和密码:

\

确认连接成功:

\

您现在可以从Xen Orchestra控制台查看现有的虚拟机并创建新的虚拟机了:

\

至此,意味着安装和配置Xen Orchestra成功完成。