Flink的部署
Flink的部署
环境准备:windows7系统,本地连接。如果打开更改适配器设置后没有本地连接,可以通过驱动精灵等软件安装网卡驱动。为了使部署在虚拟机上的服务器可以与物理机进行连通,必须使物理机的网卡和虚拟机上服务器的网卡在同一个网段上,在此我们规定一个网段192.168.0.*为标准,我的物理机的IP地址是192.168.0.99。根据以下的附图对网络进行配置。
1.windows下安装VMware并且在VMware上新建三台虚拟机,分别在这三台虚拟机上安装Ubuntu16.04 Server版系统,虚拟机上的网络设置采用桥接模式。
2.使用命令vim /etc/network/interfaces对文件interfaces中的网卡信息进行修改。
如下附图为服务器上所要配置的网卡的信息,我的服务器的IP地址为192.168.0.103
按照同样的方法配置另外两台服务器,它们的IP地址分别为192.168.0.104,192.168.0.105
测试连通性:在一台服务器上使用命令ping 192.168.0.104去ping另外一台服务器,产生如下附图的效果即为拼接成功。三台服务器相互ping都可以拼接成功。
服务器上的环境:为三台Ubuntu服务器配置Java环境,jdk的版本要求为1.8或者更高,本实例的flink集群有三个节点,一主两从。Flink 有三种部署模式,分别是 Local、Standalone Cluster 和 Yarn Cluster。对于 Local 模式来说,JobManager 和 TaskManager 共用一个 JVM,Local模式的部署请点击http://www.jianshu.com/p/26c9ef86fb19。如果要验证一个简单的应用,Local 模式是最方便的。实际应用中大多使用 Standalone 或者 Yarn Cluster。
模式一:单节点的Local模式
1.在网站上下载需要的flink版本,我下载的如下附图所示。
2.将tar包解压后放置到/opt/data下,进入flink目录,使用命令bin/start-local.sh运行flink,根据你的IP地址localhost:8081,进入flink的前端界面如下附图所示即为启动flink成功。
模式二:多节点的Standalone模式
1.在http://archive.apache.org/dist/flink/flink-1.3.2/上下载flink的版本,我下载的如下图附图所示的版本的tar包。
2.使用命令tar -zxvf flink-1.3.2-bin-hadoop26-scala_2.11.tgz对flink的tar包进行解压,并将解压后的文件改名为flink且将其安放到/usr/local/java/目录下。(flink的安放目录根据每个人的不同情况可进行自定义)
在flink目录下,使用命令vim conf/flink-conf.yaml,增加master节点的IP地址,修改jobmanager.rpc.address:,其IP为master的IP地址。在fink目录下使用命令vim conf/slaves,增加worker节点的IP地址。
(根据如下附图所示进行修改,其他的两台服务器使用相同的方法进行配置,具体配置可在Apache的官网上进行查看,官网的网址如下所示https://ci.apache.org/projects/flink/flink-docs-release-1.0/setup/config.html#full-reference)
注释:
Jobmanager可用内存(jobmanager.heap.mb)
taskmanager可用内存(taskmanager.heap.mb)
每个机器可用cpu数量(taskmanager.numberOfTaskSlots)
集群中的总cpu数量(parallelism.default)
节点临时目录(taskmanager.tmp.dirs)
3.启动flink集群。
下面的脚本将会在本机启动一个jobmanager节点,然后通过SSH连接到slaves文件中的所有worker节点,在worker节点上面启动taskmanager。现在flink启动并且运行。在本地运行的jobmanager现在将会通过配置的RPC端口接收任务。
确保在master节点的终端下同时进入flink目录:使用命令bin/start-cluster.sh启动flink集群,使用命令bin/stop-cluster.sh停止flink集群。
推荐阅读
-
mailto的使用_html/css_WEB-ITnose
-
一个提交留言的模板提交后老是显示点击下载保存的页面,该怎么解决
-
jquery统计输入文字的个数并对其进行判断_jquery
-
IStream与TStream之间的相互转换_PHP
-
解决idea 拉取代码出现的 “ Сannot Run Git Cannot identify version of git executable: no response“的问题
-
[PHP]swoole_server几个进程的分工,swoole_server分工
-
html静态页面调用php文件的方法_php技巧
-
分享Python中list的各项操作技巧
-
Linux中的MySQL使用(CentOS默认安装)
-
详解Java多态对象的类型转换与动态绑定