Flink on Yarn三部曲之二(部署和设置)

满堂花醉三千客,一剑霜寒十四州。这篇文章主要讲述Flink on Yarn三部曲之二:部署和设置相关的知识,希望能为你提供帮助。
欢迎访问我的GitHub
本文是《Flink on Yarn三部曲》系列的第二篇,上一篇《Flink on Yarn三部曲之一:准备工作》已将所需的机器和文件准备完毕,可以部署CDH和Flink了;
执行ansible脚本部署CDH和Flink(ansible电脑)

  1. 进入ansible电脑的~/playbooks目录,经过上一篇的准备工作,该目录下应该是下图这些内容:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  2. 检查ansible远程操作CDH服务器是否正常,执行命令==ansible deskmini -a " free -m" ==,正常情况下显示CDH服务器的内存信息,如下图:
    Flink on Yarn三部曲之二(部署和设置)

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

    文章图片
    重启CDH服务器
    【Flink on Yarn三部曲之二(部署和设置)】由于修改了selinux和swap的设置,需要重启操作系统才能生效,因此请重启CDH服务器;
    执行ansible脚本启动CDH服务(ansible电脑)
  6. 等待CDH服务器重启成功;
  7. 登录ansible电脑,进入~/playbooks目录;
  8. 执行初始化数据库和启动CDH的脚本:==ansible-playbook cdh-single-start.yml==
  9. 启动完成输出如下信息:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  10. ssh登录CDH服务器,执行此命令观察CDH服务的启动情况:==tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log==,看到下图红框中的内容时,表示启动完成,可以用浏览器登录了:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
    设置(浏览器操作)
    现在CDH服务已经启动了,可以通过浏览器来操作:
  11. 浏览器访问:http://192.168.50.134:7180 ,如下图,账号密码都是==admin==:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  12. 一路next,在选择版本页面选择60天体验版:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  13. 选择主机页面可见CDH服务器(deskmini):
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  14. 在选择CDH版本的页面,请选择下图红框中的==5.16.2-1==:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  15. 进入安装Parcel的页面,由于提前上传了离线parcle包,因此下载进度瞬间变成百分之百,此时请等待分配、解压、激活的完成:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  16. 接下来有一些推荐操作,这里选择如下图红框,即可跳过:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  17. 接下来是选择服务的页面,我选择了自定义服务,然后选择了==HDFS、YARN、Zookeeper==这三项,可以满足运行Flink的需要:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  18. 在选择主机的页面,都选择CDH服务器:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  19. 接下来是数据库设置的页面,==您填写的内容必须与下图保持一致==,即主机名为==localhost==,Activity Monitor的数据库、用户、密码都是==amon==,Reports Manager的数据库、用户、密码都是==rman==,这些内容在ansible脚本中已经固定了,此处的填写必须保持一致:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  20. 在设置参数的页面,请按照您的硬盘实际情况设置,我这里/home目录下空间充足,因此存储位置都改为/home目录下:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  21. 等待服务启动:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
  22. 各服务启动完成:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片
    YARN设置
    默认的YARN参数是非常保守的,需要做一些设置才能顺利执行Flink任务:
  23. 点下图红框位置,进入YARN管理页:
    Flink on Yarn三部曲之二(部署和设置)

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

    文章图片
  25. ==yarn.scheduler.minimum-allocation-mb==:单个容器可申请的最小内存,我这里设置为==1G==
  26. ==yarn.scheduler.maximum-allocation-mb==:单个容器可申请的最大内存,我这里设置为==8G==
  27. ==yarn.nodemanager.resource.memory-mb==:节点最大可用内存,我这里设置为==8G==
  28. 上述三个参数的值,是基于我的CDH服务器有32G内存的背景,请您按照自己硬件资源自行调整;
  29. 设置完毕后重启YARN服务,操作如下图所示:
    Flink on Yarn三部曲之二(部署和设置)

    文章图片

    至此,部署和设置都已完成,Flink on Yarn的环境已经可用了,在下一篇文章中,我们就在此环境提交Flink任务,体验Flink on Yarn; 欢迎关注51CTO博客:程序员欣宸

    推荐阅读