You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aurora.apache.org by se...@apache.org on 2016/06/04 17:26:43 UTC
aurora git commit: Change the UI to refer to Mesos Agents instead of
Mesos Slaves.
Repository: aurora
Updated Branches:
refs/heads/master 692b5d147 -> d64e179ed
Change the UI to refer to Mesos Agents instead of Mesos Slaves.
This change also moves the /slaves endpoint to /agents and adds a compatibility redirect.
Bugs closed: AURORA-1449, AURORA-1450
Reviewed at https://reviews.apache.org/r/48216/
Project: http://git-wip-us.apache.org/repos/asf/aurora/repo
Commit: http://git-wip-us.apache.org/repos/asf/aurora/commit/d64e179e
Tree: http://git-wip-us.apache.org/repos/asf/aurora/tree/d64e179e
Diff: http://git-wip-us.apache.org/repos/asf/aurora/diff/d64e179e
Branch: refs/heads/master
Commit: d64e179edb23c4ebcc8052f546b129b1cd04df14
Parents: 692b5d1
Author: Stephan Erb <se...@apache.org>
Authored: Sat Jun 4 19:25:40 2016 +0200
Committer: Stephan Erb <st...@dev.static-void.de>
Committed: Sat Jun 4 19:25:40 2016 +0200
----------------------------------------------------------------------
RELEASE-NOTES.md | 1 +
config/legacy_untested_classes.txt | 10 +-
.../apache/aurora/scheduler/http/Agents.java | 118 ++++++++++++++++++
.../scheduler/http/JettyServerModule.java | 4 +-
.../apache/aurora/scheduler/http/Slaves.java | 121 -------------------
.../mesos/CommandLineDriverSettingsModule.java | 2 +-
.../scheduler/mesos/MesosSchedulerImpl.java | 2 +-
.../scheduler/scheduling/SchedulingModule.java | 2 +-
.../aurora/scheduler/state/TaskAssigner.java | 4 +-
.../scheduler/storage/log/LogStorage.java | 2 +-
src/main/python/apache/aurora/client/base.py | 2 +-
.../executor/bin/thermos_executor_main.py | 4 +-
.../org/apache/aurora/scheduler/http/agents.st | 40 ++++++
.../org/apache/aurora/scheduler/http/slaves.st | 40 ------
.../apache/aurora/scheduler/http/utilization.st | 2 +-
src/main/resources/scheduler/assets/index.html | 2 +-
.../resources/scheduler/assets/js/filters.js | 4 +-
17 files changed, 178 insertions(+), 182 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/RELEASE-NOTES.md
----------------------------------------------------------------------
diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md
index 21a141f..7d47cf6 100644
--- a/RELEASE-NOTES.md
+++ b/RELEASE-NOTES.md
@@ -54,6 +54,7 @@
setting it directly to the appropriate (i.e. `Docker` or `Mesos`) container type.
- Deprecated `numCpus`, `ramMb` and `diskMb` fields in `TaskConfig` and `ResourceAggregate` thrift
structs. Use `set<Resource> resources` to specify task resources or quota values.
+- The endpoint `/slaves` is deprecated. Please use `/agents` instead.
0.13.0
------
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/config/legacy_untested_classes.txt
----------------------------------------------------------------------
diff --git a/config/legacy_untested_classes.txt b/config/legacy_untested_classes.txt
index 10e8b77..1ea2183 100644
--- a/config/legacy_untested_classes.txt
+++ b/config/legacy_untested_classes.txt
@@ -15,6 +15,9 @@ org/apache/aurora/scheduler/base/Conversions$3
org/apache/aurora/scheduler/configuration/executor/ExecutorModule$1
org/apache/aurora/scheduler/cron/quartz/CronSchedulerImpl
org/apache/aurora/scheduler/cron/quartz/CronSchedulerImpl$1
+org/apache/aurora/scheduler/http/Agents
+org/apache/aurora/scheduler/http/Agents$1
+org/apache/aurora/scheduler/http/Agents$Agent
org/apache/aurora/scheduler/discovery/FlaggedZooKeeperConfig
org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule$TestServerService
org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule$LocalZooKeeperClusterProvider
@@ -34,13 +37,6 @@ org/apache/aurora/scheduler/http/Quotas
org/apache/aurora/scheduler/http/Quotas$1
org/apache/aurora/scheduler/http/Quotas$2
org/apache/aurora/scheduler/http/Quotas$ResourceAggregateBean
-org/apache/aurora/scheduler/http/Slaves
-org/apache/aurora/scheduler/http/Slaves$1
-org/apache/aurora/scheduler/http/Slaves$2
-org/apache/aurora/scheduler/http/Slaves$3
-org/apache/aurora/scheduler/http/Slaves$4
-org/apache/aurora/scheduler/http/Slaves$Slave
-org/apache/aurora/scheduler/http/Slaves$Slave$1
org/apache/aurora/scheduler/http/StructDump
org/apache/aurora/scheduler/http/StructDump$1
org/apache/aurora/scheduler/http/StructDump$2
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/java/org/apache/aurora/scheduler/http/Agents.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/http/Agents.java b/src/main/java/org/apache/aurora/scheduler/http/Agents.java
new file mode 100644
index 0000000..88162c5
--- /dev/null
+++ b/src/main/java/org/apache/aurora/scheduler/http/Agents.java
@@ -0,0 +1,118 @@
+/**
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.aurora.scheduler.http;
+
+import javax.inject.Inject;
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
+
+import com.google.common.base.Function;
+import com.google.common.base.Joiner;
+import com.google.common.collect.FluentIterable;
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Ordering;
+
+import org.apache.aurora.gen.MaintenanceMode;
+import org.apache.aurora.scheduler.storage.Storage;
+import org.apache.aurora.scheduler.storage.entities.IAttribute;
+import org.apache.aurora.scheduler.storage.entities.IHostAttributes;
+import org.apache.aurora.scheduler.storage.entities.IServerInfo;
+
+import static java.util.Objects.requireNonNull;
+
+import static org.apache.aurora.common.base.MorePreconditions.checkNotBlank;
+
+/**
+ * HTTP interface to serve as a HUD for the Mesos agents tracked in the scheduler.
+ */
+@Path("/agents")
+public class Agents extends JerseyTemplateServlet {
+ private final String clusterName;
+ private final Storage storage;
+
+ /**
+ * Injected constructor.
+ *
+ * @param serverInfo server meta-data that contains the cluster name
+ * @param storage store to fetch the host attributes from
+ */
+ @Inject
+ public Agents(IServerInfo serverInfo, Storage storage) {
+ super("agents");
+ this.clusterName = checkNotBlank(serverInfo.getClusterName());
+ this.storage = requireNonNull(storage);
+ }
+
+ private Iterable<IHostAttributes> getHostAttributes() {
+ return storage.read(storeProvider -> storeProvider.getAttributeStore().getHostAttributes());
+ }
+
+ /**
+ * Fetches the listing of known agents.
+ *
+ * @return HTTP response.
+ */
+ @GET
+ @Produces(MediaType.TEXT_HTML)
+ public Response get() {
+ return fillTemplate(template -> {
+ template.setAttribute("cluster_name", clusterName);
+
+ template.setAttribute("agents",
+ FluentIterable.from(getHostAttributes()).transform(Agent::new).toList());
+ });
+ }
+
+ private static final Ordering<IAttribute> ATTR_ORDER = Ordering.natural().onResultOf(
+ new Function<IAttribute, String>() {
+ @Override
+ public String apply(IAttribute attr) {
+ return attr .getName();
+ }
+ });
+
+ /**
+ * Template object to represent a agent.
+ */
+ private static class Agent {
+ private final IHostAttributes attributes;
+
+ Agent(IHostAttributes attributes) {
+ this.attributes = attributes;
+ }
+
+ public String getHost() {
+ return attributes.getHost();
+ }
+
+ public String getId() {
+ return attributes.getSlaveId();
+ }
+
+ public MaintenanceMode getMode() {
+ return attributes.getMode();
+ }
+
+ private static final Function<IAttribute, String> ATTR_TO_STRING =
+ attr -> attr.getName() + "=[" + Joiner.on(",").join(attr.getValues()) + "]";
+
+ public String getAttributes() {
+ return Joiner.on(", ").join(
+ Iterables.transform(ATTR_ORDER.sortedCopy(attributes.getAttributes()), ATTR_TO_STRING));
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/java/org/apache/aurora/scheduler/http/JettyServerModule.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/http/JettyServerModule.java b/src/main/java/org/apache/aurora/scheduler/http/JettyServerModule.java
index 4faf53f..1f8dd57 100644
--- a/src/main/java/org/apache/aurora/scheduler/http/JettyServerModule.java
+++ b/src/main/java/org/apache/aurora/scheduler/http/JettyServerModule.java
@@ -203,6 +203,7 @@ public class JettyServerModule extends AbstractModule {
};
private static final Set<String> LEADER_ENDPOINTS = ImmutableSet.of(
+ "agents",
"api",
"cron",
"locks",
@@ -218,6 +219,7 @@ public class JettyServerModule extends AbstractModule {
private static final Multimap<Class<?>, String> JAX_RS_ENDPOINTS =
ImmutableMultimap.<Class<?>, String>builder()
.put(AbortHandler.class, "abortabortabort")
+ .put(Agents.class, "agents")
.put(ContentionPrinter.class, "contention")
.put(Cron.class, "cron")
.put(HealthHandler.class, "health")
@@ -230,7 +232,6 @@ public class JettyServerModule extends AbstractModule {
.put(QuitHandler.class, "quitquitquit")
.put(Quotas.class, "quotas")
.put(Services.class, "services")
- .put(Slaves.class, "slaves")
.put(StructDump.class, "structdump")
.put(ThreadStackPrinter.class, "threads")
.put(TimeSeriesDataSource.class, "graphdata")
@@ -326,6 +327,7 @@ public class JettyServerModule extends AbstractModule {
.put("/graphview(?:/index.html)?", "/assets/graphview/graphview.html")
.put("/graphview/(.*)", "/assets/graphview/$1")
.put("/(?:scheduler|updates)(?:/.*)?", "/assets/scheduler/index.html")
+ .put("/slaves", "/agents")
.build();
private static Handler getRewriteHandler(Handler wrapped) {
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/java/org/apache/aurora/scheduler/http/Slaves.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/http/Slaves.java b/src/main/java/org/apache/aurora/scheduler/http/Slaves.java
deleted file mode 100644
index f63fb7b..0000000
--- a/src/main/java/org/apache/aurora/scheduler/http/Slaves.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/**
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.aurora.scheduler.http;
-
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-
-import com.google.common.base.Function;
-import com.google.common.base.Joiner;
-import com.google.common.collect.FluentIterable;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Ordering;
-
-import org.apache.aurora.gen.MaintenanceMode;
-import org.apache.aurora.scheduler.storage.Storage;
-import org.apache.aurora.scheduler.storage.entities.IAttribute;
-import org.apache.aurora.scheduler.storage.entities.IHostAttributes;
-import org.apache.aurora.scheduler.storage.entities.IServerInfo;
-
-import static java.util.Objects.requireNonNull;
-
-import static org.apache.aurora.common.base.MorePreconditions.checkNotBlank;
-
-/**
- * HTTP interface to serve as a HUD for the mesos slaves tracked in the scheduler.
- */
-@Path("/slaves")
-public class Slaves extends JerseyTemplateServlet {
- private final String clusterName;
- private final Storage storage;
-
- /**
- * Injected constructor.
- *
- * @param serverInfo server meta-data that contains the cluster name
- * @param storage store to fetch the host attributes from
- */
- @Inject
- public Slaves(IServerInfo serverInfo, Storage storage) {
- super("slaves");
- this.clusterName = checkNotBlank(serverInfo.getClusterName());
- this.storage = requireNonNull(storage);
- }
-
- private Iterable<IHostAttributes> getHostAttributes() {
- return storage.read(storeProvider -> storeProvider.getAttributeStore().getHostAttributes());
- }
-
- private static final Function<IHostAttributes, Slave> TO_SLAVE =
- Slave::new;
-
- /**
- * Fetches the listing of known slaves.
- *
- * @return HTTP response.
- */
- @GET
- @Produces(MediaType.TEXT_HTML)
- public Response get() {
- return fillTemplate(template -> {
- template.setAttribute("cluster_name", clusterName);
-
- template.setAttribute("slaves",
- FluentIterable.from(getHostAttributes()).transform(TO_SLAVE).toList());
- });
- }
-
- private static final Ordering<IAttribute> ATTR_ORDER = Ordering.natural().onResultOf(
- new Function<IAttribute, String>() {
- @Override
- public String apply(IAttribute attr) {
- return attr .getName();
- }
- });
-
- /**
- * Template object to represent a slave.
- */
- private static class Slave {
- private final IHostAttributes attributes;
-
- Slave(IHostAttributes attributes) {
- this.attributes = attributes;
- }
-
- public String getHost() {
- return attributes.getHost();
- }
-
- public String getId() {
- return attributes.getSlaveId();
- }
-
- public MaintenanceMode getMode() {
- return attributes.getMode();
- }
-
- private static final Function<IAttribute, String> ATTR_TO_STRING =
- attr -> attr.getName() + "=[" + Joiner.on(",").join(attr.getValues()) + "]";
-
- public String getAttributes() {
- return Joiner.on(", ").join(
- Iterables.transform(ATTR_ORDER.sortedCopy(attributes.getAttributes()), ATTR_TO_STRING));
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/java/org/apache/aurora/scheduler/mesos/CommandLineDriverSettingsModule.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/mesos/CommandLineDriverSettingsModule.java b/src/main/java/org/apache/aurora/scheduler/mesos/CommandLineDriverSettingsModule.java
index 93bc672..e137daa 100644
--- a/src/main/java/org/apache/aurora/scheduler/mesos/CommandLineDriverSettingsModule.java
+++ b/src/main/java/org/apache/aurora/scheduler/mesos/CommandLineDriverSettingsModule.java
@@ -87,7 +87,7 @@ public class CommandLineDriverSettingsModule extends AbstractModule {
+ "\"--no-root_submissions\". If set to anything other than \"root\", the executor "
+ "will ignore the \"role\" setting for jobs since it can't use setuid() anymore. "
+ "This means that all your jobs will run under the specified user and the user has "
- + "to exist on the mesos slaves.")
+ + "to exist on the Mesos agents.")
private static final Arg<String> EXECUTOR_USER = Arg.create("root");
@CmdLine(name = "receive_revocable_resources",
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java b/src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java
index 85ca0ea..433fc90 100644
--- a/src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java
+++ b/src/main/java/org/apache/aurora/scheduler/mesos/MesosSchedulerImpl.java
@@ -139,7 +139,7 @@ public class MesosSchedulerImpl implements Scheduler {
@Override
public void slaveLost(SchedulerDriver schedulerDriver, SlaveID slaveId) {
- log.info("Received notification of lost slave: " + slaveId);
+ log.info("Received notification of lost agent: " + slaveId);
}
@Override
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/java/org/apache/aurora/scheduler/scheduling/SchedulingModule.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/scheduling/SchedulingModule.java b/src/main/java/org/apache/aurora/scheduler/scheduling/SchedulingModule.java
index 577edcb..11e8033 100644
--- a/src/main/java/org/apache/aurora/scheduler/scheduling/SchedulingModule.java
+++ b/src/main/java/org/apache/aurora/scheduler/scheduling/SchedulingModule.java
@@ -78,7 +78,7 @@ public class SchedulingModule extends AbstractModule {
private static final Arg<Amount<Long, Time>> MAX_SCHEDULE_PENALTY =
Arg.create(Amount.of(1L, Time.MINUTES));
- @CmdLine(name = "offer_reservation_duration", help = "Time to reserve a slave's offers while "
+ @CmdLine(name = "offer_reservation_duration", help = "Time to reserve a agent's offers while "
+ "trying to satisfy a task preempting another.")
private static final Arg<Amount<Long, Time>> RESERVATION_DURATION =
Arg.create(Amount.of(3L, Time.MINUTES));
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/java/org/apache/aurora/scheduler/state/TaskAssigner.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/state/TaskAssigner.java b/src/main/java/org/apache/aurora/scheduler/state/TaskAssigner.java
index 5be3981..7f7b435 100644
--- a/src/main/java/org/apache/aurora/scheduler/state/TaskAssigner.java
+++ b/src/main/java/org/apache/aurora/scheduler/state/TaskAssigner.java
@@ -125,7 +125,7 @@ public interface TaskAssigner {
offer.getSlaveId(),
task -> mapAndAssignResources(offer, task));
LOG.info(
- "Offer on slave {} (id {}) is being assigned task for {}.",
+ "Offer on agent {} (id {}) is being assigned task for {}.",
host, offer.getSlaveId().getValue(), taskId);
return taskFactory.createFrom(assigned, offer);
}
@@ -185,7 +185,7 @@ public interface TaskAssigner {
offerManager.banOffer(offer.getOffer().getId(), groupKey);
}
- LOG.debug("Slave " + offer.getOffer().getHostname()
+ LOG.debug("Agent " + offer.getOffer().getHostname()
+ " vetoed task " + taskId + ": " + vetoes);
}
}
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java b/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java
index 1ddc117..c981a05 100644
--- a/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java
+++ b/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java
@@ -360,7 +360,7 @@ public class LogStorage implements NonVolatileStorage, DistributedSnapshotStore
if (attributes.isSetSlaveId()) {
writeBehindAttributeStore.saveHostAttributes(IHostAttributes.build(attributes));
} else {
- LOG.info("Dropping host attributes with no slave ID: " + attributes);
+ LOG.info("Dropping host attributes with no agent ID: " + attributes);
}
})
.put(
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/python/apache/aurora/client/base.py
----------------------------------------------------------------------
diff --git a/src/main/python/apache/aurora/client/base.py b/src/main/python/apache/aurora/client/base.py
index 901335b..73953b6 100644
--- a/src/main/python/apache/aurora/client/base.py
+++ b/src/main/python/apache/aurora/client/base.py
@@ -122,7 +122,7 @@ def group_hosts(hostnames, grouping_function=DEFAULT_GROUPING):
rack of hosts at a time.
:param hostnames: Hostnames to break into groups
- :type hostnames: list of host names, must match the host names that slaves are registered with
+ :type hostnames: list of host names, must match the host names that agents are registered with
:param grouping_function: Key within GROUPING_FUNCTIONS to partition hosts into desired batches
:type grouping_function: string
:rtype: dictionary of batches
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/python/apache/aurora/executor/bin/thermos_executor_main.py
----------------------------------------------------------------------
diff --git a/src/main/python/apache/aurora/executor/bin/thermos_executor_main.py b/src/main/python/apache/aurora/executor/bin/thermos_executor_main.py
index b2cc78d..203fc47 100644
--- a/src/main/python/apache/aurora/executor/bin/thermos_executor_main.py
+++ b/src/main/python/apache/aurora/executor/bin/thermos_executor_main.py
@@ -15,7 +15,7 @@
"""Command-line entry point to the Thermos Executor
This module wraps the Thermos Executor into an executable suitable for launching by a Mesos
-slave.
+agent.
"""
@@ -88,7 +88,7 @@ app.add_option(
type=str,
default=None,
help='Set hostname to be announced. By default it is'
- 'the --hostname argument passed into the mesos slave'
+ 'the --hostname argument passed into the Mesos agent.'
)
app.add_option(
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/resources/org/apache/aurora/scheduler/http/agents.st
----------------------------------------------------------------------
diff --git a/src/main/resources/org/apache/aurora/scheduler/http/agents.st b/src/main/resources/org/apache/aurora/scheduler/http/agents.st
new file mode 100644
index 0000000..2f882ec
--- /dev/null
+++ b/src/main/resources/org/apache/aurora/scheduler/http/agents.st
@@ -0,0 +1,40 @@
+<!--
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+ <html>
+ <head>
+ <title>Aurora $cluster_name$ agents</title>
+ <link href="/assets/bower_components/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet" />
+ </head>
+ <body>
+ <h2>Agent Hosts</h2>
+ <table class="table table-striped table-condensed table-hover">
+ <thead>
+ <th>Host
+ <th>Agent ID
+ <th>Maintenance mode
+ <th>Attributes
+ </thead>
+ <tbody>
+ $agents:{ agent |
+ <tr>
+ <td><a href="http://$agent.host$:1338">$agent.host$</a>
+ <td>$agent.id$
+ <td>$agent.mode$
+ <td>$agent.attributes$
+ </tr>
+ }$
+ </tbody>
+ </table>
+ </body>
+</html>
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/resources/org/apache/aurora/scheduler/http/slaves.st
----------------------------------------------------------------------
diff --git a/src/main/resources/org/apache/aurora/scheduler/http/slaves.st b/src/main/resources/org/apache/aurora/scheduler/http/slaves.st
deleted file mode 100644
index 009e5af..0000000
--- a/src/main/resources/org/apache/aurora/scheduler/http/slaves.st
+++ /dev/null
@@ -1,40 +0,0 @@
-<!--
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
- <html>
- <head>
- <title>Aurora $cluster_name$ slaves</title>
- <link href="/assets/bower_components/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet" />
- </head>
- <body>
- <h2>Slave Hosts</h2>
- <table class="table table-striped table-condensed table-hover">
- <thead>
- <th>Host
- <th>Slave ID
- <th>Maintenance mode
- <th>Attributes
- </thead>
- <tbody>
- $slaves:{ slave |
- <tr>
- <td><a href="http://$slave.host$:1338">$slave.host$</a>
- <td>$slave.id$
- <td>$slave.mode$
- <td>$slave.attributes$
- </tr>
- }$
- </tbody>
- </table>
- </body>
-</html>
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/resources/org/apache/aurora/scheduler/http/utilization.st
----------------------------------------------------------------------
diff --git a/src/main/resources/org/apache/aurora/scheduler/http/utilization.st b/src/main/resources/org/apache/aurora/scheduler/http/utilization.st
index ae497a7..acb8f46 100644
--- a/src/main/resources/org/apache/aurora/scheduler/http/utilization.st
+++ b/src/main/resources/org/apache/aurora/scheduler/http/utilization.st
@@ -13,7 +13,7 @@
-->
<html>
<head>
- <title>Aurora $cluster_name$ slaves</title>
+ <title>Aurora $cluster_name$ utilization</title>
<link href="/assets/bower_components/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet" />
</head>
<body>
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/resources/scheduler/assets/index.html
----------------------------------------------------------------------
diff --git a/src/main/resources/scheduler/assets/index.html b/src/main/resources/scheduler/assets/index.html
index 5679b19..773536f 100644
--- a/src/main/resources/scheduler/assets/index.html
+++ b/src/main/resources/scheduler/assets/index.html
@@ -58,12 +58,12 @@
<h4>Cluster Overview</h4>
<ul class="list-unstyled group-summary" >
+ <li><a href='/agents'>/agents</a></li>
<li><a href='/cron'>/cron</a></li>
<li><a href='/maintenance'>/maintenance</a></li>
<li><a href='/offers'>/offers</a></li>
<li><a href='/pendingtasks'>/pendingtasks</a></li>
<li><a href='/quotas'>/quotas</a></li>
- <li><a href='/slaves'>/slaves</a></li>
<li><a href='/utilization'>/utilization</a></li>
</ul>
http://git-wip-us.apache.org/repos/asf/aurora/blob/d64e179e/src/main/resources/scheduler/assets/js/filters.js
----------------------------------------------------------------------
diff --git a/src/main/resources/scheduler/assets/js/filters.js b/src/main/resources/scheduler/assets/js/filters.js
index ec35d81..d372269 100644
--- a/src/main/resources/scheduler/assets/js/filters.js
+++ b/src/main/resources/scheduler/assets/js/filters.js
@@ -24,7 +24,7 @@
'frequently.',
ASSIGNED: 'The scheduler has selected a machine to run the task and is instructing the ' +
- 'slave to launch it.',
+ 'agent to launch it.',
STARTING: 'The executor is preparing to launch the task.',
RUNNING: 'The user process(es) are running.',
@@ -33,7 +33,7 @@
KILLED: 'A user or cron invocation terminated the task.',
PREEMPTING: 'This task is being killed to make resources available for a production task.',
KILLING: 'A user request or cron invocation has requested the task be killed.',
- LOST: 'The task cannot be accounted for, usually a result of slave process or machine ' +
+ LOST: 'The task cannot be accounted for, usually a result of agent process or machine ' +
'failure.',
DRAINING: 'The task is being restarted since the host is undergoing scheduled maintenance.'
};