Page MenuHomePhabricator

move design.wikimedia.org to kubernetes
Closed, ResolvedPublic

Details

TitleReferenceAuthorSource BranchDest Branch
add ci for design-style-guiderepos/sre/miscweb/design-style-guide!1jeltoadd-cimaster
add miscweb design-style-guide to Trusted Runnersrepos/releng/gitlab-trusted-runner!61jeltoadd-design-style-guidemain
add ci for design-landing-page image buildrepos/sre/miscweb/design-landing-page!2jeltoadd-ci-1master
add ci for design-strategy image buildrepos/sre/miscweb/design-strategy!1jeltoadd-cimaster
add ci for design-landing-page image buildrepos/sre/miscweb/design-landing-page!1jeltoadd-cimaster
add ci for design-blog image buildrepos/sre/miscweb/design-blog!1jeltoadd-cimaster
add design miscweb projectsrepos/releng/gitlab-trusted-runner!59jeltoadd-design-projectsmain
Customize query in GitLab

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Yea, style-guide is deployed by scap and other parts are not. This is because there were large files in there afair.

We gotta have a chat with @Volker_E about this before kicking it off.

@Jelto @Dzahn That actually comes at a perfect time. We want to deploy Design Style Guide one more time (with a deprecation notice) and can then drop this special deployment necessity. As Codex has been designed successor.

Yea, style-guide is deployed by scap and other parts are not. This is because there were large files in there afair.

We gotta have a chat with @Volker_E about this before kicking it off.

The folders for all design* pages look quite reasonable and should fit into a container image:

miscweb1003:/srv/org/wikimedia$ du -sh ./design*
472K    ./design
473M    ./design-blog
188M    ./design-strategy
0       ./design-style-guide

@Jelto @Dzahn That actually comes at a perfect time. We want to deploy Design Style Guide one more time (with a deprecation notice) and can then drop this special deployment necessity. As Codex has been designed successor.

Great to hear that! Let's schedule a kickoff so that we understand all the design pages (blog, strategy, style-guide, codex, ...) and then we can introduce you also the the new miscweb platform.

Yay, I am glad to hear this @Volker_E Yea, let's have a kickoff :)

LSobanski triaged this task as Medium priority.Nov 13 2023, 4:11 PM

To summarize our meeting on Tuesday:

  • the three sites Landing-page, Strategy and Blog will be used in the future and have to be migrated to GitLab and Kubernetes
  • style-guide will be replaced by codex, which is running in doc hosts
  • style-guide needs one last deploy T352202 and can be decommissioned after that
  • Large files are hosted on a external provider in a proprietary format for codex
  • Self deploy to Kubernetes is desired, but fallback to a dedicated phab task could be useful from time to time

So for SRE we have to figure out how to build and deploy the three repos which act as one service with the current miscweb Kubernetes setup. There are some docs about that in https://wikitech.wikimedia.org/wiki/Kubernetes/Ingress#More_complex_setups, which allows mapping different paths to different releases.

design.wikimedia.org -> design-landing-page
design.wikimedia.org/blog -> design-blog
design.wikimedia.org/strategy -> design-strategy

Also after the last deploy T352202 of style-guide this can be removed from scap. Also the general migration work (gitlab repo, pipeline, helm deployment) and onboarding to new deployment workflow is needed.

Change 987758 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/deployment-charts@master] miscweb: add design.wikimedia.org services

https://gerrit.wikimedia.org/r/987758

Change 987758 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: add design.wikimedia.org services

https://gerrit.wikimedia.org/r/987758

Change 987966 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/deployment-charts@master] miscweb: remove ingress match in design-landing-page

https://gerrit.wikimedia.org/r/987966

Change 987966 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: remove ingress match in design-landing-page

https://gerrit.wikimedia.org/r/987966

Change 987969 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/deployment-charts@master] miscweb: use design.wikimedia.org instead of design.wikipedia.org

https://gerrit.wikimedia.org/r/987969

Change 987969 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: use design.wikimedia.org instead of design.wikipedia.org

https://gerrit.wikimedia.org/r/987969

Change 987974 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/deployment-charts@master] miscweb: add httproutes with match and route to landing-page

https://gerrit.wikimedia.org/r/987974

Change 987974 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: add httproutes with match and route to landing-page

https://gerrit.wikimedia.org/r/987974

Change 987979 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/deployment-charts@master] miscweb: fix existingGatewayName and remove routeHosts

https://gerrit.wikimedia.org/r/987979

Change 987979 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: fix existingGatewayName and remove routeHosts

https://gerrit.wikimedia.org/r/987979

Change 988006 had a related patch set uploaded (by JMeybohm; author: JMeybohm):

[operations/deployment-charts@master] miscweb: Fix destination host for design-strategy route

https://gerrit.wikimedia.org/r/988006

Change 988006 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: Fix destination host for design-strategy route

https://gerrit.wikimedia.org/r/988006

All three design services (design-landing-page, design-blog and design-strategy) were deployed to the wikikube clusters.

Thanks to @JMeybohm for the support when configuring the ingress. We are now able to map different paths to different design services (like /blog and /strategy).

Change 989834 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/puppet@production] trafficserver: switch design.wikimedia.org to wikikube

https://gerrit.wikimedia.org/r/989834

Change 989835 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/puppet@production] miscweb/microsites: move monitoring of design to monitoring profile

https://gerrit.wikimedia.org/r/989835

Change 990692 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/deployment-charts@master] miscweb: update design-strategy image version

https://gerrit.wikimedia.org/r/990692

Change 990692 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: update design-strategy image version

https://gerrit.wikimedia.org/r/990692

I'd like to switch the traffic to the design services on wikikube soon. I removed my -1 blockers on the changes above.

If there are no concerns from the reviewers I'll switch the traffic when I got a +1.

The design-strategy repo got an update in Gerrit so I had to rebase it to the GitLab repository.

Just to be sure all services run the same service version I calculated the sha256sum for /, /blog and /strategy. All services return the same content (at least for the individual document root).

landing-page:

curl -s https://design.wikimedia.org/ | sha256sum
125733ebd641da96bc844c6878bdc1b1d56c854fce82510c411599a36db2047b  -
curl -s --resolve design.wikimedia.org:30443:$(dig +short k8s-ingress-wikikube.svc.codfw.wmnet) https://design.wikimedia.org:30443/ | sha256sum 
125733ebd641da96bc844c6878bdc1b1d56c854fce82510c411599a36db2047b  -
curl -s --resolve design.wikimedia.org:30443:$(dig +short k8s-ingress-wikikube.svc.eqiad.wmnet) https://design.wikimedia.org:30443/ | sha256sum 
125733ebd641da96bc844c6878bdc1b1d56c854fce82510c411599a36db2047b  -

blog:

curl -s https://design.wikimedia.org/blog/ | sha256sum
7b22ce1157af779eff61305135430f51879212d709f41d63e148241986835297  -
curl -s --resolve design.wikimedia.org:30443:$(dig +short k8s-ingress-wikikube.svc.codfw.wmnet) https://design.wikimedia.org:30443/blog/ | sha256sum 
7b22ce1157af779eff61305135430f51879212d709f41d63e148241986835297  -
curl -s --resolve design.wikimedia.org:30443:$(dig +short k8s-ingress-wikikube.svc.eqiad.wmnet) https://design.wikimedia.org:30443/blog/ | sha256sum 
7b22ce1157af779eff61305135430f51879212d709f41d63e148241986835297  -

strategy

curl -s https://design.wikimedia.org/strategy/ | sha256sum
4e1062f68885b294c9bc9a870b7988078b2739b9de16ce2c2a47cc0bcf9d94d6  -
curl -s --resolve design.wikimedia.org:30443:$(dig +short k8s-ingress-wikikube.svc.codfw.wmnet) https://design.wikimedia.org:30443/strategy/ | sha256sum 
4e1062f68885b294c9bc9a870b7988078b2739b9de16ce2c2a47cc0bcf9d94d6  -
curl -s --resolve design.wikimedia.org:30443:$(dig +short k8s-ingress-wikikube.svc.eqiad.wmnet) https://design.wikimedia.org:30443/strategy/ | sha256sum 
4e1062f68885b294c9bc9a870b7988078b2739b9de16ce2c2a47cc0bcf9d94d6  -

Change 989834 merged by Jelto:

[operations/puppet@production] trafficserver: switch design.wikimedia.org to wikikube

https://gerrit.wikimedia.org/r/989834

Change 989835 merged by Jelto:

[operations/puppet@production] miscweb/microsites: move monitoring of design to monitoring profile

https://gerrit.wikimedia.org/r/989835

Traffic for design services was switched to wikikube and traffic for /, /strategy and blog looks good and lands on wikikube.

Traffic for the end of life service /style-guide generates 404 now. I'll add this service to wikikube as well to unblock the migration.

Change 991000 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/deployment-charts@master] miscweb: add design-style-guide release

https://gerrit.wikimedia.org/r/991000

Change 991000 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: add design-style-guide release

https://gerrit.wikimedia.org/r/991000

All design services run on wikikube now (/, /strategy, /blog and /style-guide). Although the design-style-guide is EOL and will be decommissioned soon having the services also on Kubernetes makes it far easier and we are not blocked here and in the cleanup of the legacy miscweb VMs.

So the only things left here are cleanup of the old Puppet resources. I'll upload a patch for that soon. And the design team deployers (@Volker_E and @DDeSouza?) should be onboarded to the new deployment workflow.

Change 991011 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/puppet@production] miscweb/microsites: remove profile::microsites::design

https://gerrit.wikimedia.org/r/991011

And the design team deployers (@Volker_E and @DDeSouza?) should be onboarded to the new deployment workflow.

I requested access to the new repos. I imagine it will be the same flow as the other k8s sites I'm deploying.

And the design team deployers (@Volker_E and @DDeSouza?) should be onboarded to the new deployment workflow.

I requested access to the new repos. I imagine it will be the same flow as the other k8s sites I'm deploying.

Thanks! I accepted all requests. And yes the workflow for updating and deploying is similar to research or wikiworkshop. So if you need a refresh for that let me know, otherwise we can do a onboarding session with @Volker_E only.

Change 991011 merged by Jelto:

[operations/puppet@production] miscweb/microsites: remove profile::microsites::design

https://gerrit.wikimedia.org/r/991011

Migration to wikikube and cleanup of the old design services on miscweb VMs finished. I'll close this task.

@Volker_E already reached out so we'll coordinate deploy access outside of this task and in a dedicated access request.