0776-6.2.0-如何在CDH6.2.0上安装CDSW1.6

文档编写目的

本篇文章主要介绍如何在CDH6.2.0上通过parcel包的方式安装CDSW1.6。

  • 内容概述

1.部署CDSW parcel及安装CSD文件

2.添加CDSW节点到集群并部署Gateway角色

3.安装DNS服务并配置泛域名解析

4.安装CDSW服务

5.测试CDSW

  • 测试环境

1.Redhat7.2

2.采用root用户操作

3.CM/CDH6.2.0

4.CDSW版本1.6

  • 前置条件

1.CM和CDH已安装且正常运行

2.集群已部署Spark2 On Yarn模式

3.集群已配置好DNS服务并配置CDSW节点的泛域名解析

4.CDSW节点已经通过CM加入到集群中

安装CDSW

2.1 CDSW节点配置

在准备新添加的CDSW节点上按照之前安装CDH集群的要求,配置好需要的设置。

包括下面这些

修改hostname,并更新到所有节点的/etc/hosts文件

代码语言:javascript
复制
[root@cdsw ~]# hostnamectl set-hostname cdsw.hadoop.com

关闭防火墙,禁用SELinux

代码语言:javascript
复制
[root@cdsw yum.repos.d]# systemctl stop firewalld
[root@cdsw yum.repos.d]# systemctl disable firewalld
[root@cdsw yum.repos.d]# setenforce 0

关闭透明大页面,设置SWAP为1

代码语言:javascript
复制
[root@cdsw ~]# echo 1 > /proc/sys/vm/swappiness
[root@cdsw ~]# echo never > /sys/kernel/mm/transparent_hugepage/defrag 
[root@cdsw ~]# echo never > /sys/kernel/mm/transparent_hugepage/enabled

配置时钟同步

配置好OS的yum源后,卸载原有的chrony然后安装ntp服务

代码语言:javascript
复制
[root@cdsw yum.repos.d]# yum install -y ntp

安装好后,修改/etc/ntp.conf 让cdsw节点跟cdh01节点同步

然后重启ntpd服务,验证是否和主机已经同步,用下面的命令

代码语言:javascript
复制
[root@cdsw ~]# ntpq -p

前面出现*号 表明同步成功

2.2 部署Parcel包,安装CSD文件

把Parcel下载下来,地址如下,放到/var/www/html/cdsw1.6 这个目录下,部署成功

代码语言:javascript
复制
https://archive.cloudera.com/cdsw1/1.6.0/parcels/CDSW-1.6.0.p1.1294376-el7.parcel
https://archive.cloudera.com/cdsw1/1.6.0/parcels/CDSW-1.6.0.p1.1294376-el7.parcel.sha
https://archive.cloudera.com/cdsw1/1.6.0/parcels/manifest.json

下载CSD文件,使CM支持CDSW安装,文件下载地址

代码语言:javascript
复制
https://archive.cloudera.com/cdsw1/1.6.0/csd/CLOUDERA_DATA_SCIENCE_WORKBENCH-CDH6-1.6.0.jar

下载好后放在CM所在服务器的/opt/cloudera/csd目录下

重启cloudera-scm-server服务

代码语言:javascript
复制
[root@cdh01 csd]# systemctl restart cloudera-scm-server

2.3 添加CDSW节点到集群

1.登录CM,新建一个主机模板,选择模板角色

添加节点到集群

一直点下一步,到添加主机模板这里,选择刚才创建的模板

完成后,可以看到cdsw节点已经添加进集群并且角色已经添加成功。

2.4 配置CDSW的Parcel库

在CM主页点开Parcel页面,添加CDSW的Parcel地址

然后下载,分配,激活

2.5 安装DNS服务并配置泛域名解析

1.安装dnsmasq

代码语言:javascript
复制
[root@cdsw ~]# yum -y install dnsmasq

2.验证安装

代码语言:javascript
复制
[root@cdsw ~]# dnsmasq -v

3.配置DNS服务以及泛域名解析,在/etc/dnsmasq.conf文件末尾增加以下配置。

代码语言:javascript
复制
[root@cdsw ~]# vim /etc/dnsmasq.conf
strict-order
listen-address=192.168.0.209
addn-hosts=/etc/hosts
address=/cdsw.hadoop.com/192.168.0.209
address=/cdsw/192.168.0.209

4.启动dnsmasq服务,并加入开机自启动

代码语言:javascript
复制
[root@cdsw ~]# systemctl start dnsmasq
[root@cdsw ~]# systemctl enable dnsmasq

5.修改/etc/resolv.conf文件配置,在nameserver中增加创建的DNS服务器IP地址,这里是将cdsw本机配置为dns服务器,所以将cdsw这台机器的内网IP地址配置到该文件中。

代码语言:javascript
复制
[root@cdsw ~]# vim /etc/resolv.conf

6.泛域名解析测试

代码语言:javascript
复制
[root@cdsw ~]# nslookup 192.168.0.209
[root@cdsw ~]# nslookup cdsw.hadoop.com
[root@cdsw ~]# nslookup xxx.cdsw.hadoop.com

2.6 安装CDSW服务

在CM主页,集群按钮旁,点击添加服务

选择CDSW

继续,选择Master主机,由于只有一台服务器,就不添加work节点了。

安装完成

验证CDSW功能

在登陆CDSW之前,我们先配置好Windows机器里面的DNS服务

配置完之后,登陆CDSW。

点击Web UI,进入登陆界面,点击注册

注册完成后,自动登陆CDSW界面,首次注册的账号自动为管理员账号

点击New Project创建一个Python工程

点击Create Project,然后点击Open Workbench

点击Launch Session启动会话

执行示例代码,验证完成

总结

  • CDSW访问时需要用到泛域名,因此必须为CDSW Master节点配置泛域名解析,具体可参看Fayson前面讲的《0037-如何在Windows Server2008搭建DNS服务及配置泛域名解析》,《0047-利用dnsmasq构建小型集群的本地DNS服务器》,《0172-如何在RedHat6上使用Bind搭建DNS服务》,《0174-如何在RedHat7上使用Bind搭建DNS服务》和《0077-如何在Windows Server2012搭建DNS服务及配置泛域名解析》
  • CDSW节点是运行在CM管理的Gateway节点上的,所有CDSW的节点需要满足CDH的前置条件检查,具体可以参考《CDH安装前置准备》
  • CDSW所有节点需要加入CDH集群,并部署HDFS 、Yarn、Spark2的Gateway
  • CDSW Master节点需要有多块DISK,磁盘空间大于100G,不需要对磁盘进行格式化分区操作。
  • 注意要下载对应的CDH版本CSD文件。
  • 安装完成后,CDSW准备好需要较长的时间,期间CDSW的角色都正常启动会,还会报错pod未准备好,这里其实还没启动完,继续等待即可。