自動化数据基础设施的五个原因
自動化您的数据基础设施的五个理由。
2022年11月3日 – Èr èr èr rì
自动化数据基础设施的五个原因
你是否只关注应用基础设施?我们将介绍数据基础设施自动化的五个重要原因以及正确的执行方法。
软件是每个业务的核心,可靠的软件需要稳定的基础设施。但是,当提到基础设施时,您会想到什么?如果只考虑虚拟机、负载均衡器和网络交换机,就会忽略了数据基础设施这个关键的拼图。数据基础设施包括数据库、流媒体服务以及其他支持数据存储和传输的服务。
在这篇文章中,强调了自动化数据基础设施的好处,并警告了自动化的负担,同时解释了自动化数据基础设施的”方法”。
选择什么来讨论
-
- データインフラの断片
-
- 自動化の負担(間違った方法)
-
- 自動化する5つの理由
- データインフラ自動化のためのツール
数据基础设施的片段
在云计算时代之前,企业通过裸金属服务器或虚拟机来运行单体式关系型数据库。数据库服务器和托管它们的机器都有一个名字(宠物般的对待),它们构成了企业整个数据基础设施。而在云计算时代,多云成为了一个机遇。现在真实版本的情况是,关系型数据库保存在Amazon Web Service(AWS)上运行,所有更改的历史记录可能保存在Google Cloud Platform(GCP)上的长期存储对象中。
为了填补技术之间的数据差距,您可以使用Aiven for Apache Kafka®。您可以在云端通过流媒体模式同步数据,并可以利用其他多种服务来管理数据访问、可观察性和治理。所有这些综合在一起,将形成宝贵的数据基础设施。
另外,不要忘记在数据基础设施中设置的虚拟私有云(VPC)、子网和网络网关!
自動化的負擔(錯誤的方法)
你或许开始使用一些服务作为概念验证,也许发现内部的Shell脚本是最适合此工作的工具。随着时间的推移,你需要更多的服务,这些Shell脚本也变得更加复杂。在某个时间点,可能会添加一个手动流程来部署防火墙内部的服务。由于该防火墙后面的数据库不接受主机名,因此需要创建和管理静态IP地址。
在这个阶段,你陷入了自动化地狱,这些可爱的Shell脚本只是一个破碎的半自动化流程的碎片。
在中国有一种希望,那就是基础设施即代码(IaC)方法。
基于代码的基础设施即代码(IaC)方法的5个优势
过去,在社内采用Shell脚本被视为自动化。然而,这种自动化是不可预测的。而且,由于无法知道最近的更改是由谁进行的,也导致了缺乏解释责任。
IaC的目标是以基于软件开发实践的方式来管理基础设施。这包括版本控制、测试、持续集成、持续部署等方面。让我们通过使用IaC方法来管理和自动化数据基础设施,看看有哪些好处。
1: 数据基础设施的可靠性
在云时代,硬件故障不是一个如果(if)的问题,而是一个何时(when)的问题。当硬件发生故障时,如何确保正在运行的数据库服务的可靠性呢?
这是把基础硬件抽象为软件资源的原因。自动化工具可以创建、修改和销毁违反预期状态的资源。通过硬件和软件的松散耦合,可以动态且可靠地构建和重构系统。
2: 可预测的自动化工具
假设有一个脚本用于部署数据库服务。如果执行该脚本10次,会发生什么?会创建10个服务吗?为了避免这种情况,需要在创建服务之前添加逻辑来检查服务是否已经存在。在IaC方法中,这个逻辑已经被集成到所使用的工具中,确保实际系统遵循由代码定义的预期状态。
3:环境的一致性
请问您是如何确保整个开发环境和生产环境在计算、网络和存储容量方面是完全一致的呢?分布式运营团队如何确认为开发人员配置了相同的内部开发者平台?自动化工具可以从版本控制的软件设计图创建可重现且一致的软件环境。这适用于应用程序和数据基础设施的双方。
通过自动化实现的安全性
設定的錯誤導致了一貫性的缺失,而這種錯誤則會帶來安全問題。如果將長期的資料庫管理者認證信息保存在電子試算表中並與同事共享,那麼安全攻擊和系統入侵的風險將會大大增加。
无论是调用自动化工具的命令,还是在持续集成(CI)过程中执行工具,访问服务器以进行构建和配置应该是动态且短期的。自动化工具可以控制、审核访问,并在发生侵害时撤销特定的访问权限。
5:成本与敏捷度
工程团队的时间是有限和宝贵的。我想他们希望通过构建和修改应用程序来为业务增加价值,而不是花费时间来构建和配置系统。任何自动化工具,在初始引入时可能会显得昂贵,但通过自动化IT基础设施的构建和管理,可以无数次地节省工程团队的时间。
如果要部署数十个云资源作为数据基础设施的一部分,需要确保它们按照指定的顺序创建以处理依赖关系问题。在设置Apache Kafka® MirrorMaker 2的复制流之前,可能需要启动源和目标Apache Kafka®集群。删除资源也是类似的。
自动化和IaC的方法能够在后台完成依赖关系检查这一繁重的工作,并且能够跨云端和地域快速部署多个服务,从而节省组织的时间和成本。
变革的来临
在不同行业取得成功的公司是如何利用托管数据平台作为变革战略的一部分的呢?请查看电子书以了解他们是如何解决商业和技术挑战的。
从这边开始
用于数据基础设施自动化的工具
Terraform 是一款开源的基础设施即代码(IaC)工具,用于自动化多云部署模型中应用程序和数据基础设施的配置。虽然有许多自动化工具可供选择,但Terraform已经在许多客户的实际运营中经过测试。Terraform 使用提供程序来与几乎所有具有可访问API的平台和服务进行集成。
请参考以下的指南,了解如何使用Aiven Provider for Terraform自动化数据基础设施的配置。
-
- PostgreSQL® サービスを複数のクラウドやリージョンにデプロイする
-
- Apache Kafka® MirrorMaker 2によるクラスタ横断レプリケーション
- Apache Flink® ジョブのソースおよびシンクとしての Apache Kafka®
Aiven Terraform Cookbook- Aiven Terraform 食谱
每个“配方”都包含了架构图和用于自行构建设置所需的Terraform示例代码。
多看一些食谱
总结
现在,我们已经了解了自动化的优点,并介绍了使用IaC方法来自动化数据基础设施。接下来应该做什么呢?首先,可以从小处着手,在您的组织中进行概念验证。如果您需要管理数据基础设施的测试环境,可以尝试使用基于开源技术的Aiven。
为了获取关于Aiven和我们的服务的最新消息以及有关开源的一些信息,请订阅我们的每月新闻简报!关于Aiven的日常新闻可以在LinkedIn和Twitter上查看。
如果您想了解服务的更新信息,请查看变更记录。