diff --git a/core/api/src/main/java/org/onlab/onos/cluster/MastershipStore.java b/core/api/src/main/java/org/onlab/onos/cluster/MastershipStore.java
index 67eeff5..728e77d 100644
--- a/core/api/src/main/java/org/onlab/onos/cluster/MastershipStore.java
+++ b/core/api/src/main/java/org/onlab/onos/cluster/MastershipStore.java
@@ -6,11 +6,12 @@
 import org.onlab.onos.net.MastershipRole;
 
 /**
- * Manages inventory of mastership roles for devices, across controller instances.
+ * Manages inventory of mastership roles for devices, across controller
+ * instances; not intended for direct use.
  */
 public interface MastershipStore {
 
-    // three things to map: InstanceId, DeviceId, MastershipRole
+    // three things to map: NodeId, DeviceId, MastershipRole
 
     /**
      * Sets a device's role for a specified controller instance.
@@ -20,7 +21,7 @@
      * @param role     new role
      * @return a mastership event
      */
-    MastershipEvent setRole(InstanceId instance, DeviceId deviceId,
+    MastershipEvent setRole(NodeId instance, DeviceId deviceId,
                             MastershipRole role);
 
     /**
@@ -31,7 +32,7 @@
      * @param role     new role
      * @return a mastership event
      */
-    MastershipEvent addOrUpdateDevice(InstanceId instance, DeviceId deviceId,
+    MastershipEvent addOrUpdateDevice(NodeId instance, DeviceId deviceId,
                                       MastershipRole role);
 
     /**
@@ -40,22 +41,22 @@
      * @param deviceId the device identifier
      * @return the instance identifier of the master
      */
-    InstanceId getMaster(DeviceId deviceId);
+    NodeId getMaster(DeviceId deviceId);
 
     /**
      * Returns the devices that a controller instance is master of.
      *
-     * @param instanceId the instance identifier
+     * @param nodeId the instance identifier
      * @return a set of device identifiers
      */
-    Set<DeviceId> getDevices(InstanceId instanceId);
+    Set<DeviceId> getDevices(NodeId nodeId);
 
     /**
      * Returns the role of a device for a specific controller instance.
      *
-     * @param instanceId the instance identifier
+     * @param nodeId the instance identifier
      * @param deviceId   the device identifiers
      * @return the role
      */
-    MastershipRole getRole(InstanceId instanceId, DeviceId deviceId);
+    MastershipRole getRole(NodeId nodeId, DeviceId deviceId);
 }
