基于Kubernetes的Spark部署完全指南
至此,Spark容器镜像已经构建好,并可以拉取使用了。让我们使用此镜像来部署Spark Master和Worker。第一步是创建Spark Master。我们将使用Kubernetes ReplicationController创建Spark Master。在本文的示例中,我仅用单实例创建Spark Master。而在有HA需求的生产环境中,你可能需要将副本数设置为3或者以上。 kind: ReplicationController apiVersion: v1 metadata: name: spark-master-controller spec: replicas: 1 selector: component: spark-master template: metadata: labels: component: spark-master spec: hostname: spark-master-hostname subdomain: spark-master-headless containers: - name: spark-master image: mydockerrepo/spark:2.4.4 imagePullPolicy: Always command: ["/start-master"] ports: - containerPort: 7077 - containerPort: 8080 resources: requests: cpu: 100m 为了使Spark Worker节点可以发现Spark Master节点,我们还需要创建headless服务。 当你从GitHub仓库完成克隆,并进入spark-kubernetes目录后,就可以启动Spark Master服务了,命令如下: kubectl create -f spark-master-controller.yaml kubectl create -f spark-master-service.yaml 现在,确保Master节点和所有的服务都正常运行,然后就可以开始部署Worker节点了。Spark Worker的副本数设置为2,你可以根据需要修改。Worker启动命令如下: kubectl create -f spark-worker-controller.yaml 最后,通过以下命令确认是否所有服务都正常运行: kubectl get all 执行以上命令,你应该可以看到类似下面的内容: (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |