summaryrefslogtreecommitdiffstats
path: root/node-admin
diff options
context:
space:
mode:
authorHarald Musum <musum@yahoo-inc.com>2017-03-22 15:53:36 +0100
committerHarald Musum <musum@yahoo-inc.com>2017-03-22 15:53:36 +0100
commit32db38b6952edf2c7e6aee9f63fbd8668bfa70fa (patch)
treeee9597bc0fc62b72fedd9d97fadbec067bdf98e3 /node-admin
parentb8fed1a589a4c959691d81816eeb72ce21a9c2e9 (diff)
Propagate and set yinst setting for Athens domain
Diffstat (limited to 'node-admin')
-rwxr-xr-xnode-admin/include/nodectl-instance.sh2
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java1
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/util/Environment.java37
3 files changed, 28 insertions, 12 deletions
diff --git a/node-admin/include/nodectl-instance.sh b/node-admin/include/nodectl-instance.sh
index 41f5b18ffe4..6cae88027d5 100755
--- a/node-admin/include/nodectl-instance.sh
+++ b/node-admin/include/nodectl-instance.sh
@@ -118,6 +118,8 @@ Start() {
echo "Starting crond service"
service crond start
+ echo "Yinst settings"
+ yinst set zpe_policy_updater.domains=$ATHENS_DOMAIN
echo "Starting all yinst packages"
# Start yinst the way it is done when a non-Docker node is booted.
# As this is implemented in yinst now (2017-02-08), this will take care of
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java
index 2d30a56a5dc..90f1174f68e 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java
@@ -152,6 +152,7 @@ public class DockerOperationsImpl implements DockerOperations {
.withNetworkMode(DockerImpl.DOCKER_CUSTOM_MACVLAN_NETWORK_NAME)
.withIpAddress(nodeInetAddress)
.withEnvironment("CONFIG_SERVER_ADDRESS", configServers)
+ .withEnvironment("ATHENS_DOMAIN", environment.getAthensDomain())
.withUlimit("nofile", 262_144, 262_144)
.withUlimit("nproc", 32_768, 409_600)
.withUlimit("core", -1, -1)
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/util/Environment.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/util/Environment.java
index cdf473263cf..cd25cb66ab2 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/util/Environment.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/util/Environment.java
@@ -24,7 +24,7 @@ import java.util.stream.Collectors;
* Various utilities for getting values from node-admin's environment. Immutable.
*
* @author bakksjo
- * @author musum
+ * @author hmusum
*/
public class Environment {
private static final DateFormat filenameFormatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");
@@ -34,6 +34,7 @@ public class Environment {
private static final String ENVIRONMENT = "ENVIRONMENT";
private static final String REGION = "REGION";
private static final String LOGSTASH_NODES = "LOGSTASH_NODES";
+ private static final String ATHENS_DOMAIN = "ATHENS_DOMAIN";
private final Set<String> configServerHosts;
private final String environment;
@@ -42,21 +43,21 @@ public class Environment {
private final InetAddressResolver inetAddressResolver;
private final PathResolver pathResolver;
private final List<String> logstashNodes;
+ private final String athensDomain;
static {
filenameFormatter.setTimeZone(TimeZone.getTimeZone("UTC"));
}
public Environment() {
- this(
- getConfigServerHostsFromEnvironment(),
- getEnvironmentVariable(ENVIRONMENT),
- getEnvironmentVariable(REGION),
- HostName.getLocalhost(),
- new InetAddressResolver(),
- new PathResolver(),
- getLogstashNodesFromEnvironment()
- );
+ this(getConfigServerHostsFromEnvironment(),
+ getEnvironmentVariable(ENVIRONMENT),
+ getEnvironmentVariable(REGION),
+ HostName.getLocalhost(),
+ new InetAddressResolver(),
+ new PathResolver(),
+ getLogstashNodesFromEnvironment(),
+ getEnvironmentVariable(ATHENS_DOMAIN));
}
public Environment(Set<String> configServerHosts,
@@ -65,7 +66,8 @@ public class Environment {
String parentHostHostname,
InetAddressResolver inetAddressResolver,
PathResolver pathResolver,
- List<String> logstashNodes) {
+ List<String> logstashNodes,
+ String athensDomain) {
this.configServerHosts = configServerHosts;
this.environment = environment;
this.region = region;
@@ -73,6 +75,7 @@ public class Environment {
this.inetAddressResolver = inetAddressResolver;
this.pathResolver = pathResolver;
this.logstashNodes = logstashNodes;
+ this.athensDomain = athensDomain;
}
public Set<String> getConfigServerHosts() { return configServerHosts; }
@@ -179,6 +182,9 @@ public class Environment {
return logstashNodes;
}
+ public String getAthensDomain() {
+ return athensDomain;
+ }
public static class Builder {
private Set<String> configServerHosts = Collections.emptySet();
@@ -188,6 +194,7 @@ public class Environment {
private InetAddressResolver inetAddressResolver;
private PathResolver pathResolver;
private List<String> logstashNodes = Collections.emptyList();
+ private String athensDomain;
public Builder configServerHosts(String... hosts) {
configServerHosts = Arrays.stream(hosts).collect(Collectors.toSet());
@@ -224,8 +231,14 @@ public class Environment {
return this;
}
+ public Builder athensDomain(String region) {
+ this.athensDomain = athensDomain;
+ return this;
+ }
+
public Environment build() {
- return new Environment(configServerHosts, environment, region, parentHostHostname, inetAddressResolver, pathResolver, logstashNodes);
+ return new Environment(configServerHosts, environment, region, parentHostHostname, inetAddressResolver,
+ pathResolver, logstashNodes, athensDomain);
}
}
}