k8s上的火花与k8s操作器上的火花的对比是怎样的

技术spark on k8s与spark on k8s operator的对比是怎样的这期内容当中小编将会给大家带来有关spark on k8s与spark on k8s operator的对比是怎样的,文章内容丰富且以

本期,边肖将为您带来k8s上的spark和k8s上的spark operator的对比。文章内容丰富,从专业角度进行分析和描述。看完这篇文章,希望你能有所收获。

对于目前基于k8s的的spark应用,主要采用两种方式运行

火花在k8s上由火花原生支持

基于k8s算子的k8s算子火花

前者是spark社区引入k8s客户端支持资源管理框架K8S的实现。

后者是k8s社区为支持spark开发的运营商。

k8s上的差异spark在k8s上的操作者社区支持spark社区非官方支持版本的GoogleCloudPlatform要求根据官网安装Spark=2.3,Kubernetes=1.6 Spark 2.3,Kubernetes=1.13。K8s pod创建列表编辑删除的权限是必须的,需要自己编译源代码来构建镜像。构建过程繁琐,k8s管理员需要安装孵化器/sparkoperator,需要Pod的权限创建列表编辑删除才能通过spark submit直接提交。比如在:下,代码1支持客户端和集群模式,k8s上的spark通过yaml配置文件提交,支持客户端和集群模式,提交如代码2。具体参数参考火花操作员配置的优势,以符合火花的方式提交任务。对于习惯了spark的用户来说,更容易使用k8s配置文件提交任务,可重用性强。缺点:运行后,驱动的资源不会自动释放。运行后,驱动程序的资源不会自动释放。对于spark提交方法,无论是客户端提交还是集群提交,都继承了SparkApplication。客户端提交,子类是JavaMainApplication,通过反射运行。对于k8s任务分析,集群管理器是KubernetesClusterManager,与向纱线提交任务的方式没有区别。以集群模式提交。对于k8s任务,spark程序的入口是KubernetesClientApplication,客户端会建立一个clusterIp为None的服务,执行器会和这个服务进行rpc,比如任务提交的交互。并且会构建一个以driver-conf-map为后缀的configMap,在构建spark driver pod时以volumn mount的形式引用,在驱动提交任务时这个文件的内容最终以- properties-file的形式提交给spark driver。因此,spark.driver.host等配置项被传输到驱动程序,同时会建立一个后缀为-hadoop-config的configMap。但是k8s图像怎么区分是运行执行器还是驱动程序呢?一切都在dockerfile(根据hadoop和kerbeors的不同环境配置不同)和entrypoint中,其中shell区分了驱动程序和执行器;采用k8s CRD控制器机制定制CRD,根据操作员SDK监控相应的添加、删除、检查事件。如果监控到对应CRD的创建事件,则根据对应的yaml文件配置项建立pod提交spark任务。具体实施请参考k8s操作员设计上的火花。在集群和客户端模式下提交的具体原则与k8s上的spark一致,因为镜像重用是spark的官方镜像代码1。

-

bin/spark-提交\

-master k8 s ://3359192 . 1688888886

-部署-模式集群\

名字

park-pi \
    --class org.apache.spark.examples.SparkPi \
    --conf spark.executor.instances=2 \
    --conf "spark.kubernetes.namespace=dev" \
    --conf "spark.kubernetes.authenticate.driver.serviceAccountName=lijiahong" \
    --conf "spark.kubernetes.container.image=harbor.k8s-test.uc.host.dxy/dev/spark-py:cdh-2.6.0-5.13.1" \
    --conf "spark.kubernetes.container.image.pullSecrets=regsecret" \
    --conf "spark.kubernetes.file.upload.path=hdfs:///tmp" \
    --conf "spark.kubernetes.container.image.pullPolicy=Always" \
    hdfs:///tmp/spark-examples_2.12-3.0.0.jar

code 2
---
apiVersion: "sparkoperator.k8s.io/v1beta2"
kind: SparkApplication
metadata:
  name: spark-pi
  namespace: dev
spec:
  type: Scala
  mode: cluster
  image: "gcr.io/spark-operator/spark:v3.0.0"
  imagePullPolicy: Always
  mainClass: org.apache.spark.examples.SparkPi
  mainApplicationFile: "local:///opt/spark/examples/jars/spark-examples_2.12-3.0.0.jar"
  sparkVersion: "3.0.0"
  restartPolicy:
    type: Never
  volumes:
    - name: "test-volume"
      hostPath:
        path: "/tmp"
        type: Directory
  driver:
    cores: 1
    coreLimit: "1200m"
    memory: "512m"
    labels:
      version: 3.0.0
    serviceAccount: lijiahong
    volumeMounts:
      - name: "test-volume"
        mountPath: "/tmp"
  executor:
    cores: 1
    instances: 1
    memory: "512m"
    labels:
      version: 3.0.0
    volumeMounts:
      - name: "test-volume"
        mountPath: "/tmp"

上述就是小编为大家分享的spark on k8s与spark on k8s operator的对比是怎样的了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/147376.html

(0)

相关推荐

  • C++为什么不要拿着锁调用未知代码

    技术C++为什么不要拿着锁调用未知代码本篇内容主要讲解“C++为什么不要拿着锁调用未知代码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++为什么不要拿着锁调用未知代码”吧

    攻略 2021年11月25日
  • 如何正确写SQL语句

    技术如何正确写SQL语句本篇内容介绍了“如何正确写SQL语句”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!sql语句的执

    攻略 2021年10月22日
  • Oracle和MySQL中有意向锁吗

    技术Oracle和MySQL中有意向锁吗这篇文章主要介绍“Oracle和MySQL中有意向锁吗”,在日常操作中,相信很多人在Oracle和MySQL中有意向锁吗问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法

    攻略 2021年11月19日
  • 用锲而不舍造句,锲而不舍的“而”字是什么意思

    技术用锲而不舍造句,锲而不舍的“而”字是什么意思“而”应为表假设的连词用锲而不舍造句。 这个词来自“锲而舍之,朽木不折,锲而不舍,金石可镂”(《劝学》-荀子); 我们再来看而的用法,“而”在文言文中常用作连词,但连词的关

    生活 2021年10月24日
  • html如何设置input的默认值

    技术html如何设置input的默认值本篇内容主要讲解“html如何设置input的默认值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“html如何设置input的默认值”吧

    攻略 2021年12月10日
  • 土字旁一个于怎么读,一个土字旁一个念什么字

    技术土字旁一个于怎么读,一个土字旁一个念什么字该字是土字旁一个于怎么读:埝。埝 niàn
    基本释义:田里或浅水里用来挡水的土埂:堤~。
    详细释义:
    《名词》:
    田里或浅水里用于挡水的土埂 。
    如:打埝
    淮北盐场交货

    生活 2021年10月26日