@Override
  public void start() throws AdminException {
    // Wait for each managed entity to start (see bug 32569)
    DistributionLocator[] locs = getDistributionLocators();
    for (final DistributionLocator distributionLocator : locs) {
      distributionLocator.start();
    }
    for (final DistributionLocator loc : locs) {
      try {
        if (!loc.waitToStart(TIMEOUT_MS)) {
          throw new AdminException(
              String.format("%s did not start after %s ms",
                  loc, TIMEOUT_MS));
        }

      } catch (InterruptedException ex) {
        Thread.currentThread().interrupt();
        throw new AdminException(
            String.format("Interrupted while waiting for %s to start.",
                loc),
            ex);
      }
    }

    CacheServer[] servers = getCacheServers();
    for (final CacheServer cacheServer : servers) {
      cacheServer.start();
    }
    for (final CacheServer server : servers) {
      try {
        if (!server.waitToStart(TIMEOUT_MS)) {
          throw new AdminException(
              String.format("%s did not start after %s ms",
                  server, TIMEOUT_MS));
        }

      } catch (InterruptedException ex) {
        Thread.currentThread().interrupt();
        throw new AdminException(
            String.format("Interrupted while waiting for %s to start.",
                server),
            ex);
      }
    }
  }
Starts all managed entities in this system.
geode-core/src/main/java/org/apache/geode/admin/internal/AdminDistributedSystemImpl.java