文档编写目的
本篇文章主要介绍如何在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未准备好,这里其实还没启动完,继续等待即可。