zoukankan      html  css  js  c++  java
  • Flink快速入门

    安装:下载并启动

      Flink可以在Linux、Mac OS X以及Windows上运行。为了能够运行Flink,唯一的要求是必须安装Java 7.x或者更高版本。对于Windows用户来说,请参考 Flink on Windows 文档,里面介绍了如何在Window本地运行Flink。

    下载

      从下载页面(http://flink.apache.org/downloads.html)下载所需的二进制包。你可以选择任何与 Hadoop/Scala 结合的版本。比如 Flink for Hadoop 2。

    启动一个local模式的Flink集群

    启动一个local模式的Flink集群非常地简单,我们可以按照以下的步骤来操作:

      1、进入到下载的目录;
      2、解压下载的文件;
      3、启动Flink。

    操作命令如下:

    $ cd ~/Downloads        # Go to download directory
    $ tar xzf flink-*.tgz   # Unpack the downloaded archive
    $ cd flink-1.0.0
    $ bin/start-local.sh    # Start Flink

    打开https://www.iteblog.com:8081检查Jobmanager和其他组件是否正常运行。Web前端应该显示了只有一个可用的 TaskManager。

    运行例子

    现在,我们来运行SocketTextStreamWordCount例子,它从socket中获取文本,然后计算每个单词出现的次数。操作步骤如下:

    1、首先,我们使用netcat来启动本地服务器:

    $ nc -l -p 9000

    2、然后我们就可以提交Flink程序了:

    $ bin/flink run examples/streaming/SocketTextStreamWordCount.jar
      --hostname localhost
      --port 9000
     
    Printing result to stdout. Use --output to specify output path.
    04/05/2016 16:03:36 Job execution switched to status RUNNING.
    04/05/2016 16:03:36 Source: Socket Stream -> Flat Map(1/1) switched to SCHEDULED
    04/05/2016 16:03:36 Source: Socket Stream -> Flat Map(1/1) switched to DEPLOYING
    04/05/2016 16:03:36 Keyed Aggregation -> Sink: Unnamed(1/1) switched to SCHEDULED
    04/05/2016 16:03:36 Keyed Aggregation -> Sink: Unnamed(1/1) switched to DEPLOYING
    04/05/2016 16:03:36 Keyed Aggregation -> Sink: Unnamed(1/1) switched to RUNNING
    04/05/2016 16:03:36 Source: Socket Stream -> Flat Map(1/1) switched to RUNNING
    04/05/2016 17:00:43 Source: Socket Stream -> Flat Map(1/1) switched to FINISHED
    04/05/2016 17:00:43 Keyed Aggregation -> Sink: Unnamed(1/1) switched to FINISHED
    04/05/2016 17:00:43 Job execution switched to status FINISHED.

    这个程序和socket进行了连接,并等待输入。我们可以在WEB UI中检查Job是否正常运行:

     

    3、计数会打印到标准输出stdout。监控JobManager的输出文件(.out文件),并在nc中敲入一些单词:

    $ nc -l -p 9000
    lorem ipsum
    ipsum ipsum ipsum
    bye

    .out 文件会立即打印出单词的计数:

    $ tail -f log/flink-*-jobmanager-*.out
    (lorem,1)
    (ipsum,1)
    (ipsum,2)
    (ipsum,3)
    (ipsum,4)
    (bye,1)

    要停止 Flink,只需要运行:

    $ bin/stop-local.sh

      

    集群模式安装

      在集群上运行 Flink 是和在本地运行一样简单的。需要先配置好 SSH 免密码登录 和保证所有节点的目录结构是一致的,这是保证我们的脚本能正确控制任务启停的关键。然后我们就可以按照下面步骤来操作:

      1、在每台节点上,复制解压出来的 flink 目录到同样的路径下。
      2、选择一个 master 节点 (JobManager) 然后在 conf/flink-conf.yaml 中设置 jobmanager.rpc.address 配置项为该节点的 IP 或者主机名。确保所有节点有有一样的 jobmanager.rpc.address 配置。
      3、将所有的 worker 节点 (TaskManager)的 IP 或者主机名(一行一个)填入 conf/slaves 文件中。

    现在,你可以在 master 节点上启动集群:bin/start-cluster.sh

    下面的例子阐述了三个节点的集群部署(IP地址从 10.0.0.1 到 10.0.0.3,主机名分别为 master, worker1, worker2)。并且展示了配置文件,以及所有机器上一致的可访问的安装路径。

     

    访问https://ci.apache.org/projects/flink/flink-docs-release-1.0/setup/config.html查看更多可用的配置项。为了使 Flink 更高效的运行,还需要设置一些配置项。

    以下都是非常重要的配置项:

      1、TaskManager 总共能使用的内存大小(taskmanager.heap.mb)
      2、每一台机器上能使用的 CPU 个数(taskmanager.numberOfTaskSlots)
      3、集群中的总 CPU 个数(parallelism.default)
      4、临时目录(taskmanager.tmp.dirs)

    Flink on YARN

    你可以很方便地将 Flink 部署在现有的YARN集群上,操作如下:

      1、下载 Flink Hadoop2 包: Flink with Hadoop 2
      2、确保你的 HADOOP_HOME (或 YARN_CONF_DIR 或 HADOOP_CONF_DIR) __环境变量__设置成你的 YARN 和 HDFS 配置。
      3、运行 YARN 客户端:./bin/yarn-session.sh 。你可以带参数运行客户端 -n 10 -tm 8192 表示分配 10 个 TaskManager,每个拥有 8 GB 的内存。

  • 相关阅读:
    NetSuite Batch Process Status
    NetSuite generated bank files and the Bank Reconciliation process
    Global Search file content in Gitlab repositories, search across repositories, search across all files
    FedEx Package Rate Integration with NetSuite direct integrate by WebServices
    git Merge branches
    git tag and NetSuite deployment tracking
    API 读写cookie的方法
    C# 生成缩略图
    解决jquery操作checkbox全选全不选无法勾选问题
    JS读取写入删除Cookie方法
  • 原文地址:https://www.cnblogs.com/sh425/p/7928175.html
Copyright © 2011-2022 走看看