code: public void run() {
      Protos.FrameworkInfo.Builder frameworkInfo = Protos.FrameworkInfo.newBuilder()
          .setName("alluxio").setCheckpoint(true);
  
      if (ServerConfiguration.isSet(PropertyKey.INTEGRATION_MESOS_ROLE)) {
        frameworkInfo.setRole(ServerConfiguration.get(PropertyKey.INTEGRATION_MESOS_ROLE));
      }
      if (ServerConfiguration.isSet(PropertyKey.INTEGRATION_MESOS_USER)) {
        frameworkInfo.setUser(ServerConfiguration.get(PropertyKey.INTEGRATION_MESOS_USER));
      } else {
        // Setting the user to an empty string will prompt Mesos to set it to the current user.
        frameworkInfo.setUser("");
      }
  
      if (ServerConfiguration.isSet(PropertyKey.INTEGRATION_MESOS_PRINCIPAL)) {
        frameworkInfo.setPrincipal(ServerConfiguration.get(PropertyKey.INTEGRATION_MESOS_PRINCIPAL));
      }
  
      // Publish WebUI url to mesos master.
      String masterWebUrl = createMasterWebUrl();
      frameworkInfo.setWebuiUrl(masterWebUrl);
  
      Scheduler scheduler = new AlluxioScheduler(mAlluxioMasterHostname);
  
      Protos.Credential cred = createCredential();
      MesosSchedulerDriver driver;
      if (cred == null) {
        driver = new MesosSchedulerDriver(scheduler, frameworkInfo.build(), mMesosMaster);
      } else {
        driver = new MesosSchedulerDriver(scheduler, frameworkInfo.build(), mMesosMaster, cred);
      }
  
      int status = driver.run() == Protos.Status.DRIVER_STOPPED ? 0 : 1;
  
      System.exit(status);
    }
docs: Runs the mesos framework.