静看光阴荏苒
不管不顾不问不说也不念

XenOrchestra:基于WEB的XCP-ng管理工具

可以管理XCP-ng的客户端工具很多,其中官方列出的有以下几个:

1.xe(纯命令行工具)

2.XCP-ng Center(Windows客户端,下载安装就能直接用,官方不推荐)

3.Xen Orchestra(WEB客户端,官方推荐使用)

尽量选择官方推荐的方案,所以本文主要介绍Xen Orchestra的安装和使用。

实际上我测试了XCP-ng Center和Xen Orchestra,确实XCP-ng Center不如Xen Orchestra,以下是XCP-ng Center的几个大问题:

1.XCP-ng Center和服务端的连接不稳定,经常断开。尤其是在访问VMConsole的时候,几乎必断,怀疑是BUG。

2.创建存储这块,XCP-ng Center不支持创建本地存储。

3.功能方面就更不谈了,Xen Orchestra有许多扩展功能。

Xen Orchestra的安装方法有2种,其一是通过他们的网页在线安装,你提供服务器的ROOT和密码就行,整个过程全自动的。我之前想偷懒就试过这个方法了,可惜并不能安装。。老老实实手动吧。。。

以下步骤在Debian10上完成,首先安装需要用到的全部软件:

apt -y update
apt -y install build-essential curl git
curl -sL https://deb.nodesource.com/setup_12.x | bash -
apt -y install nodejs redis-server nginx python-certbot-nginx libpng-dev libvhdi-utils lvm2 cifs-utils
npm i -g yarn

拉取项目文件安装依赖/构建:

cd /opt
git clone -b master http://github.com/vatesfr/xen-orchestra
cd xen-orchestra
yarn
yarn build

现在修改一下配置文件,让Nginx可以反代这个WEB面板:

nano /opt/xen-orchestra/packages/xo-server/config.toml

找到http.listen部分,修改为如下配置:

[[http.listen]]
hostname = '127.0.0.1'
port = 8080

进到xo-server目录测试启动:

cd /opt/xen-orchestra/packages/xo-server
yarn start

测试启动没问题的话,Ctrl+C退出来,之后新建一个systemd服务文件:

nano /usr/lib/systemd/system/xo-server.service

写入如下配置:

[Unit]
Description= XO Server
After=network-online.target

[Service]
Environment="DEBUG=xo:main"
ExecStart=/opt/xen-orchestra/packages/xo-server/bin/xo-server
Restart=always
SyslogIdentifier=xo-server

[Install]
WantedBy=multi-user.target

启动以及设置开机自启:

systemctl start xo-server.service
systemctl enable xo-server.service

接着新建一个Nginx站点配置文件:

nano /etc/nginx/conf.d/xoa.conf

写入如下配置:

server {
    listen       80;
    server_name  xoa.233.fi; # 换成你的域名
    client_max_body_size 128G;
    
    error_log /var/log/nginx/xoa.error.log;
    access_log /var/log/nginx/xoa.access.log;

    location / {
        # Add some headers
        proxy_set_header        Host $host;
        proxy_set_header        X-Real-IP $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header        X-Forwarded-Proto $scheme;

        # Proxy configuration
        proxy_pass http://127.0.0.1:8080/;
        proxy_http_version 1.1;
        proxy_set_header Connection "upgrade";
        proxy_set_header Upgrade $http_upgrade;
        proxy_redirect default;

        # Issue https://github.com/vatesfr/xen-orchestra/issues/1471
        proxy_read_timeout 1800; # Error will be only every 30m
    }
}

测试Nginx配置:

nginx -t

没问题的话使用Certbot签发一个SSL证书:

certbot --nginx --agree-tos --no-eff-email --email xxxxx@qq.com

打开你的域名应该能看到XenOrchestra的WEB界面,默认的管理员账号:admin@admin.net,密码:admin

初次登录进去立即修改你的密码这些就不多说了,现在我们需要把XenOrchestra和XCP-ng进行对接。

找到XenOrchestra面板左侧,新建-服务器,按下图填写信息:

XenOrchestra和XCP-ng连接上了后,你需要安装一些补丁来确保后续使用不会出现一些BUG:

接下来要想创建虚拟机的话,得先创建一个ISO存储池。

一般情况下XCP-ng是推荐使用NFS来创建iso存储池的,但是我只是测试使用,所以这里创建一个本地iso存储池就行。默认情况下,XCP-ng在分区的时候只给你的根分区分了20G空间,装完系统估计还剩下15G左右。所以如果是要下载很多iso镜像的话建议还是老老实实去搭建一个NFS。。。

使用SSH登录到你的XCP-ng机器内(注意是安装XCP-ng的机器不是这台安装XenOrchestra的机器)创建目录/下载iso镜像:

mkdir -p /iso && cd /iso
wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.4.0-amd64-netinst.iso
wget https://mirror.xtom.com.hk/centos/7.8.2003/isos/x86_64/CentOS-7-x86_64-Minimal-2003.iso

然后回到XenOrchestra面板,找到新建-存储,按下图配置即可:

如果后续你在XCP-ng内又下载了新的iso镜像,你还得去XenOrchestra面板点一下这个刷新按钮,它才能加载到新的镜像:

现在就可以创建小鸡了:

按需配置:

注:如果安装Windows系统,系统引导使用UEFI的,在小鸡启动时控制台界面要不停按回车才能进入到Windows安装界面,否则系统无法引导会进入到UEFI的SHELL。

我在这台服务器上一共创建了3个小鸡,系统分别是CentOS7/Debian10/Windows10,由于没有配置DHCPserver,下面的系统安装过程中网络这块的配置都得手动,以下配置仅供参考。

CentOS7:

配置好了还要点上这个按钮,否则开机之后这个网卡不会自启动:

Debian10:

146给母鸡用了,147给刚才的CentOS7用了,这台就用148:

子网掩码:

网关Debian比较人性化应该能够帮你自己计算出来:

别忘了设置一个DNS服务器地址:

Windows10的网络配置在系统安装完成之后才能设置。打开网络连接-以太网属性-TCP/IPv4属性,按如下图配置:

测试下网络:

差不多就是这样了,个人用用的话也还可以,反正白嫖又不花钱。。。

赞(2)
未经允许不得转载:荒岛 » XenOrchestra:基于WEB的XCP-ng管理工具
分享到: 更多 (0)

评论 6

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    安装完毕 一阵空虚 如何解忧 打开javdb :idea:

    橘子5年前 (2020-05-10) Google Chrome 79.0.3945.80 Google Chrome 79.0.3945.80 Windows 10 x64 Edition Windows 10 x64 Edition回复
    • 你咋这么了解我呢 :razz:

      LALA5年前 (2020-05-12) Google Chrome 80.0.3987.163 Google Chrome 80.0.3987.163 Windows 10 x64 Edition Windows 10 x64 Edition回复
  2. #2

    lala你的博客被墙放出来了! :cool:

    Gabreel5年前 (2020-05-11) Google Chrome 81.0.4044.138 Google Chrome 81.0.4044.138 Windows 10 x64 Edition Windows 10 x64 Edition回复
    • 并没有,又想搞大新闻 :arrow:

      LALA5年前 (2020-05-12) Google Chrome 80.0.3987.163 Google Chrome 80.0.3987.163 Windows 10 x64 Edition Windows 10 x64 Edition回复

分享创造快乐

广告合作资源投稿