正常在我们的环境使用tidb集群,都默认没有spark集群的,但之前部署tidb的时候,spark默认已经和系统编译,下面我们的工作就是搭建spark集群和tikv融合
官方是要我们下载tispark,但我们不需要下载:
1.配置文件:
cd /data/tidb/deploy/spark/conf
cat spark-defaults.conf
--------------------------------------
spark.driver.memory 2g
spark.eventLog.enabled False
spark.tispark.grpc.framesize 268435456
spark.tispark.grpc.timeout_in_sec 100
spark.tispark.meta.reload_period_in_sec 60
spark.tispark.request.command.priority Low
spark.tispark.table.scan_concurrency 256
spark.master spark://10.40.21.81:7077
spark.tispark.pd.addresses 10.40.21.81:2379,10.40.21.82:2379,10.40.21.83:2379
--------------------------------------
2.启动master
cd /data/tidb/deploy/spark/sbin
sh start-master.sh
3.启动slave(在tikv上操作,默认工作的节点要和数据节点本地化原则)
cd /data/tidb/deploy/spark/sbin
./start-slave.sh spark://10.40.21.81:7077
至此,tidb+spark集群就搭建完成
调整spark使用的系统资源限制可以在下面脚本中调整,然后执行。
spark-env.sh
也可以通过ansible来统一配置管理,但前提是要在ansible环境参数文件中,将spark的信息注册进去
cat inventory.ini
[spark_master]
10.40.21.81
[spark_slaves]
10.40.21.83
10.40.21.84
10.40.21.85