diff options
Diffstat (limited to 'service-monitor')
10 files changed, 33 insertions, 45 deletions
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerApplication.java index b57ddc6bc92..121b7e358e8 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerApplication.java @@ -2,9 +2,9 @@ package com.yahoo.vespa.service.duper; import com.yahoo.config.provision.ClusterSpec; -import com.yahoo.config.provision.NodeType; import com.yahoo.config.provision.Zone; import com.yahoo.vespa.applicationmodel.ApplicationInstanceId; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; import com.yahoo.vespa.applicationmodel.ServiceType; /** @@ -15,7 +15,7 @@ import com.yahoo.vespa.applicationmodel.ServiceType; public class ConfigServerApplication extends ConfigServerLikeApplication { public ConfigServerApplication() { - super("zone-config-servers", NodeType.config, ClusterSpec.Type.admin, ServiceType.CONFIG_SERVER); + super(InfrastructureApplication.CONFIG_SERVER, ClusterSpec.Type.admin, ServiceType.CONFIG_SERVER); } /** diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerHostApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerHostApplication.java index 909b86886b8..b970c3c6b77 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerHostApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerHostApplication.java @@ -1,12 +1,12 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.service.duper; -import com.yahoo.config.provision.NodeType; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; public class ConfigServerHostApplication extends HostAdminApplication { public ConfigServerHostApplication() { - super("configserver-host", NodeType.confighost); + super(InfrastructureApplication.CONFIG_SERVER_HOST); } } diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerLikeApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerLikeApplication.java index 38808b66435..cc3aeddff01 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerLikeApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ConfigServerLikeApplication.java @@ -3,7 +3,7 @@ package com.yahoo.vespa.service.duper; import com.yahoo.component.Version; import com.yahoo.config.provision.ClusterSpec; -import com.yahoo.config.provision.NodeType; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; import com.yahoo.vespa.applicationmodel.ServiceType; /** @@ -12,8 +12,8 @@ import com.yahoo.vespa.applicationmodel.ServiceType; * @author hakonhall */ public abstract class ConfigServerLikeApplication extends InfraApplication { - protected ConfigServerLikeApplication(String applicationName, NodeType nodeType, ClusterSpec.Type clusterType, ServiceType serviceType) { - super(applicationName, nodeType, clusterType, ClusterSpec.Id.from(applicationName), serviceType, 19071); + protected ConfigServerLikeApplication(InfrastructureApplication application, ClusterSpec.Type clusterType, ServiceType serviceType) { + super(application, clusterType, ClusterSpec.Id.from(application.applicationName()), serviceType, 19071); } @Override diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ControllerApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ControllerApplication.java index 6c38149f662..c46b040d443 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ControllerApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ControllerApplication.java @@ -2,7 +2,7 @@ package com.yahoo.vespa.service.duper; import com.yahoo.config.provision.ClusterSpec; -import com.yahoo.config.provision.NodeType; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; import com.yahoo.vespa.applicationmodel.ServiceType; /** @@ -13,7 +13,7 @@ import com.yahoo.vespa.applicationmodel.ServiceType; public class ControllerApplication extends ConfigServerLikeApplication { public ControllerApplication() { - super("controller", NodeType.controller, ClusterSpec.Type.container, ServiceType.CONTROLLER); + super(InfrastructureApplication.CONTROLLER, ClusterSpec.Type.container, ServiceType.CONTROLLER); } } diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ControllerHostApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ControllerHostApplication.java index eaf7537e45c..7e3c8c03cb7 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ControllerHostApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ControllerHostApplication.java @@ -1,13 +1,13 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.service.duper; -import com.yahoo.config.provision.NodeType; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; /** * @author mpolden */ public class ControllerHostApplication extends HostAdminApplication { public ControllerHostApplication() { - super("controller-host", NodeType.controllerhost); + super(InfrastructureApplication.CONTROLLER_HOST); } } diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java index 65a679d2d33..e522b736290 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java @@ -1,13 +1,13 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.service.duper; -import com.yahoo.config.provision.NodeType; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; /** * @author mortent */ public class DevHostApplication extends HostAdminApplication { public DevHostApplication() { - super("dev-host", NodeType.devhost); + super(InfrastructureApplication.DEV_HOST); } } diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/HostAdminApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/HostAdminApplication.java index 0b90350b7be..70a8e5e7443 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/HostAdminApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/HostAdminApplication.java @@ -2,7 +2,7 @@ package com.yahoo.vespa.service.duper; import com.yahoo.config.provision.ClusterSpec; -import com.yahoo.config.provision.NodeType; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; import com.yahoo.vespa.applicationmodel.ServiceType; /** @@ -12,11 +12,10 @@ public abstract class HostAdminApplication extends InfraApplication { public static final int HOST_ADMIN_HEALT_PORT = 8080; - protected HostAdminApplication(String applicationName, NodeType nodeType) { - super(applicationName, - nodeType, + protected HostAdminApplication(InfrastructureApplication application) { + super(application, ClusterSpec.Type.container, - ClusterSpec.Id.from(applicationName), + ClusterSpec.Id.from(application.applicationName()), ServiceType.HOST_ADMIN, HOST_ADMIN_HEALT_PORT); } diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/InfraApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/InfraApplication.java index 8a62db87e7c..eccffa27930 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/InfraApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/InfraApplication.java @@ -10,12 +10,11 @@ import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.Capacity; import com.yahoo.config.provision.ClusterSpec; import com.yahoo.config.provision.HostName; -import com.yahoo.config.provision.NodeType; -import com.yahoo.config.provision.TenantName; import com.yahoo.config.provision.Zone; import com.yahoo.vespa.applicationmodel.ApplicationInstanceId; import com.yahoo.vespa.applicationmodel.ClusterId; import com.yahoo.vespa.applicationmodel.ConfigId; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; import com.yahoo.vespa.applicationmodel.ServiceType; import com.yahoo.vespa.applicationmodel.TenantId; import com.yahoo.vespa.service.health.StateV1HealthModel; @@ -35,30 +34,20 @@ import java.util.stream.Collectors; */ public abstract class InfraApplication implements InfraApplicationApi { - static final TenantName TENANT_NAME = TenantName.from("hosted-vespa"); - - private final ApplicationId applicationId; + private final InfrastructureApplication application; private final Capacity capacity; private final ClusterSpec.Type clusterSpecType; private final ClusterSpec.Id clusterSpecId; private final ServiceType serviceType; private final int healthPort; - public static ApplicationId createHostedVespaApplicationId(String applicationName) { - return new ApplicationId.Builder() - .tenant(TENANT_NAME) - .applicationName(applicationName) - .build(); - } - - protected InfraApplication(String applicationName, - NodeType nodeType, + protected InfraApplication(InfrastructureApplication application, ClusterSpec.Type clusterSpecType, ClusterSpec.Id clusterSpecId, ServiceType serviceType, int healthPort) { - this.applicationId = createHostedVespaApplicationId(applicationName); - this.capacity = Capacity.fromRequiredNodeType(nodeType); + this.application = application; + this.capacity = Capacity.fromRequiredNodeType(application.nodeType()); this.clusterSpecType = clusterSpecType; this.clusterSpecId = clusterSpecId; this.serviceType = serviceType; @@ -67,7 +56,7 @@ public abstract class InfraApplication implements InfraApplicationApi { @Override public ApplicationId getApplicationId() { - return applicationId; + return application.id(); } @Override @@ -97,16 +86,16 @@ public abstract class InfraApplication implements InfraApplicationApi { } public ApplicationInstanceId getApplicationInstanceId(Zone zone) { - return ApplicationInstanceGenerator.toApplicationInstanceId(applicationId, zone); + return ApplicationInstanceGenerator.toApplicationInstanceId(application.id(), zone); } public TenantId getTenantId() { - return new TenantId(applicationId.tenant().value()); + return new TenantId(application.id().tenant().value()); } public ApplicationInfo makeApplicationInfo(List<HostName> hostnames) { List<HostInfo> hostInfos = hostnames.stream().map(this::makeHostInfo).collect(Collectors.toList()); - return new ApplicationInfo(applicationId, 0, new HostsModel(hostInfos)); + return new ApplicationInfo(application.id(), 0, new HostsModel(hostInfos)); } private HostInfo makeHostInfo(HostName hostname) { @@ -147,7 +136,7 @@ public abstract class InfraApplication implements InfraApplicationApi { if (o == null || getClass() != o.getClass()) return false; InfraApplication that = (InfraApplication) o; return healthPort == that.healthPort && - Objects.equals(applicationId, that.applicationId) && + Objects.equals(application, that.application) && Objects.equals(capacity, that.capacity) && clusterSpecType == that.clusterSpecType && Objects.equals(clusterSpecId, that.clusterSpecId) && @@ -156,13 +145,13 @@ public abstract class InfraApplication implements InfraApplicationApi { @Override public int hashCode() { - return Objects.hash(applicationId, capacity, clusterSpecType, clusterSpecId, serviceType, healthPort); + return Objects.hash(application, capacity, clusterSpecType, clusterSpecId, serviceType, healthPort); } @Override public String toString() { return "InfraApplication{" + - "applicationId=" + applicationId + + "application=" + application + ", capacity=" + capacity + ", clusterSpecType=" + clusterSpecType + ", clusterSpecId=" + clusterSpecId + diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ProxyHostApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ProxyHostApplication.java index f65dfd5577c..1819548c6cc 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ProxyHostApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/ProxyHostApplication.java @@ -1,10 +1,10 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.service.duper; -import com.yahoo.config.provision.NodeType; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; public class ProxyHostApplication extends HostAdminApplication { public ProxyHostApplication() { - super("proxy-host", NodeType.proxyhost); + super(InfrastructureApplication.PROXY_HOST); } } diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/TenantHostApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/TenantHostApplication.java index 7e834a15672..312dd5b64a7 100644 --- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/TenantHostApplication.java +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/TenantHostApplication.java @@ -1,10 +1,10 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.service.duper; -import com.yahoo.config.provision.NodeType; +import com.yahoo.vespa.applicationmodel.InfrastructureApplication; public class TenantHostApplication extends HostAdminApplication { public TenantHostApplication() { - super("tenant-host", NodeType.host); + super(InfrastructureApplication.TENANT_HOST); } } |