k8s一些名词解释

avatar
作者
筋斗云
阅读量:0

潮汐计算

是一种根据负载变化动态调整资源分配的计算模式。其核心思想是利用峰值和非峰值时段的资源需求差异,动态地扩展或缩减计算资源。在 Kubernetes 环境中,可以通过自动扩展(auto-scaling)机制,根据工作负载的变化自动调整计算资源,最大化资源利用率并减少不必要的资源开销。

配置 Kubernetes 的 Horizontal Pod Autoscaler(HPA)和 Vertical Pod Autoscaler(VPA),根据负载变化动态扩展或缩减 Pod 数量和资源配额。
使用 Kubernetes 的 Cluster Autoscaler,根据集群中的资源需求自动调整节点数量。

在、离混部(在线和离线混合部署)

在、离混部(在线和离线混合部署)是一种在同一计算集群中同时运行在线服务和离线任务的资源管理策略。它的主要目的是提高资源利用率和降低成本。在实际项目中,这种策略可以应用于大数据处理的场景,例如将实时数据处理(在线)和批量数据处理(离线)混合在一个 Kubernetes 集群中运行。以下是一个详细的例子说明:

项目背景

假设我们有一个电商平台,需要处理大量的用户行为数据。这些数据需要被实时分析来支持在线推荐系统(在线服务),同时也需要定期进行批量处理来生成用户画像和销售报告(离线任务)。

部署架构

  1. 实时处理(在线服务)

    • 使用 Apache Flink 进行实时数据流处理,分析用户的实时行为数据,并生成在线推荐结果。
    • Flink 作业需要低延迟和高可用性,因此需要保证实时处理服务的稳定运行。
  2. 批量处理(离线任务)

    • 使用 Apache Spark 进行批处理作业,每天处理大量历史数据,生成用户画像和销售报告。
    • Spark 作业是周期性的,可以在系统负载较低时运行。

实现步骤

  1. 容器化应用

    • 将 Flink 和 Spark 分别打包成 Docker 镜像。
  2. 部署到 Kubernetes

    • 使用 Kubernetes 的 Deployment 来部署 Flink 作业,使其能够持续运行,处理实时数据流。
    • 使用 Kubernetes 的 CronJob 来部署 Spark 批处理作业,使其每天在特定时间运行。
  3. 混合调度配置

    • 配置 Flink 和 Spark 的资源请求和限制
  4. 配置优先级和调度策略

    • 设置在线服务(Flink)的优先级高于离线任务(Spark),以确保实时处理的稳定性。

      apiVersion: scheduling.k8s.io/v1 kind: PriorityClass metadata:   name: high-priority value: 1000000 globalDefault: false description: "This priority class is used for high priority workloads." 
    • 在 Flink Deployment 和 Spark CronJob 中指定优先级:

      spec

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!