diff --git a/usecases/running-spark-with-kubernetes-native-scheduler.md b/usecases/running-spark-with-kubernetes-native-scheduler.md index 0f58181d3..f4bb42adb 100644 --- a/usecases/running-spark-with-kubernetes-native-scheduler.md +++ b/usecases/running-spark-with-kubernetes-native-scheduler.md @@ -17,6 +17,18 @@ TL;DR 这个主题比较大,该开源项目也还在不断进行中,我单 - Pepperdata - Red Hat +## 为何使用 spark on kubernetes + +使用kubernetes原生调度的spark on kubernetes是对现有的spark on yarn/mesos的资源使用方式的革命性的改进,主要表现在以下几点: + +1. Kubernetes原生调度:不再需要二层调度,直接使用kubernetes的资源调度功能,跟其他应用共用整个kubernetes管理的资源池; +2. 资源隔离,粒度更细:原先yarn中的queue在spark on kubernetes中已不存在,取而代之的是kubernetes中原生的namespace,可以为每个用户分别指定一个namespace,限制用户的资源quota; +3. 细粒度的资源分配:可以给每个spark任务指定资源限制,实际指定多少资源就使用多少资源,因为没有了像yarn那样的二层调度(圈地式的),所以可以更高效和细粒度的使用资源; +4. 监控的变革:因为做到了细粒度的资源分配,所以可以对用户提交的每一个任务做到资源使用的监控,从而判断用户的资源使用情况,所有的metric都记录在数据库中,甚至可以为每个用户的每次任务提交计量; +5. 日志的变革:用户不再通过yarn的web页面来查看任务状态,而是通过pod的log来查看,可将所有的kuberentes中的应用的日志等同看待收集起来,然后可以根据标签查看对应应用的日志; + +所有这些变革都可以让我们更高效的获取资源、更有效率的获取资源! + ## Spark 概念说明 [Apache Spark](http://spark.apache.org) 是一个围绕速度、易用性和复杂分析构建的大数据处理框架。最初在2009年由加州大学伯克利分校的AMPLab开发,并于2010年成为Apache的开源项目之一。