Connecting to Impala on Kerberized CDH Cluster
A secure CDH Cluster uses Kerberos authentication to validate and confirm access requests. You can set up Zoomdata to connect to the secure CDH Cluster using the instructions provided below (which has been tested on CDH v5.7.1 and Impala v2.5.0).
Preparing impala cluster
To enable Kerberos for CDH distribution using Cloudera manager, see Cloudera's documentation Configuring Authentication in Cloudera Manager.
Kerberos authentication requires precise time correspondence on all instances to work properly. You need to enable the Network Time Protocol service in your network. For more information, access the article Using the Network Time Protocol to Synchronize Time .
Configuring the Zoomdata services
Obtaining Kerberos Credentials
In the Kerberos world, each service must have its own unique identifier called a principal. Perform the following steps:
- Install the Kerberos client on the CentOS or Ubuntu machine on which Zoomdata Server/Impala connector is installed.
Generate Kerberos principal and corresponding keytab for Zoomdata service. Before you proceed, make sure that:
Zoomdata or a Connector is running on a node with proper Kerberos configuration:
/etc/krb5.confor similar location for your Linux distribution.
The Kerberos realm on your environment is the same as the realm specified in the
kdc.conffile from Impala server.
3. Check the Kerberos configuration (that is,
) and validity of the principal and keytab pair using MIT Kerberos client:
4. Make the keytab accessible for the Zoomdata Server or a connector:
sudo mv zoomdata_principal.keytab /etc/zoomdata
sudo chown zoomdata:zoomdata /etc/zoomdata/zoomdata_principal.keytab
sudo chmod 600 /etc/zoomdata/zoomdata_principal.keytab
Configuring an Impala Connector
- Create or update the file named /etc/zoomdata/edc-impala.properties . If this file already exists, verify that the information below exists in the file:
2. Restart the Impala connector:
Connecting to Kerberized Impala
You are now ready to create the Cloudera Impala source:
- Open a new browser window and log into Zoomdata.
Specify the name of your source and add a description (if desired). Select
- On the Connection page, define the connection source. You can use an existing connection, if available, or create a new one. To create a new connection, select the Input New Credentials option button and specify the connection name and JDBC URL. Make sure that you enter the JDBC URL in the correct format:
Replace the placeholders as follows:
- impala_host enter the IP address/host name of the Impala node you are connecting to
- [email protected] enter the principal of the Impala node you are connecting to. To get the list of all Impala principals, navigate to Cloudera Manager > Administration > Security > Kerberos Credentials.
- Click Validate . After successful validation, the values will be saved. Select Next .
You can continue configuring Impala data source as provided in the Connecting to Impala article.
After you have completed the configuration, Zoomdata will begin accessing Impala using [email protected] authenticated by its keytab in /etc/zoomdata/zoomdata_principal.keytab .
Using TLS ENCRYPTION along with KERBEROS authentication
Refer to the Using TLS encryption along with Kerberos Authentication section for more details.