容器技术入门与实践
1. 容器技术概述
1.1 容器的局限性
容器为服务的打包和运行提供了便捷方式。然而,随着企业管理的容器数量不断增加,手动启动容器的工作量呈指数级增长,同时还需快速响应外部需求。在生产环境中使用容器时,企业通常有以下需求:
- 大量服务之间的轻松通信。
- 无论运行应用的容器数量如何,都能对应用进行资源限制。
- 响应应用使用高峰,增加或减少运行的容器。
- 应对服务性能下降。
- 逐步向部分用户推出新版本。
由于容器运行时(如 Podman)无法充分满足上述需求,企业往往需要容器编排技术。
1.2 Kubernetes 概述
Kubernetes 是一种编排服务,可简化容器化应用的部署、管理和扩展。在 Kubernetes 中,可管理的最小单位是 Pod。Pod 由一个或多个容器及其存储资源和 IP 地址组成,代表一个单一的应用。Kubernetes 还使用 Pod 来编排其中的容器,并将其作为一个整体进行资源限制。
Kubernetes 具有以下特性:
| 特性 | 描述 |
| — | — |
| 服务发现和负载均衡 | 通过为每组容器分配单个 DNS 条目,实现服务间通信。请求服务只需知道目标的 DNS 名称,集群可更改容器的位置和 IP 地址,而不影响服务。还能在提供服务的容器池之间进行负载均衡。 |
| 水平扩展 | 应用可通过 Kubernetes 命令行界面或 Web UI 手动或自动进行扩展。 |
| 自我修复 | 使用用户定义的健康检查来监控容器,在发生故障时重启和重新调度。
超级会员免费看
订阅专栏 解锁全文
1133

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



