Updated on 2022-09-14 GMT+08:00

Preparing Development and Operating Environment

Preparing Development Environment

Table 1 describes the local environment required for application development. You also need to prepare a Linux environment for verifying whether the application is running properly.

Table 1 Development environment

Item

Description

OS

  • Development environment: Windows 7 or later version is recommended.
  • Operating environment: Linux OS.

    If the program needs to be commissioned locally, the running environment must be able to communicate with the cluster service plane network.

JDK installation

Basic configurations of the development and operating environments. The version requirements are as follows:

  • The server and client of an MRS cluster support only built-in Oracle JDK 1.8, which cannot be replaced.
  • If users' applications need to reference the JAR files of the SDK class in the user application processes, Oracle JDK and IBM JDK are supported.
    • Oracle JDK versions: 1.7 and 1.8
    • IBM JDK versions: 1.7.8.10, 1.7.9.40, and 1.8.3.0
NOTE:

For security purpose, MRS cluster servers support only TLS 1.1 and TLS 1.2 encryption protocols in the Presto development environment. IBM JDK supports only TLS 1.0 by default. If you use IBM JDK, set com.ibm.jsse2.overrideDefaultTLS to true. After the parameter setting, TLS1.0/1.1/1.2 can be supported at the same time. For details, visit https://www.ibm.com/support/knowledgecenter/en/SSYKE2_8.0.0/com.ibm.java.security.component.80.doc/security-component/jsse2Docs/matchsslcontext_tls.html#matchsslcontext_tls.

IntelliJ IDEA installation and configuration

It is the basic configuration for the development environment. The version must be 2019.1 or other compatible version.

NOTE:
  • If you use IBM JDK, ensure that the JDK configured in IntelliJ IDEA is IBM JDK.
  • If you use Oracle JDK, ensure that the JDK configured in IntelliJ IDEA is Oracle JDK.
  • If you use ODBC for secondary development, ensure that JDK 1.8 or later is used.
  • Do not use the same workspace and the sample project in the same path for different IntelliJ IDEA programs.

Maven installation

Basic configuration of the development environment for project management throughout the lifecycle of software development.

7-zip

Used to decompress .zip and .rar packages. The 7-zip 16.04 is supported.

Preparing an Operating Environment

During application development, you need to prepare a Linux environment for verifying whether the application is running properly.
  1. Install the client on the node. For example, the client installation directory is /opt/client.

    Ensure that the difference between the client time and the cluster time is less than 5 minutes.

    For details about how to use the client on a Master or Core node in the cluster, see . For details about how to install the client outside the MRS cluster, see .

  2. . Download the cluster client software package to the active management node and decompress it. Then, log in to the active management node as user root. Go to the decompression path of the cluster client and copy all configuration files in the FusionInsight_Cluster_1_Services_ClientConfig/Presto/config directory to the conf directory where the compiled JAR package is stored for subsequent commissioning, for example, /opt/client/conf.

    For example, if the client software package is FusionInsight_Cluster_1_Services_Client.tar and the download path is /tmp/FusionInsight-Client on the active management node, run the following command:

    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 Presto/config/* root@IP address of the client node:/opt/client/conf

  3. Check the network connection of the client node.

    During the client installation, the system automatically configures the hosts file on the client node. You are advised to check whether the /etc/hosts file contains the host names of the nodes in the cluster. If no, manually copy the content in the hosts file in the decompression directory to the hosts file on the node where the client resides, to ensure that the local host can communicate with each host in the cluster.