欢迎访问我的GitHub

https://github.com/zq2599/blog_demos

内容:所有原创文章分类汇总及配套源码,涉及Java、Docker、Kubernetes、DevOPS等;

本文是《Flink on Yarn三部曲》系列的第二篇,上一篇《Flink on Yarn三部曲之一:准备工作》已将所需的机器和文件准备完毕,可以部署CDH和Flink了;

全文链接

  1. 《Flink on Yarn三部曲之一:准备工作》


  2. Flink on Yarn三部曲之二:部署和设置

  3. 《Flink on Yarn三部曲之三:提交Flink任务》

执行ansible脚本部署CDH和Flink(ansible电脑)

  1. 进入ansible电脑的~/playbooks目录,经过上一篇的准备工作,该目录下应该是下图这些内容:

  2. 检查ansible远程操作CDH服务器是否正常,执行命令ansible deskmini -a "free -m",正常情况下显示CDH服务器的内存信息,如下图:

  3. 执行命令开始部署:ansible-playbook cm6-cdh5-flink1.7-single-install.yml
  4. 整个部署过程涉及在线安装、传文件等耗时的操作,因此请耐心等待(半小时左右),如果部署期间出错退出(例如网络问题),只需重复执行上述命令即可,ansible保证了操作的幂等性;
  5. 部署成功如下图所示:

重启CDH服务器

由于修改了selinux和swap的设置,需要重启操作系统才能生效,因此请重启CDH服务器;

执行ansible脚本启动CDH服务(ansible电脑)

  1. 等待CDH服务器重启成功;
  2. 登录ansible电脑,进入~/playbooks目录;
  3. 执行初始化数据库和启动CDH的脚本:ansible-playbook cdh-single-start.yml
  4. 启动完成输出如下信息:

  5. ssh登录CDH服务器,执行此命令观察CDH服务的启动情况:tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log,看到下图红框中的内容时,表示启动完成,可以用浏览器登录了:

设置(浏览器操作)

现在CDH服务已经启动了,可以通过浏览器来操作:

  1. 浏览器访问:http://192.168.50.134:7180 ,如下图,账号密码都是admin:

  2. 一路next,在选择版本页面选择60天体验版:

  3. 选择主机页面可见CDH服务器(deskmini):

  4. 在选择CDH版本的页面,请选择下图红框中的5.16.2-1:

  5. 进入安装Parcel的页面,由于提前上传了离线parcle包,因此下载进度瞬间变成百分之百,此时请等待分配、解压、激活的完成:

  6. 接下来有一些推荐操作,这里选择如下图红框,即可跳过:

  7. 接下来是选择服务的页面,我选择了自定义服务,然后选择了HDFS、YARN、Zookeeper这三项,可以满足运行Flink的需要:

  8. 在选择主机的页面,都选择CDH服务器:

  9. 接下来是数据库设置的页面,您填写的内容必须与下图保持一致,即主机名为localhost,Activity Monitor的数据库、用户、密码都是amon,Reports Manager的数据库、用户、密码都是rman,这些内容在ansible脚本中已经固定了,此处的填写必须保持一致:

  10. 在设置参数的页面,请按照您的硬盘实际情况设置,我这里/home目录下空间充足,因此存储位置都改为/home目录下:

  11. 等待服务启动:

  12. 各服务启动完成:

YARN设置

默认的YARN参数是非常保守的,需要做一些设置才能顺利执行Flink任务:

  1. 点下图红框位置,进入YARN管理页:

  2. 如下图所示,检查参数yarn.nodemanager.resource.cpu-vcores的值,该值必须大于1,否则提交Flink任务后YARN不分配资源执行任务,(如果您的CDH服务器是虚拟机,当CPU只有单核时,则此参数就会被设置为1,解决办法是先提升虚拟机CPU核数,再来修改此参数):

  3. yarn.scheduler.minimum-allocation-mb:单个容器可申请的最小内存,我这里设置为1G
  4. yarn.scheduler.maximum-allocation-mb:单个容器可申请的最大内存,我这里设置为8G
  5. yarn.nodemanager.resource.memory-mb:节点最大可用内存,我这里设置为8G
  6. 上述三个参数的值,是基于我的CDH服务器有32G内存的背景,请您按照自己硬件资源自行调整;
  7. 设置完毕后重启YARN服务,操作如下图所示:



    至此,部署和设置都已完成,Flink on Yarn的环境已经可用了,在下一篇文章中,我们就在此环境提交Flink任务,体验Flink on Yarn;

欢迎关注公众号:程序员欣宸

微信搜索「程序员欣宸」,我是欣宸,期待与您一同畅游Java世界...

https://github.com/zq2599/blog_demos

Flink on Yarn三部曲之二:部署和设置的更多相关文章

  1. Flink on Yarn三部曲之一:准备工作

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  2. Flink on Yarn三部曲之三:提交Flink任务

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  3. Flink的DataSource三部曲之二:内置connector

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  4. Flink的DataSource三部曲之三:自定义

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  5. Flink的DataSource三部曲之一:直接API

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  6. CDH5部署三部曲之二:部署和设置

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  7. CDH+Kylin三部曲之二:部署和设置

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  8. Flink on Yarn的两种模式及HA

    转自:https://blog.csdn.net/a_drjiaoda/article/details/88203323 Flink on Yarn模式部署始末:Flink的Standalone和on ...

  9. Flink源码阅读(一)——Flink on Yarn的Per-job模式源码简析

    一.前言 个人感觉学习Flink其实最不应该错过的博文是Flink社区的博文系列,里面的文章是不会让人失望的.强烈安利:https://ververica.cn/developers-resource ...

随机推荐

  1. CTF-Bugku-杂项-21-28

    2020.09.14 下午奥力给 做题 第二十一题 细心的大象 https://ctf.bugku.com/challenges#细心的大象 这一看就是一只有故事的大象,图片详情中有东西,base64 ...

  2. CTF-WeChall-第二天

    2020.09.10 奥力给,举步维艰的时候就是要一边做一遍记,虽然慢但是不要嫌弃,要不然就是举步不前

  3. Java审计之文件操作漏洞

    Java审计之文件操作漏洞篇 0x00 前言 本篇内容打算把Java审计中会遇到的一些文件操作的漏洞,都给叙述一遍.比如一些任意文件上传,文件下载,文件读取,文件删除,这些操作文件的漏洞. 0x01 ...

  4. vue v-for渲染数据出现DOMException: Failed to execute 'removeChild' on 'Node': The node .....

    在项目中,使用了vue的v-for渲染数组数据,在一次改变数组的时候出现异常报错,而实际的数组是已经变化过的了,页面卡死 网上找了一下原因,说是vue的DOM渲染的时候,删除之后DOM里面的还没有反应 ...

  5. django_apscheduler 0.4.0删除了name字段

    使用django_apscheduler时默认使用了最新版本,为0.4.2版本,但是在这个版本中,使用migrate 生成定时任务模型时没有了name字段,导致之前写的定时任务不能执行. 翻了下 dj ...

  6. Word rings

    Word rings 题目描述 这道题就是想求出所有的环,然后在所有环中比较出环串的平均长度最长的那一个,然后就输出平均长度最长的,如果在一个点当中的样例中没有环的话我们就应该输出"No S ...

  7. selenium学习之元素等待(四)

    --为什么要设置元素等待: 目前大多数web应用程序都是使用AJAX和JavaScript开发,每次加载一个网页,包括静态网页和动态网页,也就是加载各种HTML标签和JS文件.在网页中进行元素定位时, ...

  8. HashMap 、ConcurrentHashMap知识点全解析

    散列表 在了解hashmap之前,要先知道什么是散列表,因为hashmap就是在散列表结构基础上改造而成的.散列表,也叫哈希表,是根据关键码值(key value)而直接进行访问的数据结构.也就是说, ...

  9. JVM初步入门(很初级,建议只做大致了解用)

    jvm初步入门 本博客中的所有内容都是来自b站狂神说视频教程,如有侵权联系我删除. 下面是视频链接:b站狂神说 关于jvm的几个小问题 1. jvm的位置: jvm是一个运行在操作系统上的用c语言编写 ...

  10. Codeforces Global Round 11 A~D题解

    A.Avoiding Zero 题目链接:https://codeforces.ml/contest/1427 题目大意:给定一个数组a1,a2...,an,要求找出一个a重排后的数组b1,b2,.. ...