实验室的系统

介绍我所使用的实验室系统。这个系统是为10到50人左右的小规模群体构建的。

lab_system.png

在网关处将外部和内部网络进行分割。

处理服务器数据的是home和samba,处理它们以及其他服务器数据备份的是独立的PC。

大多数服务器作为XCP-ng上的虚拟机运行。虽然也考虑了Docker,但考虑到硬件故障时的恢复速度,我们选择了XCP-ng。为了学习和尝试Docker,开始使用它。在XCP-ng上使用虚拟机,如果有硬件资源空闲,可以在那部分进行展开。如果有多台XCP-ng并将虚拟机进行复制和分散保存,即使XCP-ng损坏,也能很快恢复。

用户使用的计算机是Ubuntu桌面版,作为LTSP的Fat客户端运行。
不进行单独安装,而是通过LTSP服务器进行集中管理,利用LTSP服务器通过PXE将软件下载和执行到每台个人计算机上。

策略

如果设置和持有的数据没有太多变化,就使用XCP-ng,否则使用Docker。
XCP-ng同时运行多台,并将每个虚拟机作为备份复制到其他机器上。因此,如果出现问题,只需启动备份虚拟机即可最快恢复。
另一方面,如果数据变更频率较高,在虚拟机上备份效率低。不管怎样,由于已将数据备份到备份服务器,通过Dockerfile恢复系统,再从备份服务器恢复数据似乎更有效率。

虽然在任何事情中都会有例外(比如杯子、GitLab等)。

各个系统

    • php-fpm on Docker

Apache2

php-fpm + http2可

PostgreSQL on Docker
Nextcloud

cupsサーバ on Docker

cupsサーバ on Ubuntu Server

Ubuntu 22.04/20.04 LTS上でのLTSPサーバ構築 : fat / thin clientの管理

纤细

    Ubuntu ServerでDocker Engine + Compose

每个阶段的说明

    • Apache2

基本: Apache2 on Docker

php-fpm使用してパフォーマンスアップ: Apache2 on Docker + php-fpm on Docker

更にhttp2可: apache2(http2) on Docker

最終形

Nextcloud

Nextcloud with Apache2 + PostgreSQL on Docker(

対応 : Apache2 on Docker

Nextcloud with Apache2 + php-fpm + PostgreSQL on Docker

対応 : Apache2 on Docker + php-fpm on Docker

Nextcloud with Apache2(http2) + PostgreSQL on Docker

対応 : apache2(http2) on Docker

最終形

bannerAds