use of org.datanucleus.samples.metadata.inh2.Container in project pravega by pravega.
the class BookkeeperService method createBookieApp.
private App createBookieApp() {
App app = new App();
app.setId(this.id);
app.setCpus(cpu);
app.setMem(mem);
app.setInstances(instances);
app.setConstraints(setConstraint("hostname", "UNIQUE"));
app.setContainer(new Container());
app.getContainer().setType(CONTAINER_TYPE);
app.getContainer().setDocker(new Docker());
app.getContainer().getDocker().setImage(IMAGE_PATH + "/nautilus/bookkeeper:" + PRAVEGA_VERSION);
Collection<Volume> volumeCollection = new ArrayList<>();
volumeCollection.add(createVolume("/bk", "mnt", "RW"));
// TODO: add persistent volume (see issue https://github.com/pravega/pravega/issues/639)
app.getContainer().setVolumes(volumeCollection);
app.setPorts(Arrays.asList(BK_PORT));
app.setRequirePorts(true);
// set env
String zk = zkUri.getHost() + ":" + ZKSERVICE_ZKPORT;
Map<String, Object> map = new HashMap<>();
map.put("ZK_URL", zk);
map.put("ZK", zk);
map.put("bookiePort", String.valueOf(BK_PORT));
map.put("DLOG_EXTRA_OPTS", "-Xms512m");
app.setEnv(map);
// healthchecks
List<HealthCheck> healthCheckList = new ArrayList<>();
healthCheckList.add(setHealthCheck(300, "TCP", false, 60, 20, 0, BK_PORT));
app.setHealthChecks(healthCheckList);
return app;
}
use of org.datanucleus.samples.metadata.inh2.Container in project pravega by pravega.
the class ZookeeperService method createZookeeperApp.
private App createZookeeperApp() {
App app = new App();
app.setId(this.id);
app.setCpus(cpu);
app.setMem(mem);
app.setInstances(instances);
app.setContainer(new Container());
app.getContainer().setType(CONTAINER_TYPE);
app.getContainer().setDocker(new Docker());
app.getContainer().getDocker().setImage(ZK_IMAGE);
List<HealthCheck> healthCheckList = new ArrayList<>();
final HealthCheck hc = setHealthCheck(300, "TCP", false, 60, 20, 0, ZKSERVICE_ZKPORT);
healthCheckList.add(hc);
app.setHealthChecks(healthCheckList);
return app;
}
use of org.datanucleus.samples.metadata.inh2.Container in project tests by datanucleus.
the class BasicTest method testInh2.
public void testInh2() {
try {
PersistenceManager pm = pmf.getPersistenceManager();
Transaction tx = pm.currentTransaction();
try {
tx.begin();
Base base1 = new Base(1, "b1");
Base base2 = new Base(2, "b2");
Base base3 = new Base(3, "b3");
SubBase group1 = new SubBase(4, "b4", "SB1");
SubBase group2 = new SubBase(5, "b5", "SB2");
Container c = new Container(new Base[] { base1, base2, base3, group1, group2 });
pm.makePersistent(c);
tx.commit();
tx.begin();
Collection col = (Collection) pm.newQuery(SubBase.class).execute();
assertTrue(col.size() == 2);
assertTrue(col.contains(group1));
assertTrue(col.contains(group2));
tx.commit();
} finally {
if (tx.isActive()) {
tx.rollback();
}
pm.close();
}
} finally {
clean(Container.class);
clean(SubBase.class);
clean(Base.class);
}
}
use of org.datanucleus.samples.metadata.inh2.Container in project seldon-core by SeldonIO.
the class PredictorBean method predictorStateFromPredictorSpec.
// TODO
public PredictorState predictorStateFromPredictorSpec(PredictorSpec predictorSpec) {
// Boolean enabled = PredictorSpec.getEnabled();
Boolean enabled = true;
PredictiveUnit rootUnit = predictorSpec.getGraph();
Map<String, Container> containersMap = new HashMap<String, Container>();
for (Container container : predictorSpec.getComponentSpec().getSpec().getContainersList()) {
containersMap.put(container.getName(), container);
}
PredictiveUnitState rootState = new PredictiveUnitState(rootUnit, containersMap);
return new PredictorState(rootUnit.getName(), rootState, enabled);
}
use of org.datanucleus.samples.metadata.inh2.Container in project pravega by pravega.
the class PravegaControllerService method createPravegaControllerApp.
/**
* To configure the controller app.
*
* @return App instance of marathon app
*/
private App createPravegaControllerApp() {
App app = new App();
app.setId(this.id);
app.setCpus(cpu);
app.setMem(mem);
app.setInstances(instances);
app.setConstraints(setConstraint("hostname", "UNIQUE"));
app.setContainer(new Container());
app.getContainer().setType(CONTAINER_TYPE);
app.getContainer().setDocker(new Docker());
app.getContainer().getDocker().setImage(IMAGE_PATH + "/nautilus/pravega:" + PRAVEGA_VERSION);
String zk = zkUri.getHost() + ":" + ZKSERVICE_ZKPORT;
// set port
app.setPortDefinitions(Arrays.asList(createPortDefinition(CONTROLLER_PORT), createPortDefinition(REST_PORT)));
app.setRequirePorts(true);
List<HealthCheck> healthCheckList = new ArrayList<HealthCheck>();
healthCheckList.add(setHealthCheck(300, "TCP", false, 60, 20, 0, CONTROLLER_PORT));
app.setHealthChecks(healthCheckList);
// set env
String controllerSystemProperties = "-Xmx512m" + setSystemProperty("ZK_URL", zk) + setSystemProperty("CONTROLLER_RPC_PUBLISHED_HOST", this.id + ".marathon.mesos") + setSystemProperty("CONTROLLER_RPC_PUBLISHED_PORT", String.valueOf(CONTROLLER_PORT)) + setSystemProperty("CONTROLLER_SERVER_PORT", String.valueOf(CONTROLLER_PORT)) + setSystemProperty("REST_SERVER_PORT", String.valueOf(REST_PORT)) + setSystemProperty("log.level", "DEBUG") + setSystemProperty("log.dir", "$MESOS_SANDBOX/pravegaLogs") + setSystemProperty("curator-default-session-timeout", String.valueOf(10 * 1000)) + setSystemProperty("MAX_LEASE_VALUE", String.valueOf(60 * 1000)) + setSystemProperty("MAX_SCALE_GRACE_PERIOD", String.valueOf(60 * 1000)) + setSystemProperty("RETENTION_FREQUENCY_MINUTES", String.valueOf(2));
Map<String, Object> map = new HashMap<>();
map.put("PRAVEGA_CONTROLLER_OPTS", controllerSystemProperties);
app.setEnv(map);
app.setArgs(Arrays.asList("controller"));
return app;
}
Aggregations