Updated on 2024-08-10 GMT+08:00

Kafka Access Configuration on Windows Using EIPs

Scenario

This section describes how to bind Elastic IP addresses (EIPs) to a cluster and configure Kafka files so that sample files can be compiled locally.

Procedure

  1. Apply for an EIP for each node in the cluster and add public IP addresses and corresponding host domain names of all nodes to the Windows local hosts file. (If a host name contains uppercase letters, change them to lowercase letters.)

    1. On the VPC console, apply for EIPs (the number of EIPs you buy should be equal to the number of nodes in the cluster), click the name of each node in the MRS cluster, and bind an EIP to each node on the EIPs page.

      For details, see Virtual Private Cloud > User Guide > EIP > Assigning an EIP and Binding It to an ECS.

    2. Record the mapping between the public IP addresses and private IP addresses. Change the private IP addresses in the hosts file to the corresponding public IP addresses.
    Figure 1 Configuring the hosts File

  2. Configure security group rules for the cluster.

    1. On the Dashboard page, choose Add Security Group Rule > Manage Security Group Rule.
      Figure 2 Manage Security Group Rule
    2. On the Inbound Rules tab page, click Add Rule. In the Add Inbound Rule dialog box, configure the Windows IP address and port 9092.
      Figure 3 Add Inbound Rule

  3. On Manager, choose Cluster > Services > Kafka > Configurations > All Configurations, search for and add the key-value pair advertised.listeners =PLAINTEXT://:9092,SSL://:9093,TRACE://:21013 in the kafka.config.expandor parameter, save the configuration, and restart the Kafka cluster.

    If the current cluster is MRS 3.2.0-LTS.1 and you cannot access Kafka through the EIP after performing this step, perform the following operations:

    1. Log in to FusionInsight Manager, choose Cluster > Services > Kafka > Instances, select all Broker instances, and choose More > Stop Instance to verify the administrator password and stop all Broker instances. (This operation affects services. Perform this operation during off-peak hours.)
    2. Log in to the Broker node as the root user and modify the server.properties file.

      vi ${BIGDATA_HOME}/FusionInsight_HD_*/*_*_Broker/etc/server.properties

      Change host.name to the host name of the current Broker node, and change the values of listeners and advertised.listeners to EXTERNAL_PLAINTEXT://{Host name}:{port}.

    3. Log in to FusionInsight Manager, choose Cluster > Services > Kafka > Instances, select all Broker instances, and click Start Instance.
    4. Bind an EIP to each Broker node in the MRS cluster.
    5. On Windows, use the configured EIP and port of the Broker node to connect to the Kafka cluster and debug the code.

  4. Before running the sample code, change the Kafka connection string in the sample code to hostname1:9092, hostname2:9092, hostname3:9092, change the domain name in the code.

    You can log in to FusionInsight Manager, choose System > Permission > Domain and Mutual Trust, and check the value of Local Domain, which is the current system domain name.