|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.hadoop.service.AbstractService
org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore
@InterfaceAudience.Private @InterfaceStability.Unstable public abstract class RMStateStore
| Nested Class Summary | |
|---|---|
static class |
RMStateStore.ApplicationAttemptState
State of an application attempt |
static class |
RMStateStore.ApplicationState
State of an application application |
static class |
RMStateStore.RMDTSecretManagerState
|
static class |
RMStateStore.RMState
State of the ResourceManager |
| Nested classes/interfaces inherited from interface org.apache.hadoop.service.Service |
|---|
org.apache.hadoop.service.Service.STATE |
| Field Summary | |
|---|---|
static org.apache.hadoop.io.Text |
AM_CLIENT_TOKEN_MASTER_KEY_NAME
|
static org.apache.hadoop.io.Text |
AM_RM_TOKEN_SERVICE
|
protected static String |
AMRMTOKEN_SECRET_MANAGER_ROOT
|
protected static String |
DELEGATION_KEY_PREFIX
|
protected static String |
DELEGATION_TOKEN_PREFIX
|
protected static String |
DELEGATION_TOKEN_SEQUENCE_NUMBER_PREFIX
|
protected static String |
EPOCH_NODE
|
static org.apache.commons.logging.Log |
LOG
|
protected static String |
RM_APP_ROOT
|
protected static String |
RM_DT_SECRET_MANAGER_ROOT
|
protected static String |
VERSION_NODE
|
| Constructor Summary | |
|---|---|
RMStateStore()
|
|
| Method Summary | |
|---|---|
void |
checkVersion()
1) Versioning scheme: major.minor. |
protected abstract void |
closeInternal()
Derived classes close themselves using this method. |
abstract void |
deleteStore()
Derived classes must implement this method to delete the state store |
abstract long |
getAndIncrementEpoch()
Get the current epoch of RM and increment the value. |
org.apache.hadoop.security.Credentials |
getCredentialsFromAppAttempt(RMAppAttempt appAttempt)
|
protected abstract org.apache.hadoop.yarn.server.records.Version |
getCurrentVersion()
Get the current version of the underlying state store. |
protected void |
handleStoreEvent(RMStateStoreEvent event)
|
protected abstract void |
initInternal(org.apache.hadoop.conf.Configuration conf)
Derived classes initialize themselves using this method. |
abstract RMStateStore.RMState |
loadState()
Blocking API The derived class must recover state from the store and return a new RMState object populated with that state This must not be called on the dispatcher thread |
protected abstract org.apache.hadoop.yarn.server.records.Version |
loadVersion()
Derived class use this method to load the version information from state store. |
protected void |
notifyStoreOperationFailed(Exception failureCause)
|
void |
removeApplication(RMApp app)
Non-blocking API ResourceManager services call this to remove an application from the state store This does not block the dispatcher threads There is no notification of completion for this operation. |
protected abstract void |
removeApplicationStateInternal(RMStateStore.ApplicationState appState)
Blocking API Derived classes must implement this method to remove the state of an application and its attempts |
void |
removeRMDelegationToken(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
int sequenceNumber)
RMDTSecretManager call this to remove the state of a delegation token |
protected abstract void |
removeRMDelegationTokenState(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier)
Blocking API Derived classes must implement this method to remove the state of RMDelegationToken |
void |
removeRMDTMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey delegationKey)
RMDTSecretManager call this to remove the state of a master key |
protected abstract void |
removeRMDTMasterKeyState(org.apache.hadoop.security.token.delegation.DelegationKey delegationKey)
Blocking API Derived classes must implement this method to remove the state of DelegationToken Master Key |
protected void |
serviceInit(org.apache.hadoop.conf.Configuration conf)
|
protected void |
serviceStart()
|
protected void |
serviceStop()
|
void |
setResourceManager(ResourceManager rm)
|
void |
setRMDispatcher(org.apache.hadoop.yarn.event.Dispatcher dispatcher)
Dispatcher used to send state operation completion events to ResourceManager services |
protected abstract void |
startInternal()
Derived classes start themselves using this method. |
protected abstract void |
storeApplicationAttemptStateInternal(org.apache.hadoop.yarn.api.records.ApplicationAttemptId attemptId,
ApplicationAttemptStateData attemptStateData)
Blocking API Derived classes must implement this method to store the state of an application attempt |
protected abstract void |
storeApplicationStateInternal(org.apache.hadoop.yarn.api.records.ApplicationId appId,
ApplicationStateData appStateData)
Blocking API Derived classes must implement this method to store the state of an application. |
void |
storeNewApplication(RMApp app)
Non-Blocking API ResourceManager services use this to store the application's state This does not block the dispatcher threads RMAppStoredEvent will be sent on completion to notify the RMApp |
void |
storeNewApplicationAttempt(RMAppAttempt appAttempt)
|
abstract void |
storeOrUpdateAMRMTokenSecretManagerState(AMRMTokenSecretManagerState amrmTokenSecretManagerState,
boolean isUpdate)
Blocking API Derived classes must implement this method to store or update the state of AMRMToken Master Key |
void |
storeRMDelegationTokenAndSequenceNumber(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
Long renewDate,
int latestSequenceNumber)
RMDTSecretManager call this to store the state of a delegation token and sequence number |
protected abstract void |
storeRMDelegationTokenAndSequenceNumberState(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
Long renewDate,
int latestSequenceNumber)
Blocking API Derived classes must implement this method to store the state of RMDelegationToken and sequence number |
void |
storeRMDTMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey delegationKey)
RMDTSecretManager call this to store the state of a master key |
protected abstract void |
storeRMDTMasterKeyState(org.apache.hadoop.security.token.delegation.DelegationKey delegationKey)
Blocking API Derived classes must implement this method to store the state of DelegationToken Master Key |
protected abstract void |
storeVersion()
Derived class use this method to store the version information. |
void |
updateApplicationAttemptState(RMStateStore.ApplicationAttemptState attemptState)
|
protected abstract void |
updateApplicationAttemptStateInternal(org.apache.hadoop.yarn.api.records.ApplicationAttemptId attemptId,
ApplicationAttemptStateData attemptStateData)
|
void |
updateApplicationState(RMStateStore.ApplicationState appState)
|
protected abstract void |
updateApplicationStateInternal(org.apache.hadoop.yarn.api.records.ApplicationId appId,
ApplicationStateData appStateData)
|
void |
updateRMDelegationTokenAndSequenceNumber(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
Long renewDate,
int latestSequenceNumber)
RMDTSecretManager call this to update the state of a delegation token and sequence number |
protected abstract void |
updateRMDelegationTokenAndSequenceNumberInternal(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
Long renewDate,
int latestSequenceNumber)
Blocking API Derived classes must implement this method to update the state of RMDelegationToken and sequence number |
| Methods inherited from class org.apache.hadoop.service.AbstractService |
|---|
close, getBlockers, getConfig, getFailureCause, getFailureState, getLifecycleHistory, getName, getServiceState, getStartTime, init, isInState, noteFailure, putBlocker, registerGlobalListener, registerServiceListener, removeBlocker, setConfig, start, stop, toString, unregisterGlobalListener, unregisterServiceListener, waitForServiceToStop |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected static final String RM_APP_ROOT
protected static final String RM_DT_SECRET_MANAGER_ROOT
protected static final String DELEGATION_KEY_PREFIX
protected static final String DELEGATION_TOKEN_PREFIX
protected static final String DELEGATION_TOKEN_SEQUENCE_NUMBER_PREFIX
protected static final String AMRMTOKEN_SECRET_MANAGER_ROOT
protected static final String VERSION_NODE
protected static final String EPOCH_NODE
public static final org.apache.commons.logging.Log LOG
public static final org.apache.hadoop.io.Text AM_RM_TOKEN_SERVICE
public static final org.apache.hadoop.io.Text AM_CLIENT_TOKEN_MASTER_KEY_NAME
| Constructor Detail |
|---|
public RMStateStore()
| Method Detail |
|---|
public void setRMDispatcher(org.apache.hadoop.yarn.event.Dispatcher dispatcher)
protected void serviceInit(org.apache.hadoop.conf.Configuration conf)
throws Exception
serviceInit in class org.apache.hadoop.service.AbstractServiceException
protected void serviceStart()
throws Exception
serviceStart in class org.apache.hadoop.service.AbstractServiceException
protected abstract void initInternal(org.apache.hadoop.conf.Configuration conf)
throws Exception
Exception
protected abstract void startInternal()
throws Exception
Exception
protected void serviceStop()
throws Exception
serviceStop in class org.apache.hadoop.service.AbstractServiceException
protected abstract void closeInternal()
throws Exception
Exception
public void checkVersion()
throws Exception
Exception
protected abstract org.apache.hadoop.yarn.server.records.Version loadVersion()
throws Exception
Exception
protected abstract void storeVersion()
throws Exception
Exceptionprotected abstract org.apache.hadoop.yarn.server.records.Version getCurrentVersion()
public abstract long getAndIncrementEpoch()
throws Exception
Exception
public abstract RMStateStore.RMState loadState()
throws Exception
Exceptionpublic void storeNewApplication(RMApp app)
public void updateApplicationState(RMStateStore.ApplicationState appState)
protected abstract void storeApplicationStateInternal(org.apache.hadoop.yarn.api.records.ApplicationId appId,
ApplicationStateData appStateData)
throws Exception
Exception
protected abstract void updateApplicationStateInternal(org.apache.hadoop.yarn.api.records.ApplicationId appId,
ApplicationStateData appStateData)
throws Exception
Exceptionpublic void storeNewApplicationAttempt(RMAppAttempt appAttempt)
public void updateApplicationAttemptState(RMStateStore.ApplicationAttemptState attemptState)
protected abstract void storeApplicationAttemptStateInternal(org.apache.hadoop.yarn.api.records.ApplicationAttemptId attemptId,
ApplicationAttemptStateData attemptStateData)
throws Exception
Exception
protected abstract void updateApplicationAttemptStateInternal(org.apache.hadoop.yarn.api.records.ApplicationAttemptId attemptId,
ApplicationAttemptStateData attemptStateData)
throws Exception
Exception
public void storeRMDelegationTokenAndSequenceNumber(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
Long renewDate,
int latestSequenceNumber)
protected abstract void storeRMDelegationTokenAndSequenceNumberState(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
Long renewDate,
int latestSequenceNumber)
throws Exception
Exception
public void removeRMDelegationToken(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
int sequenceNumber)
protected abstract void removeRMDelegationTokenState(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier)
throws Exception
Exception
public void updateRMDelegationTokenAndSequenceNumber(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
Long renewDate,
int latestSequenceNumber)
protected abstract void updateRMDelegationTokenAndSequenceNumberInternal(org.apache.hadoop.yarn.security.client.RMDelegationTokenIdentifier rmDTIdentifier,
Long renewDate,
int latestSequenceNumber)
throws Exception
Exceptionpublic void storeRMDTMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey delegationKey)
protected abstract void storeRMDTMasterKeyState(org.apache.hadoop.security.token.delegation.DelegationKey delegationKey)
throws Exception
Exceptionpublic void removeRMDTMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey delegationKey)
protected abstract void removeRMDTMasterKeyState(org.apache.hadoop.security.token.delegation.DelegationKey delegationKey)
throws Exception
Exception
public abstract void storeOrUpdateAMRMTokenSecretManagerState(AMRMTokenSecretManagerState amrmTokenSecretManagerState,
boolean isUpdate)
public void removeApplication(RMApp app)
protected abstract void removeApplicationStateInternal(RMStateStore.ApplicationState appState)
throws Exception
Exceptionpublic org.apache.hadoop.security.Credentials getCredentialsFromAppAttempt(RMAppAttempt appAttempt)
protected void handleStoreEvent(RMStateStoreEvent event)
protected void notifyStoreOperationFailed(Exception failureCause)
public abstract void deleteStore()
throws Exception
Exceptionpublic void setResourceManager(ResourceManager rm)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||