今天总结一下安装的StreamSets的全过程,并且中间遇到的问题与解决办法。
一、下载StreamSets相关文件
首先看Cloudera Manager server是否可以访问Internet获取这个Parcel,如果不行则需要手动安装文件。可以看到我本地这里就不能通过远程提供自己下载:
手动安装StreamSets Parcel和校验文件,如果使用多个集群时,就需要对每个集群执行以下步骤。
1、从下面这个链接下载适用于Cloudera Manager Server操作系统的相关文件
https://archives.streamsets.com/index.html
这里需要下载四个文件,manifest.json、Cloudera Parcels下面的 RHEL 7 、 SHA与Custom Service Descriptor (CSD):
SHA中下载的是STREAMSETS_DATACOLLECTOR-3.12.0-el7.parcel.sha文件,对对应的parcel文件进行hash验证。如果忘记下载这个则后面会报错:Parcel STREAMSETS_DATACOLLECTOR-3.12.0-el7.parcel 的错误:未找到哈希文件。
Custom Service Descriptor (CSD)中下载的就是对应版本的jar包了,根据第一步是放到/opt/cloudera/csd中。看想下载哪个版本的StreamSets就用对应的jar包就行。一定要保证parcel与jar的版本一致。
2、将StreamSets Parcel和校验文件复制到Cloudera Manager本地存储库路径中。
默认情况下,路径为:/opt/cloudera/parcel-repo。
3、将官方提供的manifest.json中的文件复制到/opt/cloudera/parcel-repo路径的下
{
"parcels": [
{
"hash": "1e87516d31bacd9a56ba2bb2fd8658be3ff83eb0",
"depends": "CDH (>= 5.2), CDH (<< 7.0)",
"parcelName": "STREAMSETS_DATACOLLECTOR-3.12.0-trusty.parcel",
"components": [
{
"pkg_version": "3.12.0",
"version": "3.12.0",
"name": "sdc"
}
]
},
{
"hash": "1e87516d31bacd9a56ba2bb2fd8658be3ff83eb0",
"depends": "CDH (>= 5.2), CDH (<< 7.0)",
"parcelName": "STREAMSETS_DATACOLLECTOR-3.12.0-el6.parcel",
"components": [
{
"pkg_version": "3.12.0",
"version": "3.12.0",
"name": "sdc"
}
]
},
{
"hash": "1e87516d31bacd9a56ba2bb2fd8658be3ff83eb0",
"depends": "CDH (>= 5.2), CDH (<< 7.0)",
"parcelName": "STREAMSETS_DATACOLLECTOR-3.12.0-el7.parcel",
"components": [
{
"pkg_version": "3.12.0",
"version": "3.12.0",
"name": "sdc"
}
]
}
],
"lastUpdated": 1575511722373
}
4、可以将 Parcel和Checksum Files 的所有权更改为运行Cloudera Manager进程的用户。
例如,如果Cloudera Manager进程以cloudera-scm用户身份运行,请使用以下命令将所有权更改为cloudera-scm:
sudo chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/STREAMSETS_DATACOLLECTOR-3.12.0-el7.parcel
二、重启Cloudera Manager Server服务与踩得一些坑
1、使用service命令重新启动Cloudera Manager Server
service cloudera-scm-server restart
拓展:
如果是Ubuntu 16.04,CentOS 7,Red Hat Enterprise Linux 7或Oracle Linux 7的版本话:
systemctl restart cloudera-scm-server
2、在Cloudera Manager中,重新启动Cloudera Management Service
启动成功后,然后就可以在CDH主页的 主机->Parcel中看到这个配置的Parcel:
注意:
有可能会因为系统的内存不足导致 file /opt/cloudera/parcels/.flood/******.parcel...does not exist。这个如果在激活时候报错的话,Cloudera并没有在控制台开发Cancel或者回滚的入口,此时服务状态就是卡住页面无法操作。解决办法可以看这篇:
CDH激活分发parcel时因为意外错误卡住不能修改问题解决方案
回滚以后,然后我删了几个G的很早之前的日志文件就可以了。然后可以手动的将别的结点上的文件通过scp传过去。在cluster2-2的路径上执行:
[root@cluster2-2 STREAMSETS_DATACOLLECTOR-3.13.0-el7.parcel]# scp -r ./STREAMSETS_DATACOLLECTOR-3.13.0-el7.parcel root@cluster2-1:/opt/cloudera/parcels/.flood/STREAMSETS_DATACOLLECTOR-3.13.0-el7.parcel
然后在cluster2-1的指定路径上有这个parcel文件后再重启Cloudera Management Service就可以了:
三、给各节点添加StreamSets服务并且启动
1、在管理界面中添加StreamSets服务
选择StreamSets:
2、给要安装的服务选择主机
3、配置数据文件与资源文件存放的路径
就选择默认的/var/lib/sdc/data与/var/lib/sdc/resources下。
4、添加服务
5、进入StreamSets管理界面,点击WebUI
这里弹出一个无法访问的页面,但是给了我们访问的路径与端口号,修改一下就可以直接访问了: 192.168.129.***:18630