开发环境准备
操作场景
本开发指南提供了华为FusionInsight HD的Streaming组件基于CQL的Eclipse样例工程和Linux命令行接口说明,便于开发者快速熟悉CQL。为了运行FusionInsight HD的CQL的样例代码,你需要完成下面的操作。
开发环境准备分为应用开发客户端和应用提交客户端,应用开发提供了通过Eclipse客户端提交应用程序的方式以及CQL Java API使用的实例程序,一般是在Windows环境下进行;应用提交一般是在Linux环境下进行。
应用开发客户端操作步骤
- 确认华为FusionInsight HD的Streaming组件已经安装,并正常运行。
- 客户端机器安装Eclipse和JDK程序,安装要求如下:
- Eclipse使用3.0及以上版本。
- JDK使用Oracle JDK 1.7或者1.8版本。
- 客户端机器的时间与FusionInsight HD集群的时间要保持一致,时间差要小于5分钟。
下载Streaming客户端程序。
- 登录FusionInsight Manager系统。
在浏览器地址栏中输入访问地址,地址格式为“http://FusionInsight Manager系统的WebService浮动IP地址:8080/web”。
例如,在IE浏览器地址栏中,输入“http://10.0.0.1:8080/web”。
- 选择“服务管理>Streaming>下载客户端>完整客户端”,下载客户端程序到本地机器。
- 登录FusionInsight Manager系统。
解压缩Steaming客户端程序,并双击该目录下的“install.bat”脚本,自动配置客户端工程。
解压目录下的“Streaming/cql-examples”文件夹即为样例工程文件夹。配置客户端网络连接,确保本地机器能与解压目录下“hosts”文件中所列出的各主机在网络上互通。
说明:
本地hosts文件存放路径举例:- windows:“C:\WINDOWS\system32\drivers\etc\hosts”
- linux:“/etc/hosts”
导入样例工程到Eclipse开发环境。
选择“File > Import > General > Existing Projects into Workspace > Next >Browse”。
显示“浏览文件夹”对话框。选择样例工程文件夹,单击“Finish”。
如果集群启动了安全服务,需要配置Kerberos帐号和keytab文件。
从管理员处获取一个“人机”用户以及keytab文件,用于登录FusionInsight HD平台并通过认证。
说明:
获取用户和keytab文件的方法,请参见《管理员指南》。将keytab文件放置在样例工程的“conf”目录下。
修改类CQLExample的setSecurityConfs方法中的userPrincipal和keytabPath参数名称,例如:
String userPrincipal = "[email protected]";String keytabPath = confDir + "user.keytab";
设置Eclipse的文本文件编码格式,解决乱码显示问题。
在Eclipse的菜单栏中,选择“Window > Preferences”。
弹出“Preferences”窗口。在左边导航上选择“General > Workspace”,在“Text file encoding”区域,选中“Other”,并设置参数值为“UTF-8”,单击“Apply”后,单击“OK”,如图1所示。 图1设置Eclipse的编码格式

应用提交客户端操作步骤
- 确认华为FusionInsight HD的Streaming组件已经安装,并正常运行。
- 客户端机器的时间与FusionInsight HD集群的时间要保持一致,时间差要小于5分钟。
下载Streaming客户端程序。
- 登录FusionInsight Manager系统。
在浏览器地址栏中输入访问地址,地址格式为“http://FusionInsight Manager系统的WebService浮动IP地址:8080/web”。
例如,在IE浏览器地址栏中,输入“http://10.0.0.1:8080/web”。
- 选择“服务管理>Streaming>下载客户端>完整客户端”,下载客户端程序到本地机器。
- 登录FusionInsight Manager系统。
上传安装包至Linux服务器上。
例如:上传至Linux服务器的“/opt/ client_install”目录。登录Linux服务器,进入上传目录“/opt/client_install”,解压缩客户端安装包到当前目录
进入客户端安装包解压目录“ /opt/client_install”,执行以下命令,安装Streaming客户端:
install.sh客户端安装目录例如:客户端安装目录为“/opt/Streaming_Client”,则执行命令为:
./install.sh /opt/Streaming_Client
初始化客户端环境变量。
进入安装目录“/opt/Streaming _Client”执行以下命令,导入环境变量信息。source bigdata_env
如果集群启用了安全服务,则需要进行安全登录。
从管理员处获取一个“人机”用户,用于登录FusionInsight HD平台并通过认证。例如:帐号john。
说明:
获取用户的方法,请参见《管理员指南》。执行kinit命令进行“人机”用户的安全登录。
kinit 用户名例如:
kinit john
然后按照提示输入密码,无异常提示返回,则完成了用户的kerberos认证。
进入安装目录下的Streaming/streaming-cql-1.0/bin目录,执行
./cql在出现如下命令行之后,输入"show applications;"命令之后,如果可以查看到当前运行的应用程序信息,并且没有异常,则说明运行成功,如图 2 CQL命令行运行示例。
图2CQL命令行运行示例
