diff --git a/components/common-go/baseserver/server.go b/components/common-go/baseserver/server.go index a8cd4209f9db0e..598f0fd96dce56 100644 --- a/components/common-go/baseserver/server.go +++ b/components/common-go/baseserver/server.go @@ -343,6 +343,8 @@ const ( BuiltinDebugPort = 6060 BuiltinMetricsPort = 9500 BuiltinHealthPort = 9501 + + BuiltinMetricsPortName = "metrics" ) type builtinServices struct { diff --git a/install/installer/pkg/common/common.go b/install/installer/pkg/common/common.go index 9fa34801d7baa8..5ed0c8c8b85160 100644 --- a/install/installer/pkg/common/common.go +++ b/install/installer/pkg/common/common.go @@ -334,7 +334,7 @@ func KubeRBACProxyContainerWithConfig(ctx *RenderContext) *corev1.Container { fmt.Sprintf("--upstream=http://127.0.0.1:%d/", baseserver.BuiltinMetricsPort), }, Ports: []corev1.ContainerPort{ - {Name: "metrics", ContainerPort: baseserver.BuiltinMetricsPort}, + {Name: baseserver.BuiltinMetricsPortName, ContainerPort: baseserver.BuiltinMetricsPort}, }, Env: []corev1.EnvVar{ { @@ -450,7 +450,7 @@ var ( Ports: []networkingv1.NetworkPolicyPort{ { Protocol: TCPProtocol, - Port: &intstr.IntOrString{IntVal: 9500}, + Port: &intstr.IntOrString{IntVal: baseserver.BuiltinMetricsPort}, }, }, From: []networkingv1.NetworkPolicyPeer{ @@ -604,3 +604,12 @@ func ThirdPartyContainerRepo(configRegistry string, thirdPartyRegistry string) s func ToJSONString(input interface{}) ([]byte, error) { return json.MarshalIndent(input, "", " ") } + +func NodeNameEnv(context *RenderContext) []corev1.EnvVar { + return []corev1.EnvVar{{ + Name: "NODENAME", + ValueFrom: &corev1.EnvVarSource{ + FieldRef: &corev1.ObjectFieldSelector{FieldPath: "spec.nodeName"}, + }, + }} +} diff --git a/install/installer/pkg/common/common_test.go b/install/installer/pkg/common/common_test.go index b031a0450e1ef5..ad554aa9b49115 100644 --- a/install/installer/pkg/common/common_test.go +++ b/install/installer/pkg/common/common_test.go @@ -7,11 +7,13 @@ import ( "fmt" "testing" + "github.com/stretchr/testify/require" + corev1 "k8s.io/api/core/v1" + + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/common" "github.com/gitpod-io/gitpod/installer/pkg/config/v1" "github.com/gitpod-io/gitpod/installer/pkg/config/versions" - "github.com/stretchr/testify/require" - corev1 "k8s.io/api/core/v1" ) func TestKubeRBACProxyContainer_DefaultPorts(t *testing.T) { @@ -21,11 +23,11 @@ func TestKubeRBACProxyContainer_DefaultPorts(t *testing.T) { container := common.KubeRBACProxyContainer(ctx) require.Equal(t, []string{ "--logtostderr", - "--insecure-listen-address=[$(IP)]:9500", - "--upstream=http://127.0.0.1:9500/", + fmt.Sprintf("--insecure-listen-address=[$(IP)]:%v", baseserver.BuiltinMetricsPort), + fmt.Sprintf("--upstream=http://%v/", common.LocalhostPrometheusAddr()), }, container.Args) require.Equal(t, []corev1.ContainerPort{ - {Name: "metrics", ContainerPort: 9500}, + {Name: baseserver.BuiltinMetricsPortName, ContainerPort: baseserver.BuiltinMetricsPort}, }, container.Ports) } @@ -33,14 +35,13 @@ func TestKubeRBACProxyContainerWithConfig(t *testing.T) { ctx, err := common.NewRenderContext(config.Config{}, versions.Manifest{}, "test_namespace") require.NoError(t, err) - listenPort := int32(9500) container := common.KubeRBACProxyContainerWithConfig(ctx) require.Equal(t, []string{ "--logtostderr", - fmt.Sprintf("--insecure-listen-address=[$(IP)]:%d", listenPort), - "--upstream=http://127.0.0.1:9500/", + fmt.Sprintf("--insecure-listen-address=[$(IP)]:%d", baseserver.BuiltinMetricsPort), + fmt.Sprintf("--upstream=http://%v/", common.LocalhostPrometheusAddr()), }, container.Args) require.Equal(t, []corev1.ContainerPort{ - {Name: "metrics", ContainerPort: listenPort}, + {Name: baseserver.BuiltinMetricsPortName, ContainerPort: baseserver.BuiltinMetricsPort}, }, container.Ports) } diff --git a/install/installer/pkg/common/constants.go b/install/installer/pkg/common/constants.go index 5b2cf7e5d4d037..e70bae6d0d7d5f 100644 --- a/install/installer/pkg/common/constants.go +++ b/install/installer/pkg/common/constants.go @@ -45,7 +45,6 @@ const ( WSProxyComponent = "ws-proxy" ImageBuilderComponent = "image-builder-mk3" ImageBuilderRPCPort = 8080 - DebugPort = 6060 DebugNodePort = 9229 AnnotationConfigChecksum = "gitpod.io/checksum_config" diff --git a/install/installer/pkg/common/net.go b/install/installer/pkg/common/net.go new file mode 100644 index 00000000000000..d818f28ad634cc --- /dev/null +++ b/install/installer/pkg/common/net.go @@ -0,0 +1,27 @@ +// Copyright (c) 2022 Gitpod GmbH. All rights reserved. +// Licensed under the GNU Affero General Public License (AGPL). +// See License-AGPL.txt in the project root for license information. + +package common + +import ( + "fmt" + + "github.com/gitpod-io/gitpod/common-go/baseserver" +) + +const ( + localhost = "127.0.0.1" +) + +func LocalhostAddressFromPort(port int) string { + return fmt.Sprintf("%v:%v", localhost, port) +} + +func LocalhostPrometheusAddr() string { + return LocalhostAddressFromPort(baseserver.BuiltinMetricsPort) +} + +func LocalhostPprofAddr() string { + return LocalhostAddressFromPort(baseserver.BuiltinDebugPort) +} diff --git a/install/installer/pkg/components/agent-smith/configmap.go b/install/installer/pkg/components/agent-smith/configmap.go index 3f4665b9fe6700..57ecd2b62d5553 100644 --- a/install/installer/pkg/components/agent-smith/configmap.go +++ b/install/installer/pkg/components/agent-smith/configmap.go @@ -8,6 +8,7 @@ import ( "fmt" "github.com/gitpod-io/gitpod/agent-smith/pkg/config" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/common" "github.com/gitpod-io/gitpod/installer/pkg/config/v1/experimental" @@ -18,8 +19,8 @@ import ( func configmap(ctx *common.RenderContext) ([]runtime.Object, error) { ascfg := config.ServiceConfig{ - PProfAddr: fmt.Sprintf("localhost:%d", PProfPort), - PrometheusAddr: fmt.Sprintf("localhost:%d", PrometheusPort), + PProfAddr: common.LocalhostAddressFromPort(baseserver.BuiltinDebugPort), + PrometheusAddr: common.LocalhostPrometheusAddr(), Namespace: ctx.Namespace, Config: config.Config{ Kubernetes: config.Kubernetes{Enabled: true}, diff --git a/install/installer/pkg/components/agent-smith/constants.go b/install/installer/pkg/components/agent-smith/constants.go index 9c1dde7f9cb95f..3248bf944f30e0 100644 --- a/install/installer/pkg/components/agent-smith/constants.go +++ b/install/installer/pkg/components/agent-smith/constants.go @@ -5,7 +5,5 @@ package agentsmith const ( - Component = "agent-smith" - PrometheusPort = 9500 - PProfPort = 6060 + Component = "agent-smith" ) diff --git a/install/installer/pkg/components/agent-smith/daemonset.go b/install/installer/pkg/components/agent-smith/daemonset.go index 88c50b4062a7de..fc69c91ffb3b60 100644 --- a/install/installer/pkg/components/agent-smith/daemonset.go +++ b/install/installer/pkg/components/agent-smith/daemonset.go @@ -70,12 +70,7 @@ func daemonset(ctx *common.RenderContext) ([]runtime.Object, error) { Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv( common.DefaultEnv(&ctx.Config), common.WorkspaceTracingEnv(ctx), - []corev1.EnvVar{{ - Name: "NODENAME", - ValueFrom: &corev1.EnvVarSource{ - FieldRef: &corev1.ObjectFieldSelector{FieldPath: "spec.nodeName"}, - }, - }}, + common.NodeNameEnv(ctx), )), SecurityContext: &corev1.SecurityContext{ Privileged: pointer.Bool(true), diff --git a/install/installer/pkg/components/blobserve/configmap.go b/install/installer/pkg/components/blobserve/configmap.go index 8829e5d8e5af9c..4070eb711f4e08 100644 --- a/install/installer/pkg/components/blobserve/configmap.go +++ b/install/installer/pkg/components/blobserve/configmap.go @@ -10,6 +10,7 @@ import ( "github.com/gitpod-io/gitpod/blobserve/pkg/blobserve" "github.com/gitpod-io/gitpod/blobserve/pkg/config" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/common-go/util" "github.com/gitpod-io/gitpod/installer/pkg/common" "github.com/gitpod-io/gitpod/installer/pkg/components/workspace" @@ -99,8 +100,8 @@ func configmap(ctx *common.RenderContext) ([]runtime.Object, error) { }, }, AuthCfg: "/mnt/pull-secret.json", - PProfAddr: ":6060", - PrometheusAddr: "127.0.0.1:9500", + PProfAddr: common.LocalhostAddressFromPort(baseserver.BuiltinDebugPort), + PrometheusAddr: common.LocalhostPrometheusAddr(), ReadinessProbeAddr: fmt.Sprintf(":%v", ReadinessPort), } diff --git a/install/installer/pkg/components/content-service/constants.go b/install/installer/pkg/components/content-service/constants.go index 86ea6325eec05d..fe45704886cb0e 100644 --- a/install/installer/pkg/components/content-service/constants.go +++ b/install/installer/pkg/components/content-service/constants.go @@ -4,12 +4,8 @@ package content_service -import "github.com/gitpod-io/gitpod/common-go/baseserver" - const ( Component = "content-service" RPCPort = 8080 RPCServiceName = "rpc" - PrometheusPort = baseserver.BuiltinMetricsPort - PrometheusName = "metrics" ) diff --git a/install/installer/pkg/components/content-service/deployment.go b/install/installer/pkg/components/content-service/deployment.go index bdb68d01677f20..9547712ae0b9f8 100644 --- a/install/installer/pkg/components/content-service/deployment.go +++ b/install/installer/pkg/components/content-service/deployment.go @@ -5,6 +5,7 @@ package content_service import ( + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/cluster" "github.com/gitpod-io/gitpod/installer/pkg/common" @@ -58,8 +59,8 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) { Name: RPCServiceName, ContainerPort: RPCPort, }, { - ContainerPort: PrometheusPort, - Name: PrometheusName, + ContainerPort: baseserver.BuiltinMetricsPort, + Name: baseserver.BuiltinMetricsPortName, }}, SecurityContext: &corev1.SecurityContext{ Privileged: pointer.Bool(false), diff --git a/install/installer/pkg/components/content-service/objects.go b/install/installer/pkg/components/content-service/objects.go index ae38b5ecbc4fec..403d180a368ac5 100644 --- a/install/installer/pkg/components/content-service/objects.go +++ b/install/installer/pkg/components/content-service/objects.go @@ -4,7 +4,10 @@ package content_service -import "github.com/gitpod-io/gitpod/installer/pkg/common" +import ( + "github.com/gitpod-io/gitpod/common-go/baseserver" + "github.com/gitpod-io/gitpod/installer/pkg/common" +) var Objects = common.CompositeRenderFunc( configmap, @@ -18,9 +21,9 @@ var Objects = common.CompositeRenderFunc( ServicePort: RPCPort, }, { - Name: PrometheusName, - ContainerPort: PrometheusPort, - ServicePort: PrometheusPort, + Name: baseserver.BuiltinMetricsPortName, + ContainerPort: baseserver.BuiltinMetricsPort, + ServicePort: baseserver.BuiltinMetricsPort, }, }), common.DefaultServiceAccount(Component), diff --git a/install/installer/pkg/components/image-builder-mk3/configmap.go b/install/installer/pkg/components/image-builder-mk3/configmap.go index 4a9bce8211b7c2..d6300478c0af55 100644 --- a/install/installer/pkg/components/image-builder-mk3/configmap.go +++ b/install/installer/pkg/components/image-builder-mk3/configmap.go @@ -65,10 +65,10 @@ func configmap(ctx *common.RenderContext) ([]runtime.Object, error) { Addr: fmt.Sprintf(":%d", RPCPort), }, Prometheus: config.Service{ - Addr: fmt.Sprintf("127.0.0.1:%d", PrometheusPort), + Addr: common.LocalhostPrometheusAddr(), }, PProf: config.PProf{ - Addr: fmt.Sprintf(":%d", PProfPort), + Addr: common.LocalhostPprofAddr(), }, } diff --git a/install/installer/pkg/components/image-builder-mk3/constants.go b/install/installer/pkg/components/image-builder-mk3/constants.go index a1af0f08f3e59c..98a872b8c8de00 100644 --- a/install/installer/pkg/components/image-builder-mk3/constants.go +++ b/install/installer/pkg/components/image-builder-mk3/constants.go @@ -12,6 +12,4 @@ const ( Component = common.ImageBuilderComponent RPCPort = common.ImageBuilderRPCPort RPCPortName = "service" - PProfPort = 6060 - PrometheusPort = 9500 ) diff --git a/install/installer/pkg/components/openvsx-proxy/configmap.go b/install/installer/pkg/components/openvsx-proxy/configmap.go index ec0e2861b749fe..301c23ac9cbd25 100644 --- a/install/installer/pkg/components/openvsx-proxy/configmap.go +++ b/install/installer/pkg/components/openvsx-proxy/configmap.go @@ -25,7 +25,7 @@ func configmap(ctx *common.RenderContext) ([]runtime.Object, error) { URLLocal: fmt.Sprintf("https://open-vsx.%s", ctx.Config.Domain), MaxIdleConns: 1000, MaxIdleConnsPerHost: 1000, - PrometheusAddr: fmt.Sprintf(":%d", PrometheusPort), + PrometheusAddr: common.LocalhostPrometheusAddr(), RedisAddr: "localhost:6379", } diff --git a/install/installer/pkg/components/openvsx-proxy/constants.go b/install/installer/pkg/components/openvsx-proxy/constants.go index 26d0fe322cde72..cebd7e4432903a 100644 --- a/install/installer/pkg/components/openvsx-proxy/constants.go +++ b/install/installer/pkg/components/openvsx-proxy/constants.go @@ -5,10 +5,8 @@ package openvsx_proxy const ( - Component = "openvsx-proxy" - ContainerPort = 8080 - ServicePort = 8080 - PortName = "http" - PrometheusPort = 9500 - PrometheusPortName = "metrics" + Component = "openvsx-proxy" + ContainerPort = 8080 + ServicePort = 8080 + PortName = "http" ) diff --git a/install/installer/pkg/components/openvsx-proxy/service.go b/install/installer/pkg/components/openvsx-proxy/service.go index 0ea4008e0a0795..6bc5a26f5ff26b 100644 --- a/install/installer/pkg/components/openvsx-proxy/service.go +++ b/install/installer/pkg/components/openvsx-proxy/service.go @@ -5,6 +5,7 @@ package openvsx_proxy import ( + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/common" "github.com/gitpod-io/gitpod/installer/pkg/config/v1/experimental" @@ -28,9 +29,9 @@ func service(ctx *common.RenderContext) ([]runtime.Object, error) { ServicePort: ServicePort, }, { - Name: PrometheusPortName, - ContainerPort: PrometheusPort, - ServicePort: PrometheusPort, + Name: baseserver.BuiltinMetricsPortName, + ContainerPort: baseserver.BuiltinMetricsPort, + ServicePort: baseserver.BuiltinMetricsPort, }, } diff --git a/install/installer/pkg/components/openvsx-proxy/statefulset.go b/install/installer/pkg/components/openvsx-proxy/statefulset.go index a7d4e8e0cdacae..82ae99e23b7edd 100644 --- a/install/installer/pkg/components/openvsx-proxy/statefulset.go +++ b/install/installer/pkg/components/openvsx-proxy/statefulset.go @@ -15,6 +15,7 @@ import ( "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/utils/pointer" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/cluster" "github.com/gitpod-io/gitpod/installer/pkg/common" ) @@ -93,8 +94,8 @@ func statefulset(ctx *common.RenderContext) ([]runtime.Object, error) { Name: PortName, ContainerPort: ContainerPort, }, { - Name: PrometheusPortName, - ContainerPort: PrometheusPort, + Name: baseserver.BuiltinMetricsPortName, + ContainerPort: baseserver.BuiltinMetricsPort, }}, VolumeMounts: []v1.VolumeMount{{ Name: "config", diff --git a/install/installer/pkg/components/proxy/constants.go b/install/installer/pkg/components/proxy/constants.go index 044b3b983e1bde..dfa9cc9204cc03 100644 --- a/install/installer/pkg/components/proxy/constants.go +++ b/install/installer/pkg/components/proxy/constants.go @@ -14,13 +14,11 @@ const ( ContainerHTTPSName = common.ProxyContainerHTTPSName ContainerSSHPort = 22 ContainerSSHName = "ssh" - PrometheusPort = 9500 InitContainerImage = "library/alpine" InitContainerTag = "3.15" KubeRBACProxyRepo = common.KubeRBACProxyRepo KubeRBACProxyImage = common.KubeRBACProxyImage KubeRBACProxyTag = common.KubeRBACProxyTag - MetricsContainerName = "metrics" ReadinessPort = 8003 RegistryAuthSecret = common.RegistryAuthSecret RegistryTLSCertSecret = common.RegistryTLSCertSecret diff --git a/install/installer/pkg/components/proxy/deployment.go b/install/installer/pkg/components/proxy/deployment.go index d9e949683995c9..78705ce893c849 100644 --- a/install/installer/pkg/components/proxy/deployment.go +++ b/install/installer/pkg/components/proxy/deployment.go @@ -7,6 +7,7 @@ package proxy import ( "fmt" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/cluster" "github.com/gitpod-io/gitpod/installer/pkg/config/v1/experimental" @@ -32,8 +33,8 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) { } prometheusPort := corev1.ContainerPort{ - ContainerPort: PrometheusPort, - Name: MetricsContainerName, + ContainerPort: baseserver.BuiltinMetricsPort, + Name: baseserver.BuiltinMetricsPortName, } volumes := []corev1.Volume{{ @@ -176,9 +177,8 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) { Image: ctx.ImageName(common.ThirdPartyContainerRepo(ctx.Config.Repository, KubeRBACProxyRepo), KubeRBACProxyImage, KubeRBACProxyTag), ImagePullPolicy: corev1.PullIfNotPresent, Args: []string{ - "--v=10", "--logtostderr", - fmt.Sprintf("--insecure-listen-address=[$(IP)]:%d", PrometheusPort), + fmt.Sprintf("--insecure-listen-address=[$(IP)]:%d", baseserver.BuiltinMetricsPort), "--upstream=http://127.0.0.1:9545/", }, Env: []corev1.EnvVar{{ @@ -191,8 +191,8 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) { }, }}, Ports: []corev1.ContainerPort{{ - ContainerPort: PrometheusPort, - Name: MetricsContainerName, + ContainerPort: baseserver.BuiltinMetricsPort, + Name: baseserver.BuiltinMetricsPortName, Protocol: *common.TCPProtocol, }}, Resources: common.ResourceRequirements(ctx, Component, kubeRbacProxyContainerName, corev1.ResourceRequirements{ diff --git a/install/installer/pkg/components/proxy/networkpolicy.go b/install/installer/pkg/components/proxy/networkpolicy.go index 93db65f780f1af..f29c89c07875d0 100644 --- a/install/installer/pkg/components/proxy/networkpolicy.go +++ b/install/installer/pkg/components/proxy/networkpolicy.go @@ -7,6 +7,7 @@ package proxy import ( "fmt" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/common" networkingv1 "k8s.io/api/networking/v1" @@ -42,7 +43,7 @@ func networkpolicy(ctx *common.RenderContext) ([]runtime.Object, error) { }, { Ports: []networkingv1.NetworkPolicyPort{{ Protocol: common.TCPProtocol, - Port: &intstr.IntOrString{IntVal: PrometheusPort}, + Port: &intstr.IntOrString{IntVal: baseserver.BuiltinMetricsPort}, }}, From: []networkingv1.NetworkPolicyPeer{{ NamespaceSelector: &metav1.LabelSelector{MatchLabels: map[string]string{ diff --git a/install/installer/pkg/components/proxy/service.go b/install/installer/pkg/components/proxy/service.go index 9cc2df9e52ccd0..dd2aa44a85ca81 100644 --- a/install/installer/pkg/components/proxy/service.go +++ b/install/installer/pkg/components/proxy/service.go @@ -7,6 +7,7 @@ package proxy import ( "fmt" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/common" "github.com/gitpod-io/gitpod/installer/pkg/config/v1/experimental" @@ -64,9 +65,9 @@ func service(ctx *common.RenderContext) ([]runtime.Object, error) { ServicePort: ContainerHTTPSPort, }, { - Name: MetricsContainerName, - ContainerPort: PrometheusPort, - ServicePort: PrometheusPort, + Name: baseserver.BuiltinMetricsPortName, + ContainerPort: baseserver.BuiltinMetricsPort, + ServicePort: baseserver.BuiltinMetricsPort, }, } if ctx.Config.SSHGatewayHostKey != nil { diff --git a/install/installer/pkg/components/registry-facade/configmap.go b/install/installer/pkg/components/registry-facade/configmap.go index a0fbe47d4b49e4..c6e2884b189844 100644 --- a/install/installer/pkg/components/registry-facade/configmap.go +++ b/install/installer/pkg/components/registry-facade/configmap.go @@ -7,6 +7,7 @@ package registryfacade import ( "fmt" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/common" wsmanager "github.com/gitpod-io/gitpod/installer/pkg/components/ws-manager" "github.com/gitpod-io/gitpod/installer/pkg/config/v1/experimental" @@ -87,8 +88,8 @@ func configmap(ctx *common.RenderContext) ([]runtime.Object, error) { RedisCache: redisCache, }, AuthCfg: "/mnt/pull-secret.json", - PProfAddr: ":6060", - PrometheusAddr: "127.0.0.1:9500", + PProfAddr: common.LocalhostAddressFromPort(baseserver.BuiltinDebugPort), + PrometheusAddr: common.LocalhostPrometheusAddr(), ReadinessProbeAddr: fmt.Sprintf(":%v", ReadinessPort), } diff --git a/install/installer/pkg/components/registry-facade/daemonset.go b/install/installer/pkg/components/registry-facade/daemonset.go index 4ffe41ae34b888..6c0264f975924a 100644 --- a/install/installer/pkg/components/registry-facade/daemonset.go +++ b/install/installer/pkg/components/registry-facade/daemonset.go @@ -241,15 +241,8 @@ func daemonset(ctx *common.RenderContext) ([]runtime.Object, error) { Name: "GRPC_GO_RETRY", Value: "on", }, - { - Name: "NODENAME", - ValueFrom: &corev1.EnvVarSource{ - FieldRef: &corev1.ObjectFieldSelector{ - FieldPath: "spec.nodeName", - }, - }, - }, }, + common.NodeNameEnv(ctx), envvars, )), VolumeMounts: append( @@ -313,16 +306,7 @@ func daemonset(ctx *common.RenderContext) ([]runtime.Object, error) { fmt.Sprintf(`--probe-url=http://localhost:%v/ready`, ReadinessPort), }, Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv( - []corev1.EnvVar{ - { - Name: "NODENAME", - ValueFrom: &corev1.EnvVarSource{ - FieldRef: &corev1.ObjectFieldSelector{ - FieldPath: "spec.nodeName", - }, - }, - }, - }, + common.NodeNameEnv(ctx), )), ImagePullPolicy: corev1.PullIfNotPresent, Lifecycle: &corev1.Lifecycle{ diff --git a/install/installer/pkg/components/server/constants.go b/install/installer/pkg/components/server/constants.go index 7a4ed4bf097c9a..a142cc011dac0f 100644 --- a/install/installer/pkg/components/server/constants.go +++ b/install/installer/pkg/components/server/constants.go @@ -18,8 +18,6 @@ const ( stripeSecretMountPath = "/stripe-secret" stripeConfigMountPath = "/stripe-config" githubAppCertSecret = "github-app-cert-secret" - PrometheusPort = 9500 - PrometheusPortName = "metrics" InstallationAdminPort = common.ServerInstallationAdminPort InstallationAdminName = "install-admin" DebugPortName = "debug" diff --git a/install/installer/pkg/components/server/deployment.go b/install/installer/pkg/components/server/deployment.go index 26b904128233b0..1e35d0031ac527 100644 --- a/install/installer/pkg/components/server/deployment.go +++ b/install/installer/pkg/components/server/deployment.go @@ -9,6 +9,7 @@ import ( "fmt" "path" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/cluster" "github.com/gitpod-io/gitpod/installer/pkg/common" @@ -359,14 +360,14 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) { Name: ContainerPortName, ContainerPort: ContainerPort, }, { - Name: PrometheusPortName, - ContainerPort: PrometheusPort, + Name: baseserver.BuiltinMetricsPortName, + ContainerPort: baseserver.BuiltinMetricsPort, }, { Name: InstallationAdminName, ContainerPort: InstallationAdminPort, }, { Name: DebugPortName, - ContainerPort: common.DebugPort, + ContainerPort: baseserver.BuiltinDebugPort, }, { Name: DebugNodePortName, ContainerPort: common.DebugNodePort, diff --git a/install/installer/pkg/components/server/networkpolicy.go b/install/installer/pkg/components/server/networkpolicy.go index c33f3c61df7952..bd95360e1cddb8 100644 --- a/install/installer/pkg/components/server/networkpolicy.go +++ b/install/installer/pkg/components/server/networkpolicy.go @@ -5,6 +5,7 @@ package server import ( + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/common" "github.com/gitpod-io/gitpod/installer/pkg/components/gitpod" @@ -50,7 +51,7 @@ func networkpolicy(ctx *common.RenderContext) ([]runtime.Object, error) { Ports: []networkingv1.NetworkPolicyPort{ { Protocol: common.TCPProtocol, - Port: &intstr.IntOrString{IntVal: PrometheusPort}, + Port: &intstr.IntOrString{IntVal: baseserver.BuiltinMetricsPort}, }, }, From: []networkingv1.NetworkPolicyPeer{ diff --git a/install/installer/pkg/components/server/objects.go b/install/installer/pkg/components/server/objects.go index 6aed3a0a27a00d..b504e5bc48c006 100644 --- a/install/installer/pkg/components/server/objects.go +++ b/install/installer/pkg/components/server/objects.go @@ -5,6 +5,7 @@ package server import ( + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/common" "github.com/gitpod-io/gitpod/installer/pkg/components/server/ide" ) @@ -23,9 +24,9 @@ var Objects = common.CompositeRenderFunc( ServicePort: ServicePort, }, { - Name: PrometheusPortName, - ContainerPort: PrometheusPort, - ServicePort: PrometheusPort, + Name: baseserver.BuiltinMetricsPortName, + ContainerPort: baseserver.BuiltinMetricsPort, + ServicePort: baseserver.BuiltinMetricsPort, }, { Name: InstallationAdminName, @@ -34,8 +35,8 @@ var Objects = common.CompositeRenderFunc( }, { Name: DebugPortName, - ContainerPort: common.DebugPort, - ServicePort: common.DebugPort, + ContainerPort: baseserver.BuiltinDebugPort, + ServicePort: baseserver.BuiltinDebugPort, }, { Name: DebugNodePortName, diff --git a/install/installer/pkg/components/ws-daemon/daemonset.go b/install/installer/pkg/components/ws-daemon/daemonset.go index 84c1a23906f14f..565bd4f6ef0afd 100644 --- a/install/installer/pkg/components/ws-daemon/daemonset.go +++ b/install/installer/pkg/components/ws-daemon/daemonset.go @@ -204,14 +204,7 @@ fi Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv( common.DefaultEnv(&cfg), common.WorkspaceTracingEnv(ctx), - []corev1.EnvVar{{ - Name: "NODENAME", - ValueFrom: &corev1.EnvVarSource{ - FieldRef: &corev1.ObjectFieldSelector{ - FieldPath: "spec.nodeName", - }, - }, - }}, + common.NodeNameEnv(ctx), )), Resources: common.ResourceRequirements(ctx, Component, Component, corev1.ResourceRequirements{Requests: corev1.ResourceList{ "cpu": resource.MustParse("1m"), @@ -300,16 +293,7 @@ fi fmt.Sprintf(`--probe-url=http://localhost:%v/ready`, ReadinessPort), }, Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv( - []corev1.EnvVar{ - { - Name: "NODENAME", - ValueFrom: &corev1.EnvVarSource{ - FieldRef: &corev1.ObjectFieldSelector{ - FieldPath: "spec.nodeName", - }, - }, - }, - }, + common.NodeNameEnv(ctx), )), ImagePullPolicy: corev1.PullIfNotPresent, Lifecycle: &corev1.Lifecycle{ diff --git a/install/installer/pkg/components/ws-manager-bridge/deployment.go b/install/installer/pkg/components/ws-manager-bridge/deployment.go index 7fd3d158d5c4fe..0f175e463ad97d 100644 --- a/install/installer/pkg/components/ws-manager-bridge/deployment.go +++ b/install/installer/pkg/components/ws-manager-bridge/deployment.go @@ -7,6 +7,7 @@ package wsmanagerbridge import ( "fmt" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/cluster" "github.com/gitpod-io/gitpod/installer/pkg/common" wsmanager "github.com/gitpod-io/gitpod/installer/pkg/components/ws-manager" @@ -138,8 +139,8 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) { )), Ports: []corev1.ContainerPort{ { - ContainerPort: 9500, - Name: "metrics", + ContainerPort: baseserver.BuiltinMetricsPort, + Name: baseserver.BuiltinMetricsPortName, }, }, VolumeMounts: []corev1.VolumeMount{{ diff --git a/install/installer/pkg/components/ws-manager/configmap.go b/install/installer/pkg/components/ws-manager/configmap.go index 3498e979c33011..61ba63de00d1f4 100644 --- a/install/installer/pkg/components/ws-manager/configmap.go +++ b/install/installer/pkg/components/ws-manager/configmap.go @@ -226,10 +226,10 @@ func configmap(ctx *common.RenderContext) ([]runtime.Object, error) { }, PProf: struct { Addr string `json:"addr"` - }{Addr: "localhost:6060"}, + }{Addr: common.LocalhostPprofAddr()}, Prometheus: struct { Addr string `json:"addr"` - }{Addr: "127.0.0.1:9500"}, + }{Addr: common.LocalhostPrometheusAddr()}, } fc, err := common.ToJSONString(wsmcfg) diff --git a/install/installer/pkg/components/ws-proxy/configmap.go b/install/installer/pkg/components/ws-proxy/configmap.go index 83d51258ce9796..545c560a9e4586 100644 --- a/install/installer/pkg/components/ws-proxy/configmap.go +++ b/install/installer/pkg/components/ws-proxy/configmap.go @@ -11,6 +11,7 @@ import ( "github.com/gitpod-io/gitpod/installer/pkg/components/workspace" "github.com/gitpod-io/gitpod/installer/pkg/config/v1/experimental" + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/common-go/util" "github.com/gitpod-io/gitpod/installer/pkg/common" "github.com/gitpod-io/gitpod/ws-proxy/pkg/config" @@ -90,8 +91,8 @@ func configmap(ctx *common.RenderContext) ([]runtime.Object, error) { Location: "/app/public", }, }, - PProfAddr: ":60060", - PrometheusAddr: "127.0.0.1:9500", + PProfAddr: common.LocalhostAddressFromPort(baseserver.BuiltinDebugPort), + PrometheusAddr: common.LocalhostPrometheusAddr(), ReadinessProbeAddr: fmt.Sprintf(":%v", ReadinessPort), WorkspaceManager: &config.WorkspaceManagerConn{ Addr: "ws-manager:8080", diff --git a/install/installer/pkg/components/ws-proxy/constants.go b/install/installer/pkg/components/ws-proxy/constants.go index f3dfca5a60a1ac..1f77882f4b181b 100644 --- a/install/installer/pkg/components/ws-proxy/constants.go +++ b/install/installer/pkg/components/ws-proxy/constants.go @@ -18,7 +18,5 @@ const ( SSHServicePort = 22 SSHTargetPort = 2200 SSHPortName = "ssh" - MetricsPort = 9500 - MetricsPortName = "metrics" ReadinessPort = 8086 ) diff --git a/install/installer/pkg/components/ws-proxy/deployment.go b/install/installer/pkg/components/ws-proxy/deployment.go index 14a9accef8e257..40a1a62deb8b76 100644 --- a/install/installer/pkg/components/ws-proxy/deployment.go +++ b/install/installer/pkg/components/ws-proxy/deployment.go @@ -5,6 +5,7 @@ package wsproxy import ( + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/cluster" "github.com/gitpod-io/gitpod/installer/pkg/common" @@ -109,8 +110,8 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) { Name: HTTPSProxyPortName, ContainerPort: HTTPSProxyPort, }, { - Name: MetricsPortName, - ContainerPort: MetricsPort, + Name: baseserver.BuiltinMetricsPortName, + ContainerPort: baseserver.BuiltinMetricsPort, }}, SecurityContext: &corev1.SecurityContext{ Privileged: pointer.Bool(false), diff --git a/install/installer/pkg/components/ws-proxy/objects.go b/install/installer/pkg/components/ws-proxy/objects.go index bdbe54ca25ae2d..c048042813b20c 100644 --- a/install/installer/pkg/components/ws-proxy/objects.go +++ b/install/installer/pkg/components/ws-proxy/objects.go @@ -5,6 +5,7 @@ package wsproxy import ( + "github.com/gitpod-io/gitpod/common-go/baseserver" "github.com/gitpod-io/gitpod/installer/pkg/common" "github.com/gitpod-io/gitpod/installer/pkg/config/v1" corev1 "k8s.io/api/core/v1" @@ -30,9 +31,9 @@ var Objects = common.CompositeRenderFunc( ServicePort: HTTPSProxyPort, }, { - Name: MetricsPortName, - ContainerPort: MetricsPort, - ServicePort: MetricsPort, + Name: baseserver.BuiltinMetricsPortName, + ContainerPort: baseserver.BuiltinMetricsPort, + ServicePort: baseserver.BuiltinMetricsPort, }, { Name: SSHPortName,