- Chart created, reviewed and merged
- proton namespaces on k8s created
- proton tokens for k8s created
- calico rules created, if applicable
- helmfile.d stanzas created
- deploy
- Switchover traffic from proton hosts to kubernetes
Description
Details
| Status | Subtype | Assigned | Task | ||
|---|---|---|---|---|---|
| Resolved | dancy | T302086 Set scap minimum python version to 3.7 | |||
| Resolved | None | T247045 Migrate all of production metal and VMs to Buster or later | |||
| Restricted Task | |||||
| Resolved | akosiaris | T198901 Migrate production services to kubernetes using the pipeline | |||
| Resolved | akosiaris | T225680 Migrate Proton to k8s | |||
| Resolved | MSantos | T238830 Profile proton memory usage for Helm chart | |||
| Resolved | MSantos | T240594 Upgrade puppeteer to allow Proton to move to Buster |
Event Timeline
Change 516710 had a related patch set uploaded (by Jforrester; owner: Jforrester):
[mediawiki/services/chromium-render@master] build: Create initial pipeline configuration
Change 516710 merged by jenkins-bot:
[mediawiki/services/chromium-render@master] build: Create initial pipeline configuration
Change 520317 had a related patch set uploaded (by Jforrester; owner: Jforrester):
[integration/config@master] layout: [chromium-render] Enable pipeline tests
Change 520317 abandoned by Jforrester:
layout: [chromium-render] Enable pipeline tests
Reason:
Done elsewise.
Change 580294 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[labs/private@master] Add k8s dummy tokens for 3 new services.
Change 580295 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/puppet@production] Kubernetes: Create token stanzas for some new services
Change 599812 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/deployment-charts@master] Create namespaces/calico rules for new services
Change 580294 merged by Alexandros Kosiaris:
[labs/private@master] Add k8s dummy tokens for 3 new services.
Change 580295 merged by Alexandros Kosiaris:
[operations/puppet@production] Kubernetes: Create token stanzas for some new services
Change 599812 merged by jenkins-bot:
[operations/deployment-charts@master] Create namespaces/calico rules for new services
@Mholloway, namespaces, rules, tokens have been created. Chart has been merged and publish. You are free to deploy. You will require a change like 968132909b4d24192b2f69a657c14bb30acd7a42 in order to instantiate the first deploy, feel free to add me as a reviewer.
Change 602164 had a related patch set uploaded (by Mholloway; owner: Michael Holloway):
[operations/deployment-charts@master] Chromium-render: Add initial helmfile stanzas
Change 602164 merged by jenkins-bot:
[operations/deployment-charts@master] Chromium-render: Add initial helmfile stanzas
Hmm, I've merged https://gerrit.wikimedia.org/r/602164 in preparation to deploy the service, but it doesn't look like Puppet is going to create the .hfenv files and private/ subdirectories in the per-cluster service directories as I would expect. Something must be wrong.
Change 604046 had a related patch set uploaded (by Mholloway; owner: Michael Holloway):
[operations/deployment-charts@master] Proton: Fix helmfile paths and namespace refs
Change 604046 merged by jenkins-bot:
[operations/deployment-charts@master] Proton: Fix helmfile paths and namespace refs
@akosiaris I'm still running into a problem deploying this. It seems that private/secrets.yaml is still missing:
mholloway-shell@deploy1001:/srv/deployment-charts/helmfile.d/services/staging/proton$ source .hfenv; helmfile diff Adding repo stable https://releases.wikimedia.org/charts/ "stable" has been added to your repositories Updating repo Hang tight while we grab the latest from your chart repositories... ...Skip local chart repository ...Successfully got an update from the "stable" chart repository Update Complete. skipping missing values file matching "private/secrets.yaml" Comparing release=production, chart=stable/chromium-render in ./helmfile.yaml: helm exited with status 1: Error: Get http://localhost:8080/api/v1/namespaces/proton/pods?labelSelector=app%3Dhelm%2Cname%3Dtiller: dial tcp [::1]:8080: connect: connection refused
The same thing happens for mobileapps.
That's actually a warning and not a failure. We can silence it of course, but it's not the reason for the issue below
mholloway-shell@deploy1001:/srv/deployment-charts/helmfile.d/services/staging/proton$ source .hfenv; helmfile diff Adding repo stable https://releases.wikimedia.org/charts/ "stable" has been added to your repositories Updating repo Hang tight while we grab the latest from your chart repositories... ...Skip local chart repository ...Successfully got an update from the "stable" chart repository Update Complete. skipping missing values file matching "private/secrets.yaml" Comparing release=production, chart=stable/chromium-render in ./helmfile.yaml: helm exited with status 1: Error: Get http://localhost:8080/api/v1/namespaces/proton/pods?labelSelector=app%3Dhelm%2Cname%3Dtiller: dial tcp [::1]:8080: connect: connection refused
Now that's my mistake. Fixed in the puppet/private repo.
The same thing happens for mobileapps.
Same puppet/private repo fixed that as well.
Change 607531 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/puppet@production] lvs: Add new proton TLS service
Change 607532 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/puppet@production] lvs: Switch proton to lvs_setup
Change 607533 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/puppet@production] lvs: Switch proton to monitoring_setup
Change 607534 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/puppet@production] lvs: Switch proton to production
Change 607535 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/puppet@production] proton: Switch dev restbase to talk to TLS proton
Change 607536 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/puppet@production] proton: Switch restbase production to TLS
Change 607531 merged by Alexandros Kosiaris:
[operations/puppet@production] lvs: Add new proton TLS service
Change 607532 merged by Alexandros Kosiaris:
[operations/puppet@production] lvs: Switch proton to lvs_setup
Change 607533 merged by Alexandros Kosiaris:
[operations/puppet@production] lvs: Switch proton to monitoring_setup
Change 607534 merged by Alexandros Kosiaris:
[operations/puppet@production] lvs: Switch proton to production
Change 607535 merged by Alexandros Kosiaris:
[operations/puppet@production] proton: Switch dev restbase to talk to TLS proton
Change 607536 abandoned by Alexandros Kosiaris:
[operations/puppet@production] proton: Switch restbase production to TLS
Reason:
Done differently in https://gerrit.wikimedia.org/r/c/operations/puppet/ /610720
Change 610789 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/puppet@production] proton: Set LVS level OpenAPI checks on TLS
Change 610789 merged by Alexandros Kosiaris:
[operations/puppet@production] proton: Set LVS level OpenAPI checks on TLS
Change 610855 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/deployment-charts@master] proton: Amend prometheus-statsd config
Change 610855 merged by jenkins-bot:
[operations/deployment-charts@master] proton: Amend prometheus-statsd config
Resolving. This has been completed quite successfully. New dashboard is at https://grafana.wikimedia.org/d/llIEd7MMz/proton. I 'll archive the old one. \o/