我即将为我的项目构建一个 CentOS 服务器。为了节省时间,我希望能够复制此自定义服务器,以便可以在物理服务器和虚拟服务器(包括 Vultr 和 DigitalOcean 等在线 VPS)上快速复制它。
最好的策略是什么,以便我可以创建可以在任何地方轻松安装的 ISO?
策略是指我应该先创建物理服务器还是先从虚拟服务器开始?安装服务器后如何创建此 ISO?
答案1
答案2
您可能希望利用虚拟化技术来使其在任何地方都能发挥作用。
我不建议使用镜像的原因在于每台目标机器都有不同的硬件。虚拟化通过在客户机中使用标准硬件来消除此问题。
这意味着您必须研究要使用哪种虚拟化平台。这可以是 Microsoft Hyper-V、Oracle VM VirtualBox、VMWare、KVM 等。
根据您所拥有的开发环境和服务器的情况,您的选择可能会受到限制。
如果您使用 Windows 作为环境,那么 Hyper-V 将是最佳选择。
虚拟化平台有几个文件。它们有一个设置文件(包含虚拟机的设置),还有一个容器文件,即所连接硬盘的映像。
您只需复制容器文件并根据需要重新创建虚拟机,以满足主机规格。
这意味着,如果尚未安装软件,请创建一个新的虚拟 PC,而不是创建一个新的虚拟硬盘,而是选择现有并浏览到您的映像。一切都应立即可用。
如果 Hyper-V 不是一个选项,因为您不仅限于 Windows,那么 Oracle VM 也可以在 Linux、Mac 和 Solaris 上运行。
hyper-v 和 oracle vm 之间最大的区别在于,hyper-v 只允许在客户机真正需要资源时才需要资源,而使用 oracle vm 时,它会在启动 vm 时保留资源,这意味着如果您的系统本身有 16gb 内存,您就无法运行 2 个分别有 8gb 内存的 vm。(主机也需要内存)
说到服务器,Windows Server 附带一个核心版本,它非常轻量,非常适合用作使用 Hyper-V 托管内部服务器的基础。微软甚至推出了 Windows Nano Server,它被设计得尽可能轻量,允许使用 Hyper-V 托管其他服务器。微软 Windows Nano Server 的缺点是它非常新(随 Windows Server 2016 一起提供),需要付出很多努力才能使其正常工作。此外,Nano 服务器本身有一个非常基本的界面,需要通过 powershell 进行远程管理才能对其进行管理。
这是你的策略。我不确定它与 Vultr 和 DigitalOcean 配合得如何,因为我没有使用过它们,也不知道它们是否允许这样做,但如果他们不能这样做,那么除了手动配置这些服务器之外基本上没有其他办法了。你可以询问他们是否使用 Hyper-V 并愿意为你安装 VHDX 文件。