准备本地应用开发环境
准备开发环境
在进行应用开发时,要准备的开发和运行环境如表1所示。
| 
       准备项  | 
     
       说明  | 
    
|---|---|
| 
       操作系统  | 
     |
| 
       安装JDK  | 
     
       开发和运行环境的基本配置,版本要求如下: 服务端和客户端仅支持集群自带的OpenJDK,不允许替换。 对于客户应用需引用SDK类的Jar包运行在客户应用进程中的: 
 
        说明: 
        
  | 
    
| 
       安装和配置IntelliJ IDEA  | 
     
       开发环境的基本配置,建议使用2019.1或其他兼容版本。 
        说明: 
        
  | 
    
| 
       安装Maven  | 
     
       开发环境的基本配置。用于项目管理,贯穿软件开发生命周期。  | 
    
| 
       准备开发用户  | 
     
       参考准备MRS应用开发用户进行操作,准备用于应用开发的集群用户并授予相应权限。  | 
    
| 
       7-zip  | 
     
       用于解压“*.zip”和“*.rar”文件,支持7-Zip 16.04版本。  | 
    
| 
       准备项  | 
     
       说明  | 
    
|---|---|
| 
       Python3  | 
     
       用于开发HetuEngine Python应用程序的工具,版本要求不低于3.6,最高不超过3.9。  | 
    
| 
       安装setuptools  | 
     
       Python3开发环境的基本配置,版本如47.3.1。  | 
    
| 
       jaydebeapi  | 
     
       Python3开发环境的基本配置,可以通过该模块使用Java的JDBC来连接数据库。  | 
    
准备运行环境
进行应用开发时,需要同时准备代码的运行调测的环境,用于验证应用程序运行正常。
- 如果本地Windows开发环境和集群业务平面网络互通,可下载集群客户端到本地,获取相关调测程序所需的集群配置文件及配置网络连通后,然后直接在Windows中进行程序调测。
    
- 下载客户端到本地并解压。
      
- MRS 3.3.0之前版本,登录FusionInsight Manager,选择“集群 > 概览 > 更多 > 下载客户端”,“选择客户端类型”设置为“完整客户端”,注意平台类型与待安装客户端节点的节点类型相同(x86为x86_64,ARM为aarch64),单击“确定”,等待客户端文件包生成后根据浏览器提示下载客户端到本地并解压。
 - MRS 3.3.0及之后版本,登录FusionInsight Manager,在“主页”右上方单击“下载客户端”,“选择客户端类型”设置为“完整客户端”,注意平台类型与待安装客户端节点的节点类型相同(x86为x86_64,ARM为aarch64),下载位置选择“浏览器”,单击“确定”,等待客户端文件包生成后根据浏览器提示下载客户端到本地并解压。
 
例如,客户端文件压缩包为“FusionInsight_Cluster_1_Services_Client.tar”,解压后得到“FusionInsight_Cluster_1_Services_ClientConfig.tar”,继续解压该文件。解压到本地PC的“D:\FusionInsight_Cluster_1_Services_ClientConfig”目录下(路径中不能有空格)。
 - 进入客户端解压路径“FusionInsight_Cluster_1_Services_ClientConfig\HetuEngine\config”,手动将配置文件放置到HetuEngine样例工程的resources目录中。
      
将准备MRS应用开发用户时获取的keytab文件也放置于resources目录下。
以omm用户登录部署了HSBroker角色的节点,进入“${BIGDATA_HOME}/FusionInsight_Hetu_XXX/XXX_HSBroker/etc/”目录,下载“hetuserver.jks”文件,并将该文件也放置到“resources”目录下,主要配置文件说明如表3所示。
 - 在应用开发过程中,如需在本地Windows系统中调测应用程序,需要复制解压目录下的“hosts”文件中的内容到客户端所在节点的hosts文件中,确保本地机器能与解压目录下“hosts”文件中所列出的各主机在网络上互通。
      
 
       - 当客户端所在主机不是集群中的节点时,配置客户端网络连接,可避免执行客户端命令时出现错误。
 - Windows本地hosts文件存放路径举例:“C:\WINDOWS\system32\drivers\etc\hosts”。
 
 
 - 下载客户端到本地并解压。
      
 
- 如果使用Linux环境调测程序,需在准备安装集群客户端的Linux节点并获取相关配置文件。
    
- 在节点中安装客户端,例如客户端安装目录为“/opt/client”。
      
      
集群的Master节点或者Core节点使用客户端可参考集群内节点使用MRS客户端,MRS集群外客户端的安装操作可参考集群外节点使用MRS客户端。
 - 登录FusionInsight Manager,下载集群客户端软件包至主管理节点并解压,然后以root用户登录主管理节点,进入集群客户端解压路径下,复制“FusionInsight_Cluster_1_Services_ClientConfi/HetuEngine/config”路径下的所有配置文件至客户端节点,放置到与准备放置编译出的jar包同目录的“conf”目录下,用于后续调测,例如“/opt/client/conf”。
      
例如客户端软件包为“FusionInsight_Cluster_1_Services_Client.tar”,下载路径为主管理节点的“/tmp/FusionInsight-Client”:
cd /tmp/FusionInsight-Client
tar -xvf FusionInsight_Cluster_1_Services_Client.tar
tar -xvf FusionInsight_Cluster_1_Services_ClientConfig.tar
cd FusionInsight_Cluster_1_Services_ClientConfig
scp HetuEngine/config/* root@客户端节点IP地址:/opt/client/conf
以omm用户登录部署了HSBroker角色的节点,进入“${BIGDATA_HOME}/FusionInsight_Hetu_xxx/xxx_HSBroker/etc/”目录,下载“hetuserver.jks”文件,并将该文件也放置于该目录下。
准备MRS应用开发用户时获取的keytab文件也放置于该目录下,主要配置文件说明如表4所示(根据需要获取所需文件)。
 - 检查客户端节点网络连接。
      
在安装客户端过程中,系统会自动配置客户端节点“hosts”文件,建议检查“/etc/hosts”文件内是否包含集群内节点的主机名信息,如未包含,需要手动复制解压目录下的“hosts”文件中的内容到客户端所在节点的hosts文件中,确保本地机器能与集群各主机在网络上互通。
 
 - 在节点中安装客户端,例如客户端安装目录为“/opt/client”。