flink 集群搭建

找来四台服务器 1 2 3 4
安排1 作boss 做为job manager
安排剩余作follows 做为task manager
附上:diagram
 
 


cluster 须要less ssh(免密)
在1号上执行ssh-keygen 一路回车键后会在/root/.ssh下面生成  id_rsa(私钥)           id_rsa.pub(公钥)
而后仍是在这台机器上执行
①  cat id_rsa.pub >> authorized_keys
②  chmod 600 authorized_keys

最后将authorized_keys scp到其它机器
 scp authorized_keys root@task-host:/root/.ssh/
这样1号进出其它机器就不须要密码了

下载flink(本人在我的电脑上启动了Nginx 并将flink binaries包放到了html文件夹下以供传送)
wget http://ip:80/flink-1.1.5-bin-hadoop27-scala_2.11.tgz
执行上面的命令 即可get到包了

首先在1号上将包下载后解压 以后要tune两个conf目录下的配置文件
①:flink-conf.yaml
jobmanager.rpc.address:jobmanager-ip
export JAVA_HOME=/usr/java/jdk1.8.0_92 (这里看到别处blog说写法是另外一种 env.java.home: /usr/java/latest )
而在pocketbook中是这样

②:slaves
在slaves中加入task manager形如

 

修改以后将整个文件夹拷贝到其它slaves服务器上
scp -r flink-1.1.5 root@t2:~/
scp -r flink-1.1.5 root@t3:~/
scp -r flink-1.1.5 root@t4:~/

在job manager服务器执行
 ./bin/start-cluster.sh 打印形如
[root@t1 flink-1.1.5]# ./bin/start-cluster.sh
Starting cluster.
Starting jobmanager daemon on host t1.
Starting taskmanager daemon on host t2.
Starting taskmanager daemon on host t3.
Starting taskmanager daemon on host t4.


访问UI





附录:

# Master 的主机名或者 ip jobmanager.rpc.address: masterhtml

# JobManager 监听端口java

jobmanager.rpc.port: 6123服务器

# JobManager 的内存参数less

jobmanager.heap.mb: 1024ssh

# 每台 taskmanager 可用的总内存oop

taskmanager.heap.mb: 1024spa

# 每台 taskmanager 可用的 solt 数目,通常设置成 CPU 的core 数(核scala

心数)htm

taskmanager.numberOfTaskSlots: 1blog

# NumTaskManagersslave 的个数) * NumSlotsPerTaskManager parallelism.default: 1

# 酌情修改临时目录。/tmp 中的数据重启就没了。(可不用改)

taskmanager.tmp.dirs: /tmp