云原生应用配置管理的5个最佳实践

在云原生应用中,配置管理是一个挑战。文章提出了五个最佳实践,包括保留单一可信配置源、自动化执行变更、使用版本控制、集中化管理和自动化分发配置,以降低复杂性和风险。HummerRisk是一个开源平台,专注于云原生安全和治理。
摘要由CSDN通过智能技术生成

引言

在复杂的云原生应用程序中管理配置信息是非常困难的,似乎到处都有配置。在使用基于微服务架构的云原生应用程序中,配置问题成倍增加。 配置无处不在。有针对网络的配置,比如路由规则、端口控制、负载均衡,有针对数据库的配置,服务器的配置,还有众多微服务中间件的配置,以及各种相关的安全配置。

一些配置项是已知的并且很好的在一些版本控制系统中管理着,但是也有很多的配置,是零散存储,并且缺乏管理的。

如何控制并降低与云原生环境中大量配置信息相关的复杂性? 这里有五种最佳实践,可帮助您处理混乱的配置。

1. 为所有配置保留单一可信来源

配置有些时候会被复制到各处。将一台服务器中使用的配置复制到另一台服务器,然后再复制到另一台服务器。 最终,可能会有数百个相同或几乎相同的配置副本。 对一个副本的更改不会影响到其他副本的风险很高。 随着时间的推移,配置会发生漂移,导致配置错误、应用程序故障甚至安全漏洞。

6546ae4701c64708e854c48e6b56d1bc.jpeg

相反,对于每种类型的配置信息(例如特定类型的配置文件),保留一份配置的主副本。 这个单一的主副本是对配置进行所有更改的地方。然后,如果不同位置需要此配置,通过自动化工具将配置推送到目标位置。

此最佳实践使所有相同的配置保持一致,并确保对一个配置所做的必要更改适用于所有副本。

2. 使用自动化的方式来执行变更

在之前的最佳实践中,对于某些配置文件,它们的配置在所有设备上几乎相同。 有时,每个配置副本都需要进行小的更改。

与其为每个组件保留一个单独的、唯一的配置副本,不如使用一个副本并使用宏和变量自动对每个组件进行更改。

例如,考虑一个特定的云安全策略,该策略需要规则中的服务器 IP 地址副本。 配置在多个用例中几乎相同。 但是该规则包含一个 IP 地址,该地址会随着用例的不同而变化。 不要创建许多配置,而是使用包含 IP 地址的变量创建一个配置。 部署安全策略时,在每个用例中将变量替换为正确的 IP 地址。

这种自动化将确保以完全相同的方式维护类似的配置文件,并且不会在每次使用配置时发生变化漂移。

2bb64decdbd5eb4288be04d8f797b954.jpeg

3.使用版本控制

几乎所有配置最终都可以作为简单的文本文件进行管理。 将这些文本文件放入您的版本控制系统(例如 Git)。 然后,当您需要部署配置更改时,从版本控制系统中获取适当的版本。

37bdc3b5bb8b84d65cf8192a58f9a005.jpeg

这种做法将保留对配置的所有更改的历史记录; 进行更改时,可以记录更改人和更改原因。

这在出现问题时会很有帮助。 如果系统突然开始出现异常行为,对版本控制系统进行简单检查就可以了解配置最近发生了哪些变化。 这些更改,如果发生错误,可以回滚或分析以查看它们导致问题的原因并更快地修复。

4.集中配置管理

作为先前最佳实践的必然结果,将所有配置集中在一个众所周知的位置。 使用版本控制系统来管理您的配置使这更容易做到。 通过集中配置,您永远不必猜测指定组件的“主”配置存在于何处。 它们在出现问题的情况下很容易审查,如果配置文件的位置是可管理的,使用和扩展会更容易。 当需要增加新的配置文件时,如果其他配置都在同一位置,则遵循上述最佳实践会更容易。 这减少了出于方便而使用未跟踪配置的可能性,并确保每个人都遵循最佳实践并保持问责制。

5.使用自动化系统分发配置信息

您的配置应该使用自动化系统进行部署,就像您的软件部署方式一样。 使用 CI/CD 管道是现代云原生应用程序的标准策略,部署管道应部署所有配置以及所有代码。 如上所述,这可以实现变量的一致应用和对宏的更改,并确保所有更改都部署在需要配置的所有组件中。 自动化可确保管理大量配置的一致性和责任制。

4f77e30afdbcca06d7e5550fe1e0bb10.jpeg

总结

配置即资产。配置与代码一样有价值,不正确的更改可能对您的应用程序同样危险。 您应该按照对源代码应用的相同级别来对待您的配置。

通过使用由版本控制跟踪并自动部署的共享、集中、模板化配置,您将降低现代云原生应用程序固有的配置复杂性。

关于HummerRisk

HummerRisk 是开源的云原生安全平台,以非侵入的方式解决云原生的安全和治理问题,核心能力包括混合云的安全治理和K8S容器云安全检测。

Github 地址:https://github.com/HummerRisk/HummerRisk

Gitee 地址:https://gitee.com/hummercloud/HummerRisk

80bbf5e961773890fefad715cd2b7728.jpeg

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HummerCloud云原生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值