K8S(全称 Kubernetes)是由 Google 开源的容器编排与管理平台,用于自动化部署、扩展和管理容器化应用程序。它是云原生计算基金会(CNCF)的核心项目,已成为容器编排领域的行业标准。

核心功能:

  1. 容器编排
    自动化调度和管理容器(如 Docker 容器),优化资源利用率。
  2. 服务发现与负载均衡
    动态分配网络流量,保障服务高可用。
  3. 自动扩缩容
    根据 CPU、内存等指标自动调整应用实例数量。
  4. 自我修复
    自动重启故障容器、替换不可用节点。
  5. 存储编排
    支持多种存储系统(如本地存储、云存储)的动态挂载。
  6. 配置与密钥管理
    集中管理敏感信息和应用配置。

核心概念:

概念 说明
Pod 最小调度单元,包含一个或多个共享资源的容器。
Deployment 定义应用的副本数和更新策略,支持滚动升级和回滚。
Service 为 Pod 提供稳定的网络端点,实现服务发现。
Namespace 逻辑隔离集群资源(如开发、测试、生产环境)。
ConfigMap 存储非敏感配置数据。
Secret 存储敏感信息(如密码、令牌)。

典型应用场景:

  • 微服务架构:管理数百个服务的部署与通信。
  • 混合云/多云部署:跨云平台统一调度资源。
  • CI/CD 流水线:与 Jenkins、GitLab 等工具集成,实现自动化发布。
  • 大数据/AI 任务:分布式训练任务调度(如 TensorFlow/PyTorch Job)。

示例代码(部署 Nginx):

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:latest
        ports:
        - containerPort: 80

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐