我们在Cloudera的流分析系列中介绍了《Cloudera中的流分析概览》、《SQL Stream Builder的概览》、《CSA的部署方案》和《CSA的安装部署》,今天我们来进行下一个章节:SQL Stream Builder的安装部署。
为SSB配置数据库
在将SQL Stream Builder(SSB)作为服务添加到群集之前,您需要手动配置数据库以使用SSB。数据库用于存储Streaming SQL Console和实例化视图的元数据信息。
SSB支持以下数据库:
流式SQL控制台 | 物化视图引擎 | |
---|---|---|
MySQL / MariaDB | 支持 | 不支持 |
PostgreSQL | 支持 | 支持 |
为SSB配置MySQL / MariaDB
安装MySQL / MariaDB服务器后,必须为SQL Stream Builder(SSB)创建数据库和凭据,以便能够在群集上安装该服务。
您需要创建将用于Streaming SQL Console的MySQL / MariaDB数据库。
- 以root用户身份登录到MySQL:
mysql -u root -p
Enter password:
- 为流SQL控制台创建数据库:
CREATE DATABASE ssb_admin DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
- 授予创建的数据库的所有特权:
GRANT ALL ON ssb_admin.* TO 'ssb_admin'@'%' IDENTIFIED BY '<password>';
- 确认您已经创建了Streaming SQL Console数据库:
SHOW DATABASES;
[root@ip-10-0-0-103 default]# mysql -uroot -pcloudera
Welcome to the MariaDB monitor. Commands end with ; or g.
Your MariaDB connection id is 751
Server version: 10.2.38-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
MariaDB [(none)]> CREATE DATABASE ssb_admin DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> GRANT ALL ON ssb_admin.* TO 'ssb_admin'@'%' IDENTIFIED BY 'cloudera';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> SHOW DATABASES;
--------------------
| Database |
--------------------
| amon |
| efm |
| hue |
| information_schema |
| metastore |
| mysql |
| nav |
| navms |
| nifireg |
| oozie |
| performance_schema |
| ranger |
| registry |
| rman |
| scm |
| ssb_admin |
| streamsmsgmgr |
--------------------
17 rows in set (0.00 sec)
MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> quit;
Bye
[root@ip-10-0-0-103 default]#
安装MySQL Python连接器
您需要安装8.0.23版本的MySQL python连接器,SSB才能连接到MySQL数据库。
使用以下示例命令为MySQL安装正确的版本:
RHEL
- 安装python-pip软件包:
sudo yum -y install python3-pip
- 创建安装软件包的目录:
mkdir -p /usr/share/python3
- 使用pip安装mysql连接器8.0.23:
sudo pip3 install mysql-connector-python==8.0.23 -t /usr/share/python3
Ubuntu
- 安装python-pip软件包:
sudo apt-get install python3-pip
- 创建安装软件包的目录:
mkdir -p /usr/share/python3
- 使用pip安装mysql连接器8.0.23:
sudo pip3 install mysql-connector-python==8.0.23 -t /usr/share/python3
为SSB配置PostgreSQL
安装PostgreSQL服务器后,必须为SQL Stream Builder(SSB)创建数据库和凭据,以便能够在群集上安装该服务。
您需要创建将用于流SQL控制台和实体化视图引擎的PostgreSQL数据库。
- 连接到PostgreSQL:
sudo -u postgres psql
- 为流SQL控制台创建数据库:
CREATE ROLE ssb_admin LOGIN PASSWORD '<password>';
CREATE DATABASE ssb_admin OWNER ssb_admin ENCODING 'UTF8';
为物化视图引擎创建数据库:
代码语言:javascript复制CREATE ROLE ssb_mve LOGIN PASSWORD '<password>';
CREATE DATABASE ssb_mve OWNER ssb_mve ENCODING 'UTF8';
- 确认您已使用l 命令创建了Streaming SQL Console和Materialized View Engine数据库。
安装PostgreSQL Python连接器
您需要安装2.8.5。用于SSB的psycopg2 Python软件包的版本,以连接到PostgreSQL数据库。
使用以下示例命令为PostgreSQL安装正确的版本:
RHEL
- 安装python-pip软件包:
sudo yum install python3-pip
- 创建安装软件包的目录:
mkdir -p /usr/share/python3
- 使用pip安装psycopg2 2.8.5:
sudo pip3 install psycopg2-binary==2.8.5 -t /usr/share/python3
Ubuntu
- 安装python-pip软件包:
sudo apt-get install python3-pip
- 创建安装软件包的目录:
mkdir -p /usr/share/python3
- 使用pip安装psycopg2 2.8.5:
sudo pip3 install psycopg2-binary==2.8.5 -t /usr/share/python3
将SSB添加为服务
您要使用Cloudera Manager中的“添加服务”向导在群集上安装SQL Stream Builder(SSB)服务。
- 确保该文件/opt/cloudera/csd 夹中有SSB CSD文件。
- 确保已将CSA Parcel添加到Cloudera Manager。
- 确保已正确安装和配置SSB数据库,并且还安装了必需的Python和Java驱动程序。
- 检查集群中是否安装了以下组件:
强制性组件 | 可选组件 |
---|---|
Flink | Schema Registry |
Kafka | Streams Messaging Manager |
- 打开Cloudera Manager。
- 在主屏幕上,选择集群右侧的下拉菜单。
- 选择添加服务。
- 从列表中,选择“ SQL Stream Builder”作为服务类型,然后单击“继续”。
将启动“添加服务”向导。
- 将SQL Stream Engine,物化视图引擎和SQL Stream Console服务角色分配给主机,然后单击Continue(我这里使用的是MariaDB,因此不能部署物化视图引擎)。
您需要根据创建数据库的位置以及分配Flink和Kafka角色的位置来分配服务角色。
- 将SSB服务连接到数据库。
重要
在将SSB添加为服务之前,您必须安装并配置MySQL / MariaDB或PostgreSQL数据库。如果您没有为集群设置任何数据库,请参阅“为SSB配置数据库”文档。如果计划在SSB中使用实体化视图,则必须安装PostgreSQL数据库。
- 查看服务所需的更改。
如果您将MySQL用于流SQL控制台,而将PostgreSQL用于物化视图,则系统将提示您提供有关物化视图引擎数据库的信息。为数据库主机名提供默认端口,您的用户名和密码,以显示在“物化视图引擎”字段中。
笔记
您可以在此步骤或在“配置”页面中添加服务之后,为SQL Stream Builder配置安全属性。有关配置安全性的更多信息,请参见管理 SQL Stream安全性文档。
- 单击“继续”,然后等待直到SSB服务的第一次运行完成。
- 单击继续,然后 单击完成。
这时就完成了整个CSA的安装。
参考链接:
https://docs.cloudera.com/csa/1.3.0/support-matrix/topics/csa-system-req.html
https://docs.cloudera.com/csa/1.3.0/download/topics/csa-download-portal.html
https://docs.cloudera.com/csa/1.3.0/installation/topics/csa-installing-parcel.html