public class ZooKeeperInstance extends Object implements Instance
An implementation of instance that looks in zookeeper to find information needed to connect to an instance of accumulo.
The advantage of using zookeeper to obtain information about accumulo is that zookeeper is highly available, very responsive, and supports caching.
Because it is possible for multiple instances of accumulo to share a single set of zookeeper servers, all constructors require an accumulo instance name. If you do not know the instance names then run accumulo org.apache.accumulo.server.util.ListInstances on an accumulo server.
Constructor and Description |
---|
ZooKeeperInstance(String instanceName,
String zooKeepers) |
ZooKeeperInstance(String instanceName,
String zooKeepers,
int sessionTimeout) |
ZooKeeperInstance(UUID instanceId,
String zooKeepers) |
ZooKeeperInstance(UUID instanceId,
String zooKeepers,
int sessionTimeout) |
Modifier and Type | Method and Description |
---|---|
org.apache.accumulo.core.conf.AccumuloConfiguration |
getConfiguration()
Returns the AccumuloConfiguration to use when interacting with this instance.
|
Connector |
getConnector(org.apache.accumulo.core.security.thrift.AuthInfo auth)
Returns a connection to accumulo.
|
Connector |
getConnector(String user,
byte[] pass)
Returns a connection to accumulo.
|
Connector |
getConnector(String user,
ByteBuffer pass)
Returns a connection to accumulo.
|
Connector |
getConnector(String user,
CharSequence pass)
Returns a connection to this instance of accumulo.
|
String |
getInstanceID()
Returns a unique string that identifies this instance of accumulo.
|
static String |
getInstanceIDFromHdfs(org.apache.hadoop.fs.Path instanceDirectory)
Deprecated.
|
String |
getInstanceName()
Returns the instance name given at system initialization time.
|
List<String> |
getMasterLocations()
Returns the location(s) of the accumulo master and any redundant servers.
|
String |
getRootTabletLocation()
Returns the location of the tablet server that is serving the root tablet.
|
String |
getZooKeepers()
Returns a comma-separated list of zookeeper servers the instance is using.
|
int |
getZooKeepersSessionTimeOut()
Returns the zookeeper connection timeout.
|
static String |
lookupInstanceName(org.apache.accumulo.core.zookeeper.ZooCache zooCache,
UUID instanceId)
Given a zooCache and instanceId, look up the instance name.
|
void |
setConfiguration(org.apache.accumulo.core.conf.AccumuloConfiguration conf)
Set the AccumuloConfiguration to use when interacting with this instance.
|
public ZooKeeperInstance(String instanceName, String zooKeepers)
instanceName
- The name of specific accumulo instance. This is set at initialization time.zooKeepers
- A comma separated list of zoo keeper server locations. Each location can contain an optional port, of the format host:port.public ZooKeeperInstance(String instanceName, String zooKeepers, int sessionTimeout)
instanceName
- The name of specific accumulo instance. This is set at initialization time.zooKeepers
- A comma separated list of zoo keeper server locations. Each location can contain an optional port, of the format host:port.sessionTimeout
- zoo keeper session time out in milliseconds.public ZooKeeperInstance(UUID instanceId, String zooKeepers)
instanceId
- The UUID that identifies the accumulo instance you want to connect to.zooKeepers
- A comma separated list of zoo keeper server locations. Each location can contain an optional port, of the format host:port.public ZooKeeperInstance(UUID instanceId, String zooKeepers, int sessionTimeout)
instanceId
- The UUID that identifies the accumulo instance you want to connect to.zooKeepers
- A comma separated list of zoo keeper server locations. Each location can contain an optional port, of the format host:port.sessionTimeout
- zoo keeper session time out in milliseconds.public String getInstanceID()
Instance
getInstanceID
in interface Instance
public List<String> getMasterLocations()
Instance
getMasterLocations
in interface Instance
public String getRootTabletLocation()
Instance
getRootTabletLocation
in interface Instance
public String getInstanceName()
Instance
getInstanceName
in interface Instance
public String getZooKeepers()
Instance
getZooKeepers
in interface Instance
public int getZooKeepersSessionTimeOut()
Instance
getZooKeepersSessionTimeOut
in interface Instance
public Connector getConnector(String user, CharSequence pass) throws AccumuloException, AccumuloSecurityException
Instance
getConnector
in interface Instance
user
- a valid accumulo userpass
- If a mutable CharSequence is passed in, it may be cleared after this call.AccumuloException
- when a generic exception occursAccumuloSecurityException
- when a user's credentials are invalidpublic Connector getConnector(String user, ByteBuffer pass) throws AccumuloException, AccumuloSecurityException
Instance
getConnector
in interface Instance
user
- a valid accumulo userpass
- A UTF-8 encoded password. The password may be cleared after making this call.AccumuloException
- when a generic exception occursAccumuloSecurityException
- when a user's credentials are invalidpublic Connector getConnector(String user, byte[] pass) throws AccumuloException, AccumuloSecurityException
Instance
getConnector
in interface Instance
user
- a valid accumulo userpass
- A UTF-8 encoded password. The password may be cleared after making this call.AccumuloException
- when a generic exception occursAccumuloSecurityException
- when a user's credentials are invalidpublic org.apache.accumulo.core.conf.AccumuloConfiguration getConfiguration()
Instance
getConfiguration
in interface Instance
public void setConfiguration(org.apache.accumulo.core.conf.AccumuloConfiguration conf)
Instance
setConfiguration
in interface Instance
conf
- accumulo configurationpublic static String lookupInstanceName(org.apache.accumulo.core.zookeeper.ZooCache zooCache, UUID instanceId)
zooCache
- instanceId
- @Deprecated public static String getInstanceIDFromHdfs(org.apache.hadoop.fs.Path instanceDirectory)
public Connector getConnector(org.apache.accumulo.core.security.thrift.AuthInfo auth) throws AccumuloException, AccumuloSecurityException
Instance
getConnector
in interface Instance
auth
- An AuthInfo object.AccumuloException
- when a generic exception occursAccumuloSecurityException
- when a user's credentials are invalidCopyright © 2016 The Apache Software Foundation. All Rights Reserved.