What do I need to setup on linux machine outside mapr cluster to read and write to maprdb table using Java Client?
According to Filesystem Operations on MapR-DB Tables - MapR 5.0 Documentation - doc.mapr.com, you cannot perform read or write operations on a MapR-DB table from a Linux file system context.
I am not looking to access using file system context but through Java HBase API. I read through this post Accessing MapR DB without installing MapR Client which is very near to what I am looking for but I will need to access a secure cluster in my case.
Sanjamala Nayeem, can you help with this?
Hi, yes you can write a Java App the resides on an edge node that connects to the cluster and can connect to MapRDB or HBase.
The best thing is to install the MapR Client software on the machine.
If you want to be a masochist, I believe you can pull down the necessary libraries and during the compilation, you include the libraries. Then when you build your Configuration and your HBase Configuration, you have to manually add the data your app would normally find from your hadoop *-site.xml files.
The other issue in terms of security, you need to get a ticket. So if you don't have the client software installed, getting a ticket (either mapR or kerberos) will include a bit more pain.
Keys Botzum, do you think you can add how to do this, if it is possible? Not sure if mapR supports either/or or both at the same time. (Kerberos / MapR) and which java libraries are going to be necessary...
Is there a reason why you don't want to install the MapR client?
I got it done through mapr-client and mapr-hbase client installation on the external machine and then configured appropriately to connect to cluster.
Installing the MapR Client on CentOS, RedHat, Oracle Linux
Installing HBase - MapR 5.0 Documentation - doc.mapr.com
I am now able to connect to maprdb in my cluster by adding this `hbase classpath` to the classpath! The clients installation did make it easy!
But out of curiosity I would like to know the answer if we have a way for this
"So if you don't have the client software installed, getting a ticket (either mapR or kerberos) will include a bit more pain."
Thanks for the suggestions so far!
Do you have any lingering questions before I close this discussion thread?
I am waiting if we could get a response for Michael Segel question below.
Sorry, I thought Keys answered it.
The point I was trying to make was that if you didn't have the MapR Client, you would have to import all of the security java libraries to create a kerberos ticket and then use it. That's a lot more work and if not done right, a pain to debug.
If you want to see the steps you could google 'How to generate a kerberos ticket in Java' and I think you may find a couple of examples. Of course YMMV so take them with a grain of salt.
Definitely not recommended.
Looks like you've already solved your problem by downloading and using the MapR Client package.
Thanks for the update!If it is a general kerberos stuff [in Java] even for mapr I am good with the suggested answer. Community Manager can close this thread.
Thanks again for the help!
Don't forget to endorse Michael and Key's skills to show your appreciation. Check out How to Share your Skills in the MapR Converge Community under How to pay it forward and endorse someone else?
It's not quite clear to me what I'm being asked, but there are only two ways to obtain a MapR ticket:
* using maprlogin (with passwords or kerberos)
* implicitly using Kerberos
If there is a client installed on the client machine, simply use maprlogin. If there is no client you can of course rely on Kerberos although I'm not going to recommend that given the complexity of Kerberos.
Remember that ultimately tickets are just files and can be copied from machine to machine. In the case of a client, they are often long lived server processes running off cluster. To ensure they can run for a long time, get a service ticket and just copy it - Generating a Service Ticket . This is equivalent in spirit to a Kerberos keytab file.
Lastly, just so that there is no doubt, we *strongly* recommend that you install a MapR client on client machines.
I was trying to answer what Java classes he would have to include in order to make the calls to get/generate keys.
OP's initial question was what would it take if he didn't have MapR client installed. (So no maprlogin ...)
Retrieving data ...