上一篇文章《实时流存储fluss学习系列(一)fluss介绍》对fluss做了简单的介绍。本文我们介绍下fluss的安装部署。首先介绍下fluss的集群结构:
这里fluss的整体部署依赖于zookeer进行协调。然后在下面会有一个CoordinatorServer主节点。还有一个CoordinatorServer备选节点(这里的主备master节点是目前大多数分布式框架的主要架构形式)。在下层分布非常多的TabletServer。整体架构形式类似于hbase。
Fluss官网提供的安装部署主要有3种方式,分别是:
1、Local Cluster 适合本地小规模进行开发测试。 2、Distributed Cluster 适合生产环境的大规模应用。 3、Docker部署 适合懒人在本地运行测试及演示。
以上3种方式各有优劣,各有适合的场景。大家根据实际情况进行选择即可。本文主要是用来进行演示(fluss目前应用不到我们的生产上,所以仅是为了学习研究),所以这里主要是使用docker-compose的方式进行部署。如果你也是为学习演示的话,建议直接使用docker-compose的方式进行部署即可。docker-compose部署的yml文件内容如下:
services: coordinator-server: image: fluss/fluss:0.5.0 command: coordinatorServer depends_on: - zookeeper environment: - | FLUSS_PROPERTIES= zookeeper.address: zookeeper:2181 coordinator.host: coordinator-server remote.data.dir: /tmp/fluss/remote-data lakehouse.storage: paimon paimon.catalog.metastore: filesystem paimon.catalog.warehouse: /tmp/paimon tablet-server: image: fluss/fluss:0.5.0 command: tabletServer depends_on: - coordinator-server environment: - | FLUSS_PROPERTIES= zookeeper.address: zookeeper:2181 tablet-server.host: tablet-server data.dir: /tmp/fluss/data remote.data.dir: /tmp/fluss/remote-data kv.snapshot.interval: 0s lakehouse.storage: paimon paimon.catalog.metastore: filesystem paimon.catalog.warehouse: /tmp/paimon zookeeper: restart: always image: zookeeper:3.8.4 jobmanager: image: fluss/quickstart-flink:1.20-0.5 ports: - "8083:8081" command: jobmanager environment: - | FLINK_PROPERTIES= jobmanager.rpc.address: jobmanager volumes: - shared-tmpfs:/tmp/paimon taskmanager: image: fluss/quickstart-flink:1.20-0.5 depends_on: - jobmanager command: taskmanager environment: - | FLINK_PROPERTIES= jobmanager.rpc.address: jobmanager taskmanager.numberOfTaskSlots: 10 taskmanager.memory.process.size: 2048m taskmanager.memory.framework.off-heap.size: 256m volumes: - shared-tmpfs:/tmp/paimon volumes: shared-tmpfs: driver: local driver_opts: type: "tmpfs" device: "tmpfs"
在服务器上编写上面的docker-compose.yml文件之后,使用:
docker-compose up -d
命令可以直接启动所有的角色,如下图:
然后就可以开始使用这个集群,进行测试和演示了。
备注:
1、这里的docker-compose文件是fluss官网提供的快速入门的案例。可直接使用即可。
2、如果要使用flink-sql的命令行,则直接键入:
docker-compose exec jobmanager ./sql-client
就会进入到flink的sql命令行了,如下图:
3、如果要集成lakehouse的话,比如集成paimon,那么需要启动Lakehouse Tiering Service服务,使用下面的命令即可启动:
docker-compose exec coordinator-server ./bin/lakehouse.sh -D flink.rest.address=jobmanager -D flink.rest.port=8081 -D flink.execution.checkpointing.interval=30s
启动之后可以在flink的ui上看到
后面我们再介绍如何具体的使用。
发表评论