Created 11-01-2016 07:24 AM
Hello
I have a cluster (HDP 2.3.2) with one edge node serving as Hive Server (running hiveserver2). This server is used for Hive ETL processes and also for end users that query the hive databases. Because this server is very busy i want to add another edge server that will be dedicated for the ETL processes, thus ending up with one edge node for ETL processes (that insert data to Hive tables), and a different edge node that serves end users for querying the same hive tables. I've added the new host to the cluster, ran the add HiveServer2 wizard. The Amabri shows everything is up and running. When i login to the new edge node, run "beeline" and login to hive but i can't see the tables in my old hive metastore. It is as if these are two completely separate instances.
I need two different servers looking at the same Hive metastore\DB. Any ideas how can i acomplish this ?
Created 11-01-2016 05:36 PM
Take a look on the error logs...
ERROR [HiveServer2-Background-Pool: Thread-165]: authorizer.RangerHiveAuthorizer (RangerHiveAuthorizer.java:filterListCmdObjects(430)) - filterListCmdObjects: Internal error: null RangerAccessResult object received back from isAccessAllowed()!
Created 01-24-2017 05:07 PM
In your second HS2 server go to /etc/hive/conf/conf.server , check for "localhost" properties there especially in ranger-hive-audit.xml & ranger-hive-security.xml
Created 01-25-2017 12:32 PM
Also,
Make sure that in the Ranger's DB (the default is mysql) the user rangerlogger has permission to connect from the second Hive server.
Created 01-25-2017 12:36 PM
Also make sure that rangerlogger user has permissions to connect from the second hive server (in the Ranger's DB... the default is mysql).
The best way to do it is to try to connect to mysql on the first hive server from the second server using: mysql -u rangerlogger -p -h <second hive server>
If permissions is denied - then login to mysql using root and run the following:
GRANT ALL PRIVILEGES ON *.* TO 'rangerlogger'@'<second hive server>' IDENTIFIED BY '<PASSWORD>' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Then check again.