文档编写目的

Cloudera在2019年9月18日正式对外宣布发布Cloudera Stream Processing(CSP)2.0,参考《Cloudera Streams Management正式GA》。Cloudera Stream Processing (CSP)提供了高级消息传递,流处理和流分析功能,这些功能由Apache Kafka作为核心流处理引擎提供支持。它同时为Kafka添加了两个流管理功能,Kafka监控和Kafka数据复制。Streams Messaging Manager(SMM)为Kafka集群提供了一个监控仪表板。Streams Replication Manager(SRM)为企业提供了实现跨集群Kafka topic复制的能力。

CSP现在可以提供企业级的平台服务,通过与Cloudera Manager的集成实现集群管理和监控,与Apache Sentry集成实现基于角色的授权,同时集成一个新的Schema Registry服务以实现数据治理和schema管理能力。

CSP包含以下组件和服务:

1.由Streams Messaging Manager(SMM)提供Kafka的监控,可以通过Parcel在CM中安装。

2.由Streams Replication Manager(SRM)提供Kafka的数据复制,可以通过Parcel在CM中安装。

3.由Schema Registry提供Kafka和NiFi的schema的统一管理,可以通过Parcel在CM中安装。

4.支持CDH6.3中的Apache Kafka 2.2.0或者CDK4.1

5.支持Kafka Streams

6.使用Cloudera Manger实现集群管理和监控。

7.使用Apache Sentry实现Kafka的访问控制。




如何离线安装postgresql 如何离线安装gcc_Apache


CSP2.0以模块化形式设计,为用户提供了灵活性,使其可以选择在CM托管集群上安装哪些服务。CSP2.0提供了两组功能:流处理和流管理。每一组都包含相应的parcel:

  • CSP Stream Processing Parcels
  • Kafka from CDH 6.3.0 or the CDK 4.1 Parcel
  • Schema Registry Parcel
  • CSP Stream Management Parcels
  • SMM Parcel
  • SRM Parcel

本文Fayson主要介绍如何在CDH6.3中安装SMM,其余部分会在后续的文章中进行介绍,在安装前需要了解SMM的安装前置:

1.Cloudera Manager必须升级到6.3或更高版本。

2.CDH5.13或更高版本,CDH6.3或更高版本。

3.集群必须已经安装Kafka服务CDK4.1或更高版本。

  • 本次Fayson的测试环境为

1.CM和CDH版本为6.3

2.Redhat7.4

3.JDK1.8.0_181

4.集群未启用Kerberos

5.root用户安装

前置准备

2.1 下载SMM的试用安装包

1.访问试用下载链接,注意你需要注册cloudera.com的账号。

https://www.cloudera.com/downloads/cdf/csm-trial.html

2.下载SMM的csd文件


如何离线安装postgresql 如何离线安装gcc_gcc离线安装_02


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_03


注意:该试用会在60天后过期。

3.点击Submit下载csd文件,并放置到Cloudera Manager Server的/opt/cloudera/csd目录。然后重启Cloudera Manager Server服务。


如何离线安装postgresql 如何离线安装gcc_Apache_04


[root@ip-172-31-13-38 ~]# cd /opt/cloudera/csd[root@ip-172-31-13-38 csd]# lltotal 28-rw-r--r-- 1 root root 24630 Sep 4 20:02 STREAMS_MESSAGING_MANAGER-2.1.0.jar[root@ip-172-31-13-38 csd]# systemctl restart cloudera-scm-server

4.CM重启完成以后,添加服务页面可以看到有SMM服务。


如何离线安装postgresql 如何离线安装gcc_gcc 离线安装_05


5.下载SMM的Parcel,并放置/var/www/html目录


如何离线安装postgresql 如何离线安装gcc_kafka安装完整步骤_06


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_07


[root@ip-172-31-13-38 ~]# cd /var/www/html/smm/[root@ip-172-31-13-38 smm]# lltotal 126360-rw-r--r-- 1 root root 6625 Sep 4 19:56 manifest.json-rw-r--r-- 1 root root 129378640 Sep 4 19:57 STREAMS_MESSAGING_MANAGER-2.1.0.2.0.0.0-135-el7.parcel-rw-r--r-- 1 root root 41 Sep 4 20:04 STREAMS_MESSAGING_MANAGER-2.1.0.2.0.0.0-135-el7.parcel.sha

6.通过Hosts > Parcels进入Cloudera Manager的Parcel页面,输入SMM Parcel的http地址,下载->分配->激活。


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_08


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_09


2.2 在MySQL中创建数据库与用户

1.登录到MySQL并创建SMM的数据库与用户。

2.3 在SMM节点上安装NPM

在添加和配置SMM服务之前,必须先安装节点软件包管理器(node package manager,NPM),然后安装forever模块。

1.安装gcc-c++编译器

2.安装nodejs和npm


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_10


如何离线安装postgresql 如何离线安装gcc_gcc离线安装_11


注意该步骤需要主机能上网才能够执行,如果主机不能上网需要离线安装nodejs和npm,可自行百度。

3.检查nodejs和npm的版本

[root@ip-172-31-13-38 yum.repos.d]# node -vv10.17.0[root@ip-172-31-13-38 yum.repos.d]# npm -v6.11.3

注意nodejs版本需大于10,这里是10.17.0。

4.使用npm安装forever。

[root@ip-172-31-13-38 yum.repos.d]# npm install forever -g


如何离线安装postgresql 如何离线安装gcc_gcc离线安装_12


2.4 获取集群Kafka的服务名

1.从CM主页进入Kafka服务。


如何离线安装postgresql 如何离线安装gcc_gcc 离线安装_13


2.随便选择右边“图表”,选择在“图表生成器中打开”


如何离线安装postgresql 如何离线安装gcc_gcc离线安装_14


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_15


一般默认服务名都为kafka,记下这个名字在后面安装过程中会用到。

安装SMM

1.进入CM主页点击“添加服务”。


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_16


2.选择添加SMM服务,点击继续。


如何离线安装postgresql 如何离线安装gcc_kafka安装完整步骤_17


3.选择已经安装了npm和nodejs的节点,点击继续


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_18


4.配置以下必填配置,点击继续。


如何离线安装postgresql 如何离线安装gcc_gcc 离线安装_19


如何离线安装postgresql 如何离线安装gcc_kafka安装完整步骤_20


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_21


5.等待SMM服务启动


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_22


如何离线安装postgresql 如何离线安装gcc_gcc 离线安装_23


6.点击继续,回到CM主页。


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_24


7.访问Streams Messaging Manager Web UI


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_25


如何离线安装postgresql 如何离线安装gcc_gcc离线安装_26


8.访问Streams Messaging Manager Rest Swagger UI


如何离线安装postgresql 如何离线安装gcc_Apache_27


如何离线安装postgresql 如何离线安装gcc_如何离线安装postgresql_28


至此SMM安装完毕。

总结

1.CSP2.0包含Kafka,Kafka Streams,Schema Registry ,Streams Messaging Manager(SMM)和Streams Replication Manager(SRM),本文档主要是介绍如何安装SMM,安装SMM需要集群已经安装了Kafka服务。

2.SMM的Parcel包下载需要到cloudera.com的试用页面进行下载,默认试用60天。

3.下载好SMM的csd文件,除了重启Cloudera Manager Server服务外,还需要重启Cloudera Management Service,否则安装SMM服务成功后,通过CM进入SMM服务后,右边的图表显示将会报错。

4.SMM需要在MySQL中创建相应的数据库与用户。

5.SMM服务所在节点需要安装nodejs和npm,还需要安装forever模块,主要nodejs版本需大于10。本文使用的是直接访问外网的方式,如果想离线安装nodejs和npm,需要另外准备相应的依赖包。

6.安装SMM服务前还需要通过CM获取Kafka服务的服务名,如何获取参考本文的前置准备章节。注意服务名一般是小写的kafka,这里会区分大小写。

7.SMM的安装只支持Cloudera Manager6.3或更高版本,这是因为CM6.3才增加对SMM服务的相关监控,如果CM版本较低,即使导入csd文件,CM的添加服务也不会有SMM服务显示。

8.SMM的安装支持CDH6.3或更高版本,CDH5.13或更高版本,但是必须安装CDK4.1以上版本的Kafka,CDK是Cloudera Distribution of Apache Kafka的简称,最新的CDK4.1基于Apache Kafka2.2.1。