欢迎访问我的GitHub

https://github.com/zq2599/blog_demos

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

本篇概览

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

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

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

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

  3. 执行命令开始部署:ansible-playbook cm6-cdh5-kylin264-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. 接下来是选择服务的页面,我选择了自定义服务,然后选择了HBase、HDFS、Hive、Hue、Oozie、Spark、YARN、Zookeeper这八项,可以满足运行Kylin的需要:

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

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

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

  11. 等待服务启动:

  12. 各服务启动完成:

HDFS设置

  1. 如下图红框所示,HDFS服务存在问题:

  2. 点击上图中红色感叹号可见问题详情,如下图,是常见的副本问题:

  3. 操作如下图,在HDFS的参数设置页面,将dfs.replication的值设置为1(只有一个数据节点):

  4. 经过上述设置,副本数已经调整为1,但是已有文件的副本数还没有同步,需要重新做设置,SSH登录到CDH服务器上;
  5. 执行命令su - hdfs切换到hdfs账号,再执行以下命令即可完成副本数设置:
hadoop fs -setrep -R 1 /
  1. 回到网页,重启HDFS服务,如下图:

  2. 重启后HDFS服务正常:

YARN设置

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

  1. 进入YARN管理页;
  2. 如下图所示,检查参数yarn.nodemanager.resource.cpu-vcores的值,该值必须大于1,否则提交Spark任务后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服务,操作如下图所示:

Spark设置(CDH服务器)

需要在Spark环境准备一个目录以及相关的jar,否则Kylin启动会报错(提示spark not found, set SPARK_HOME, or run bin/download-spark.sh),以root身份SSH登录CDH服务器,执行以下命令:

mkdir $SPARK_HOME/jars \
&& cp $SPARK_HOME/assembly/lib/*.jar $SPARK_HOME/jars/ \
&& chmod -R 777 $SPARK_HOME/jars

启动Kylin(CDH服务器)

  1. SSH登录CDH服务器,执行su - hdfs切换到hdfs账号;
  2. 按照官方推荐,先执行检查环境的命令:$KYLIN_HOME/bin/check-env.sh
  3. 检查通过的话控制台输出如下:

  4. 启动Kylin:$KYLIN_HOME/bin/kylin.sh start
  5. 控制台输出以下内容说明启动Kylin成功:

登录Kylin

  1. 浏览器访问:http://192.168.50.134:7070/kylin,如下图,账号ADMIN,密码KYLIN(账号和密码都是大写):

  2. 登录成功,可以使用了:



    至此,CDH和Kylin的部署、设置、启动都已完成,Kylin已经可用了,在下一篇文章中,我们就在此环境运行Kylin的官方demo,体验Kylin;

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

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

https://github.com/zq2599/blog_demos

CDH+Kylin三部曲之二:部署和设置的更多相关文章

  1. CDH+Kylin三部曲之三:Kylin官方demo

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

  2. CDH+Kylin三部曲之一:准备工作

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

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

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

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

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

  5. kubernetes下的Nginx加Tomcat三部曲之二:细说开发

    本文是<kubernetes下的Nginx加Tomcat三部曲>的第二章,在<kubernetes下的Nginx加Tomcat三部曲之一:极速体验>一文我们快速部署了Nginx ...

  6. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(二)-Hexo参数设置

    前言 前文手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置介绍了github注册.git相关设置以及hexo基本操作. 本文主要介绍一下hexo的常用参数设置. ...

  7. [原]CentOS7安装Rancher2.1并部署kubernetes (二)---部署kubernetes

    ##################    Rancher v2.1.7  +    Kubernetes 1.13.4  ################ ##################### ...

  8. Docker下实战zabbix三部曲之二:监控其他机器

    在上一章<Docker下实战zabbix三部曲之一:极速体验>中,我们快速安装了zabbix server,并登录管理页面查看了zabbix server所在机器的监控信息,但是在实际场景 ...

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

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

随机推荐

  1. Node.js 从零开发 web server博客项目[项目介绍]

    web server博客项目 Node.js 从零开发 web server博客项目[项目介绍] Node.js 从零开发 web server博客项目[接口] Node.js 从零开发 web se ...

  2. 使用Mysql分区表对数据库进行优化

    早期工作中没有做好足够的设计,目前记录表单表数据2000w且无有效索引,表现是分页缓慢,模糊查询拉闸. 当前业务中,写操作会多于读操作,时不时会遇到慢SQL占用过多的数据连接,导致写操作无法正常进行. ...

  3. 【机器学习】梯度下降 II

    Gradient Descent 梯度下降 II 关于 Gradient Descent 的直观解释,参考上一篇博客[机器学习]梯度下降 I 本模块介绍几种梯度下降模型.定义符号标记如下: \(\th ...

  4. Keepalived服务详解

    1. VRRP协议 1.1 VRRP协议概述 VRRP协议的出现是为了解决静态路由的单点故障,它是通过一种竞选机制来将路由任务交给某个vrrp路由器的 在VRRP物理结构中,有多个物理的VRRP路由器 ...

  5. 加权图的最小生成树、最短路径算法 - java实现

    加权图相关算法 前言 本文主要介绍加权图算法中两个重要应用:最小生成树和最短路径. 求最小生成树时针对的是加权无向图,加权有向图的最小生成树算法成为"最小属树形图"问题,较为复杂, ...

  6. YOLOv4: Darknet 如何于 Ubuntu 编译,及使用 Python 接口

    本文将介绍 YOLOv4 官方 Darknet 实现,如何于 Ubuntu 18.04 编译,及使用 Python 接口. 主要内容有: 准备基础环境: Nvidia Driver, CUDA, cu ...

  7. RabbitMq如何确保消息不丢失

    上篇写了掌握Rabbitmq几个重要概念,从一条消息说起,这篇来总结关于消息丢失让人头痛的事情.网络故障.服务器重启.硬盘损坏等都会导致消息的丢失.消息从生产到消费主要结果以下几个阶段如下图. ①生产 ...

  8. Python-一切皆对象

    Python 动态.灵活根本是什么? Python中一切皆对象,面向对象更加彻底,函数.类也是对象,属于一等公民 一等公民特性 1. 可以赋值给一个变量 def name(name="北门吹 ...

  9. 决策树减支问题(优化)dfs减支问题

    #include <iostream>#include <cstdio>using namespace std;int mem[200];//开记忆数组int fib(int ...

  10. Asp.Net Core 企业微信静默授权

    企业微信接口文档 1.构造授权网页链接 2.回调获取到 Code 通过code+access_token去请求用户信息 3.获取access_token 调试准备工作 -->内网穿透+域名 推荐 ...