一、背景
在安装 TiDB v6.0的时候,使用的是离线包,安装 TiSpark 采用的方式是 在线安装的形式,使用 Tiup 扩容的方式安装 TiSpark 集群。并且最高的 TiSpark 版本是 TiSpark v2.4.1,没有最新的 Release TiSpark v2.5.1 。给自己提了个问题,能否离线安装 TiSpark ?目前我的浅层的理解是:在已有 Spark 集群的方式下可以实现离线安装 TiSpark。
使用 TiUP 扩容的方式没有找到离线安装 TiSpark 的钥匙🔑
二、准备环境
2.1 准备安装包
离线安装: https://pingcap.com/zh/product-community/#TiDB 6.0.0-DMR
1)下载安装包 tidb-community-server-v6.0.0-linux-amd64.tar.gz
2)下载tookit tidb-community-toolkit-v6.0.0-linux-amd64.tar.gz
3)下载 Spark V3.1.3 https://dlcdn.apache.org/spark/spark-3.1.3/spark-3.1.3-bin-hadoop3.2.tgz
4)下载 TiSpark V2.5.1 https://github.com/pingcap/tispark/releases/download/v2.5.1/tispark-assembly-3.1-2.5.1.jar
2.2 Cluster111 拓扑
# cluster111.yml server_configs: tidb: log.slow-threshold: 300 binlog.enable: false binlog.ignore-error: false tikv: readpool.storage.use-unified-pool: false readpool.coprocessor.use-unified-pool: true pd: schedule.leader-schedule-limit: 4 schedule.region-schedule-limit: 2048 schedule.replica-schedule-limit: 64 replication.location-labels: - host pd_servers: - host: 10.0.2.15 # ssh_port: 22 # name: "pd-1" client_port: 2379 # peer_port: 2380 tidb_servers: - host: 10.0.2.15 tikv_servers: - host: 10.0.2.15 # ssh_port: 22 port: 20160 status_port: 20180 config: server.grpc-concurrency: 4 monitoring_servers: - host: 10.0.2.15 grafana_servers: - host: 10.0.2.15 alertmanager_servers: - host: 10.0.2.15 mkdir -p /usr/local0/webserver/tidb/ cd /usr/local0/webserver/tidb/ tar -zxvf tidb-community-toolkit-v6.0.0-linux-amd64.tar.gz tar -zxvf tidb-community-server-v6.0.0-linux-amd64.tar.gz cd ./tidb-community-server-v6.0.0-linux-amd64/ sh local_install.sh source /root/.bash_profile tiup update cluster tiup cluster list # 检测环境配置并尝试修正 tiup cluster check ./cluster111.yml --user root -p --apply # 安装cluster111 tiup cluster deploy cluster111 v6.0.0 ./cluster111.yml --user root -p # 启动集群 tiup cluster start cluster111 tiup cluster display cluster111
2.3 离线安装 Cluster111
# 安装tiup curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh source /root/.bash_profile tiup update cluster tiup cluster list # 检测环境配置并尝试修正 tiup cluster check ./cluster111.yml --user root -p --apply # 安装cluster111 tiup cluster deploy cluster111 v6.0.0 ./cluster111.yml --user root -p # 启动集群 tiup cluster start cluster111 tiup cluster display cluster111
三、离线安装 TiSpark v2.5.1
3.1 解压 spark-3.1.3-bin-hadoop3.2.tgz
# 替换 Spark mkdir -p /usr/local0/webserver/tispark && tar -zxvf spark-3.1.3-bin-hadoop3.2.tgz -C /usr/local0/webserver/tispark/ mv /usr/local0/webserver/tispark/spark-3.1.3-bin-hadoop3.2 /tidb-deploy/tispark-master-7077 chown tidb.tidb -R /tidb-deploy/tispark-master-7077 # 替换 TiSpark 包 cp -rf tispark-assembly-3.1-2.5.1.jar /tidb-deploy/tispark-master-7077/jars/
3.2 安装openjdk8(略)
3.3 spark-defaults.conf 中增加配置
# sql扩展类 spark.sql.extensions org.apache.spark.sql.TiExtensions # master节点 spark.master spark://10.0.2.15:7077 # pd节点 多个pd用逗号隔开 如:10.16.20.1:2379,10.16.20.2:2379,10.16.20.3:2379 spark.tispark.pd.addresses 10.0.2.15:2379
3.4 启动 Spark 集群
/tidb-deploy/tispark-master-7077/sbin/start-all.sh
3.5 在已有 Spark 集群上部署 TiSpark
3.5.1 启动 Spark-shell 的方式
# 启动 spark-shell /tidb-deploy/tispark-master-7077/bin/spark-shell --jars /tidb-deploy/tispark-master-7077/jars/tispark-assembly-3.1-2.5.1.jar # 执行 spark.sql("select ti_version()").collect
3.5.2 启动 Spark-sql 的方式
# 启动 Spark-sql /tidb-deploy/tispark-master-7077/bin/spark-sql --jars /tidb-deploy/tispark-master-7077/jars/tispark-assembly-3.1-2.5.1.jar # 执行 select ti_version();
3.5.3 spark master的情况
五、总结
本篇实践了 以已有 Spark 集群的方式,实现离线安装 TiSpark v2.5.1,目前对TiSpark的理解还比较浅,后续会继续探索 TiSpark的功能。
如果您 只读使用 TiUP 扩容的方式如何离线扩容方式安装 TiSpark 可以留言!
谢谢!
参考
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




