使用docker部署flink实践

anton

编辑配置文件

flink.yml
version: "3.2"
services:
  jobmanager:
    image: ${FLINK_DOCKER_IMAGE_NAME:-flink}
    expose:
      - "6123"
    ports:
      - "8081:8081"
    command: jobmanager
    environment:
      - JOB_MANAGER_RPC_ADDRESS=jobmanager

  taskmanager:
    image: ${FLINK_DOCKER_IMAGE_NAME:-flink}
    expose:
      - "6121"
      - "6122"
    depends_on:
      - jobmanager
    command: taskmanager
    links:
      - "jobmanager:jobmanager"
    environment:
      - JOB_MANAGER_RPC_ADDRESS=jobmanager

启动命令

docker stack deploy -c flink.yml flink
docker service ls
docker service scale flink_jobmanager=1
docker service scale flink_taskmanager=2

服务查看

任务运行后,可以通过http://localhost:8081访问 web UI。

任务提交

1.可以通过 web UI 来把一个 job 提交 session 模式中。(jobmanager)
2.通过命令行来提交一个 session,则必须把 JAR 包拷贝到 JobManager container 上,然后在上面提交任务

 $ JOBMANAGER_CONTAINER=$(docker ps --filter name=jobmanager --format={{.ID}})
    $ docker cp path/to/jar "$JOBMANAGER_CONTAINER":/job.jar
    $ docker exec -t -i "$JOBMANAGER_CONTAINER" flink run /job.jar

备注

1.docker container

docker container exec -it containerId /bin/bash

2.container 内部执行vim显示command not found

1)apt-get update
2)apt-get install vim
发布了35 篇原创文章 · 获赞 7 · 访问量 9486
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章