code: public void removeDatanode(DatanodeID nodeID)
      throws IOException {
      writeLock();
      try {
        DatanodeDescriptor nodeInfo = getDatanode(nodeID);
        if (nodeInfo != null) {
          removeDatanode(nodeInfo);
        } else {
          NameNode.stateChangeLog.warn("BLOCK* NameSystem.removeDatanode: "
            + nodeID.getName() + " does not exist");
        }
      } finally {
        writeUnlock();
      }
    }
docs: remove a datanode descriptor
  
  @param nodeID datanode ID