构建具备容器和数据镜像功能的高可用性系统

简介:

IT宕机可能对任何业务产生重大影响。传统情况下,这使得备份数据恢复的速度成为IT团队的主要焦点。然而,即使备份工具得到改进,许多组织的恢复时间仍然不够。此外,此前的高可用性系统已经超出了大多数组织的财务可接受范围。

现如今,提供数据中心高可用性是一种不同的,更具成本效益的方法:即数据镜像以及云计算和容器的使用。

选择容器

容器可以帮助解决与高可用性系统相关的一些重要问题。例如,假设您的数据完全镜像到辅助站点。现在,假设主站点遇到问题。您有对您的数据有完全访问权限,但应用程序呢?即使您可以故障切换到镜像数据,没有应用程序也是毫无办法的。现在,您必须等待您在镜像站点上提供应用程序,或者支付可能很高的金额才能在该站点上运行应用程序的实时版本——只是以防万一。

然而,容器,可在某一很小的单一系统内容纳完整的应用程序。虽然虚拟机在整个堆栈中运行所有内容,从操作系统向上,容器只携带它们所需要的内容,并与其他容器共享底层操作系统。

在上面的示例中,IT团队可以用较低成本在辅助站点上存储容器集合。随后,如果主站点遇到问题,他们可以在几分钟内启动应用程序容器以访问镜像的数据。

当您在公共云中选择辅助站点时,云存储的成本非常低,低到在此示例中容器存储的成本将是微不足道的。当您实际需要启动容器时,成本会变得明显,但是与停机时间的全部业务成本相比,使用工作系统的成本仍然会降低。

对于宕机容忍度比较低的组织来说,可以不断地启动容器,而不是存储它们,并在必要时使用它们。此时成本会更高,但是如果主站点发生故障,系统可以几乎实时地平滑地将故障转移到备份站点。您还可以通过支付弹性资源来最小化成本;一个未使用的启动容器将不会使用很多CPU或网络资源。当主站点发生故障并发生故障转移时,您只需要增加资源。

来自数据镜像的挑战

遗憾的是,镜像数据并不像看起来那么容易。距离是其中的主要问题;镜像站点越远,存在的延迟越高,维持数据的保真度就越难。另外,如果发生数据损坏,你最不想做的事情就是镜像损坏部分的数据。

如果您的组织需要通过持续的高可用性系统来保证业务连续性,则必须为高级数据镜像服务支付费用。云服务提供商(如Amazon Web Services和Microsoft Azure)现在拥有可实现远程数据镜像的高速数据连接。但是,具有数据备份的快照可能是一个较为经济的选项。快照从实时系统创建数据的只读副本。它不需要将实时系统锁定或暂停运转,并且在CPU和I/O利用率方面很有效率。快照有不同的方法,但是写时复制方法是上述要求的最佳选择。快照捕获对数据系统的每次写入,并将其作为后台任务写入主存储系统和远程系统。通过这些方法,您可以在容器旁快速启动快照数据集,以在辅助站点上创建运行的系统。

容器也变得对数据更加敏感。例如,它们可以容纳作为持久存储的数据卷。通过使用容器编排系统(container orchestration systems),可以将数据快照从主站点同步到远程容器。当前,这在高可用性系统中可能难以实现,但市场将如何发展是值得关注的。


本文作者:朱文浩

来源:51CTO

相关文章
|
6月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
721 6
|
6月前
|
XML Java 应用服务中间件
【SpringBoot(一)】Spring的认知、容器功能讲解与自动装配原理的入门,带你熟悉Springboot中基本的注解使用
SpringBoot专栏开篇第一章,讲述认识SpringBoot、Bean容器功能的讲解、自动装配原理的入门,还有其他常用的Springboot注解!如果想要了解SpringBoot,那么就进来看看吧!
669 2
|
8月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
510 16
|
9月前
|
Cloud Native 中间件 调度
云原生信息提取系统:容器化流程与CI/CD集成实践
本文介绍如何通过工程化手段解决数据提取任务中的稳定性与部署难题。结合 Scrapy、Docker、代理中间件与 CI/CD 工具,构建可自动运行、持续迭代的云原生信息提取系统,实现结构化数据采集与标准化交付。
753 1
云原生信息提取系统:容器化流程与CI/CD集成实践
|
8月前
|
Ubuntu 网络安全 PHP
如何使用vscode的Docker插件管理ubuntu 拉取服务器的镜像以及创建容器
本测试镜像旨在记录使用vscode的Docker插件拉取病创建Dockerfile,以及拉取镜像。
|
11月前
|
关系型数据库 MySQL Docker
|
监控 关系型数据库 MySQL
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
945 30
|
供应链 监控 安全
对话|企业如何构建更完善的容器供应链安全防护体系
对话|企业如何构建更完善的容器供应链安全防护体系
对话|企业如何构建更完善的容器供应链安全防护体系
|
人工智能 监控 安全
容器化AI模型的安全防护:构建可信的AI服务
在AI模型广泛应用的背景下,容器化AI模型的安全防护至关重要。主要安全威胁包括数据窃取、模型窃取、对抗样本攻击和模型后门攻击等。为应对这些威胁,需采取多层次防护措施:容器安全(如使用可信镜像、限制权限)、模型安全(如加密、水印)、数据安全(如加密、脱敏)和推理安全(如输入验证、异常检测)。此外,利用开源工具如Anchore Engine、Falco和ART等,可进一步加强防护。遵循安全开发生命周期、最小权限原则和深度防御等最佳实践,确保AI服务的安全性和可信度。
|
缓存 JavaScript 前端开发
Dockerfile全面指南:从基础到进阶,掌握容器化构建的核心工具
Dockerfile 是容器化开发中的关键工具。理解并掌握其使用方式,不仅能提高开发效率,还能让你的应用具备更强的可移植性和灵活性。通过优化配置和合理安排构建步骤,可以打造更轻量、更高效的容器镜像。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~