欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析 大数据容器 

程序员文章站 2022-07-09 21:28:01
...
摘要: 容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析 (二):Kubernetes如何助力Spark大数据分析 概述 本文为大家介绍一种容器化的数据服务Spark + OSS on ACK,允许Spark分布式计算节点对阿里云OSS对象存储的直接访问。
 
容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析
 
(二):Kubernetes如何助力Spark大数据分析
 
概述
 
本文为大家介绍一种容器化的数据服务Spark + OSS on ACK,允许Spark分布式计算节点对阿里云OSS对象存储的直接访问。借助阿里云Kubernetes容器服务与阿里云OSS存储资源的深度整合,允许Spark分布式内存计算,机器学习集群对云上的大数据直接进行分析和保存结果。
 
先决条件
 
你已经通过阿里云容器服务创建了一个Kubernetes集群,详细步骤参见创建Kubernetes集群
 
从容器服务控制台创建一个Spark OSS实例
 
使用三次点击来创建一个1 master + 3 worker 的Spark OSS的实例
2 点击 “应用目录”
3 选择 "spark-oss", 点击 “参数”
容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析
            
    
    
        大数据容器 
 
  1. 给你的应用一个名字, e.g. spark-oss-online2
  2. (必选)填写你的oss_access_key_id和oss_access_key_secret
 
Worker: # set OSS access keyID and secret oss_access_key_id: <Your sub-account> oss_access_key_secret: <your key_secret of sub-account>
3.(可选)修改工作节点数目 Worker.Replicas: 3
容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析
            
    
    
        大数据容器 
 
4 点击 “部署”
5 点击 “Kubernetes 控制台”,查看部署实例
容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析
            
    
    
        大数据容器 
6 点击 服务, 查看外部端点, 点击URL访问Spark集群
容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析
            
    
    
        大数据容器 
 
容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析
            
    
    
        大数据容器 
 
7 测试Spark集群
 
  1. 打开一个spark-shell
kubectl get pod | grep worker
 
spark-oss-online2-worker-57894f65d8-fmzjs 1/1 Running 0 44m
spark-oss-online2-worker-57894f65d8-mbsc4 1/1 Running 0 44m
spark-oss-online2-worker-57894f65d8-zhwr4 1/1 Running 0 44m
 
kubectl exec -it spark-oss-online2-worker-57894f65d8-fmzjs -- /opt/spark/bin/spark-shell --master spark://spark-oss-online2-master:7077
 
1.粘贴下列代码,使用Spark测试OSS的读写性
// Save RDD to OSS bucket val stringRdd = sc.parallelize(Seq("Test Strings\n Test String2")) stringRdd.saveAsTextFile("oss://eric-new/testwrite12") // Read data from OSS bucket val lines = sc.textFile("oss://eric-new/testwrite12") lines.take(10).foreach(println)
 
Test Strings
Test String2
 
CLI 命令行操作
 
Setup keys and deploy spark cluster in one command
 
export OSS_ID=<your oss id> export OSS_SECRET=<your oss secrets> helm install -n myspark-oss --set "Worker.oss_access_key_id="$OSS_ID",Worker.oss_access_key_secret="$OSS_SECRET incubator/spark-oss
 
kubectl get svc| grep oss myspark-oss-master ClusterIP 172.19.9.111 <none> 7077/TCP 2m myspark-oss-webui LoadBalancer 172.19.13.1 120.55.104.27 8080:30477/TCP 2m
 
阅读更多干货好文,请关注扫描以下二维码: 
容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析
            
    
    
        大数据容器 
相关标签: 大数据 容器