Closed Bug 1616858 Opened 5 years ago Closed 5 years ago

Each deployment should have a different container name

Categories

(Taskcluster :: Services, enhancement)

enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: brian, Unassigned)

Details

In order to track cpu and memory utilization per cronjob or deployment, we need each one to have a unique container name. This is because Stackdriver does not tag those metrics based on their metadata, but does tag them based on the container name. Currently, it looks like all the crons have unique names but many of the deployments share container names. For example taskcluster-hooks-listeners, taskcluster-hooks-scheduler, and taskcluster-hooks-web all share the container name taskcluster-hooks. See the list below for confirmation.

The fix is probably to make the container name always match the component label. I believe this can be done by changing https://github.com/taskcluster/taskcluster/blob/f9b7461209e9efa2aebab8676df259f5f5272f43/infrastructure/tooling/templates/k8s/deployment.yaml#L18 to match https://github.com/taskcluster/taskcluster/blob/f9b7461209e9efa2aebab8676df259f5f5272f43/infrastructure/tooling/templates/k8s/cron.yaml#L19

$ rg -e 'app.kubernetes.io/component:' -e '        - name: taskcluster-' *deployment* *cron*
taskcluster-auth-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-auth-web
22:        - name: taskcluster-auth

taskcluster-github-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-github-web
22:        - name: taskcluster-github

taskcluster-built-in-workers-deployment-server.yaml
8:    app.kubernetes.io/component: taskcluster-built-in-workers-server
22:        - name: taskcluster-built-in-workers

taskcluster-github-deployment-worker.yaml
8:    app.kubernetes.io/component: taskcluster-github-worker
22:        - name: taskcluster-github

taskcluster-hooks-deployment-scheduler.yaml
8:    app.kubernetes.io/component: taskcluster-hooks-scheduler
22:        - name: taskcluster-hooks

taskcluster-hooks-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-hooks-web
22:        - name: taskcluster-hooks

taskcluster-index-deployment-handlers.yaml
8:    app.kubernetes.io/component: taskcluster-index-handlers
22:        - name: taskcluster-index

taskcluster-notify-deployment-handler.yaml
8:    app.kubernetes.io/component: taskcluster-notify-handler
22:        - name: taskcluster-notify

taskcluster-index-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-index-web
22:        - name: taskcluster-index

taskcluster-notify-deployment-irc.yaml
8:    app.kubernetes.io/component: taskcluster-notify-irc
22:        - name: taskcluster-notify

taskcluster-notify-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-notify-web
22:        - name: taskcluster-notify

taskcluster-purge-cache-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-purge-cache-web
22:        - name: taskcluster-purge-cache

taskcluster-hooks-deployment-listeners.yaml
8:    app.kubernetes.io/component: taskcluster-hooks-listeners
22:        - name: taskcluster-hooks

taskcluster-queue-deployment-deadlineResolver.yaml
8:    app.kubernetes.io/component: taskcluster-queue-deadlineresolver
22:        - name: taskcluster-queue

taskcluster-queue-deployment-claimResolver.yaml
8:    app.kubernetes.io/component: taskcluster-queue-claimresolver
22:        - name: taskcluster-queue

taskcluster-queue-deployment-dependencyResolver.yaml
8:    app.kubernetes.io/component: taskcluster-queue-dependencyresolver
22:        - name: taskcluster-queue

taskcluster-references-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-references-web
22:        - name: taskcluster-references

taskcluster-ui-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-ui-web
22:        - name: taskcluster-ui

taskcluster-secrets-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-secrets-web
22:        - name: taskcluster-secrets

taskcluster-web-server-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-web-server-web
22:        - name: taskcluster-web-server

taskcluster-worker-manager-deployment-provisioner.yaml
8:    app.kubernetes.io/component: taskcluster-worker-manager-provisioner
22:        - name: taskcluster-worker-manager

taskcluster-worker-manager-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-worker-manager-web
22:        - name: taskcluster-worker-manager

taskcluster-worker-manager-deployment-workerscanner.yaml
8:    app.kubernetes.io/component: taskcluster-worker-manager-workerscanner
22:        - name: taskcluster-worker-manager

taskcluster-auth-cron-purgeExpiredClients.yaml
8:    app.kubernetes.io/component: taskcluster-auth-purgeexpiredclients
23:            - name: taskcluster-auth-purgeexpiredclients

taskcluster-github-cron-sync.yaml
8:    app.kubernetes.io/component: taskcluster-github-sync
23:            - name: taskcluster-github-sync

taskcluster-queue-deployment-web.yaml
8:    app.kubernetes.io/component: taskcluster-queue-web
22:        - name: taskcluster-queue

taskcluster-hooks-cron-expires.yaml
8:    app.kubernetes.io/component: taskcluster-hooks-expires
23:            - name: taskcluster-hooks-expires

taskcluster-index-cron-expire.yaml
8:    app.kubernetes.io/component: taskcluster-index-expire
23:            - name: taskcluster-index-expire

taskcluster-purge-cache-cron-expireCachePurges.yaml
8:    app.kubernetes.io/component: taskcluster-purge-cache-expirecachepurges
23:            - name: taskcluster-purge-cache-expirecachepurges

taskcluster-queue-cron-expireArtifacts.yaml
8:    app.kubernetes.io/component: taskcluster-queue-expireartifacts
23:            - name: taskcluster-queue-expireartifacts

taskcluster-queue-cron-expireQueues.yaml
8:    app.kubernetes.io/component: taskcluster-queue-expirequeues
23:            - name: taskcluster-queue-expirequeues

taskcluster-queue-cron-expireTask.yaml
8:    app.kubernetes.io/component: taskcluster-queue-expiretask
23:            - name: taskcluster-queue-expiretask

taskcluster-queue-cron-expireTaskDependency.yaml
8:    app.kubernetes.io/component: taskcluster-queue-expiretaskdependency
23:            - name: taskcluster-queue-expiretaskdependency

taskcluster-queue-cron-expireTaskGroupMembers.yaml
8:    app.kubernetes.io/component: taskcluster-queue-expiretaskgroupmembers
23:            - name: taskcluster-queue-expiretaskgroupmembers

taskcluster-queue-cron-expireTaskGroupSizes.yaml
8:    app.kubernetes.io/component: taskcluster-queue-expiretaskgroupsizes
23:            - name: taskcluster-queue-expiretaskgroupsizes

taskcluster-queue-cron-expireTaskRequirement.yaml
8:    app.kubernetes.io/component: taskcluster-queue-expiretaskrequirement
23:            - name: taskcluster-queue-expiretaskrequirement

taskcluster-queue-cron-expireWorkerInfo.yaml
8:    app.kubernetes.io/component: taskcluster-queue-expireworkerinfo
23:            - name: taskcluster-queue-expireworkerinfo

taskcluster-secrets-cron-expire.yaml
8:    app.kubernetes.io/component: taskcluster-secrets-expire
23:            - name: taskcluster-secrets-expire

taskcluster-web-server-cron-cleanup-expire-access-tokens.yaml
8:    app.kubernetes.io/component: taskcluster-web-server-cleanup-expire-access-tokens
23:            - name: taskcluster-web-server-cleanup-expire-access-tokens

taskcluster-web-server-cron-cleanup-expire-auth-codes.yaml
8:    app.kubernetes.io/component: taskcluster-web-server-cleanup-expire-auth-codes
23:            - name: taskcluster-web-server-cleanup-expire-auth-codes

taskcluster-web-server-cron-scanner.yaml
8:    app.kubernetes.io/component: taskcluster-web-server-scanner
23:            - name: taskcluster-web-server-scanner

taskcluster-worker-manager-cron-expire-errors.yaml
8:    app.kubernetes.io/component: taskcluster-worker-manager-expire-errors
23:            - name: taskcluster-worker-manager-expire-errors

taskcluster-worker-manager-cron-expire-worker-pools.yaml
8:    app.kubernetes.io/component: taskcluster-worker-manager-expire-worker-pools
23:            - name: taskcluster-worker-manager-expire-worker-pools

taskcluster-worker-manager-cron-expire-workers.yaml
8:    app.kubernetes.io/component: taskcluster-worker-manager-expire-workers
23:            - name: taskcluster-worker-manager-expire-workers

taskcluster-queue-cron-expireTaskGroups.yaml
8:    app.kubernetes.io/component: taskcluster-queue-expiretaskgroups
23:            - name: taskcluster-queue-expiretaskgroups

This has been released.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.