我正在实验室服务器上安装全新的 Ubuntu。我们有大量基因组,需要 Apache www-data 用户访问。目前,我已将所有数据备份到外部驱动器上。我的目标是安装全新的 Ubuntu,在其上安装新的 Web 应用,然后导入丢失的旧数据,以便 Apache 使用这些新应用为用户提供服务。用户还可以上传文件。首要任务是保持简单,以便未来的新系统管理员可以轻松了解服务器上的工作方式。我目前的计划:
1)让实验室人员(我不在州内)刻录 Ubuntu ISO CD,从中启动机器并执行基本 Ubuntu 安装,为我设置 SSH 访问权限。她会重新格式化内部磁盘,但位于单独分区上的 /home 文件夹除外。
2) 从旧安装中迁移用户;手动清理 /home(旧)文件夹中不必要的数据。用它替换新的 /home 文件夹。
3)安装LAMP、Web应用程序和其他必要的软件。
4) 创建 /home/user/webdata 文件夹,授予 Apache 用户所有权限。在其中创建 upload/ 文件夹,网站用户可以在其中上传文件。旁边是 genesis/ 文件夹,其中包含指向物理上位于外部驱动器上的基因组的符号链接。Apache 将从此文件夹向用户提供基因组。
5)设置 /home/user/webdata/ 的自动备份,并将它放到网上。
我没有系统管理经验,因此有以下疑问:
a) 按照步骤 4 中描述的方式保存数据是否在任何方面都不如人意?存储和提供大型基因组以及用户上传的最常见和最有效的方式是什么?我应该把这个 webdata/ 文件夹放在 /var/www/html 下吗?或者我根本不应该使用符号链接,而是将基因组保存在内部驱动器上(在 /home 或 /var 下)?我不喜欢把它放在 /var 下的一个原因是,把所有东西都放在 /home 下会简单又安全。
b) 是否可以更改或添加其他步骤以使流程更安全和更专业?
非常感谢您的支持,如果我需要提供任何补充信息,请告知我。
答案1
对我来说,根据我设置的 Web 应用程序,拥有上传文件夹和基因组文件夹的文件结构听起来非常标准。
这是一个真正以系统管理员为中心的观点,但对我来说,虽然从软件/应用程序的角度来看文件结构的组织很重要,但物理设置将对冗余、可靠性和性能产生更大的影响 - 这些都是我在衡量设置的“专业性”时可能会包括的内容。
我可能会提出的一些建议:
1.) 如果可以的话,买一个小型 NAS。外部驱动器没有任何冗余,速度会有所不同,特别是当有多个用户在同一磁盘上读取/写入数据时。
2.) 考虑使用挂载点来存储外部附加数据,并将 Apache 指向该位置。如果您坚持使用基因组/上传结构,您可以考虑将外部存储直接挂载到这些文件夹,或将符号链接到 /mnt 目录上的共享。
3.) 认真考虑操作的读写以及您服务的用户数量。如果 gnome 很大,并且您将进行大量长时间的连续读取,请将这些数据放在单独的卷/磁盘组上,使其与更注重写入的“上传”文件夹分开。如果您必须坚持使用单个磁盘或多个单独的磁盘,您可以将数据分离到单独的磁盘上,将基因组数据放在一组磁盘上,将上传放在另一组磁盘上。
答案2
正如约翰所说,从系统管理员的角度来看,物理设置比文件和文件夹的“组织”更重要,因为这对系统管理员关心的事情有最大的影响 - 可靠性,性能,可扩展性,可管理性,监控,冗余,DR /备份等。
正确设置某些东西并迁移用户的想法很好。我要做的第一件事是尝试将数据放在 RAID 阵列上,这样当驱动器不可避免地发生故障时,您就不会丢失数据或停机。我是硬件 RAID 的支持者,但 Linux 软件 RAID 也不是完全糟糕 - 您希望在服务器级别添加一定程度的冗余,并提高正常运行时间。(说到正常运行时间,我希望有一个 UPS 为这台服务器供电……)
接下来,我将为此功能设置某种辅助服务器。(按偏好顺序),我将尝试将其设置为集群、[听起来像面向客户或影响客户] 或故障转移,甚至是热备用服务器。(当原始服务器死机时,随时准备投入使用的服务器)。当电源死机或主板短路等时,数据冗余无济于事。
最后,备份解决方案将根据您的需求和限制而有很大差异。如果您可以在足够大的阵列上设置磁带备份或磁盘到磁盘备份,以提供合理的数据保留期,那就太好了。如果没有,即使是一两个小型消费级 NAS 也比没有好。最坏的情况是,在没有预算的情况下,我将重要服务器的备份保存在工作站驱动器、消费级外部 USB 驱动器甚至 DVD-R 轴上。重要的是确保您具有一定程度的数据保留。当您发现数据损坏始于上周或一个月前被根除时,拥有前一天晚上的原始备份对您没有任何好处。