云原生与Kubernetes入门:从理论到实践
云原生技术概述
云原生已成为描述利用云、容器和编排技术的现代应用程序和服务的常用术语,通常基于开源软件。云原生计算基金会(CNCF)于2015年成立,旨在围绕一系列高质量项目培育社区,这些项目将容器编排作为微服务架构的一部分。CNCF是Linux基金会的一部分,汇集了开发者、最终用户和供应商,包括主要的公共云提供商。其旗下最知名的项目是Kubernetes,同时还孵化和推广云原生生态系统的其他关键组件,如Prometheus、Envoy、Helm等。
云并不一定意味着公共云提供商,许多组织运行自己的内部“云”平台,同时也可能使用多个公共云提供商处理不同的工作负载。一个应用程序要成为云原生,不仅仅是在云计算实例上运行现有应用程序,也不只是在容器中运行或使用云服务,而是要具备以下一些特征:
1. 可自动化 :应用程序若要由机器而非人工部署和管理,需遵循通用标准、格式和接口。Kubernetes提供了这些标准接口,开发者无需为此担忧。
2. 无处不在且灵活 :容器化微服务与物理资源解耦,可轻松在节点或集群之间移动。
3. 弹性和可扩展 :传统应用程序往往存在单点故障,而云原生应用程序由于其分布式特性,可通过冗余和优雅降级实现高可用性。
4. 动态性 :像Kubernetes这样的容器编排器可以调度容器,充分利用可用资源,实现高可用性并进行滚动更新,确保服务升级时不丢失流量。
5. 可观测性 :云原生应用程序难以检查和调试,
超级会员免费看
订阅专栏 解锁全文
1208

被折叠的 条评论
为什么被折叠?



