更新时间:2023-05-27 09:30:05浏览次数:859+次
本文介绍如何在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成功完成。