Page MenuHomePhabricator

☂️Migrate non-cirrus indices from production OpenSearch to OpenSearch on k8s ☂️
Open, In Progress, Needs TriagePublic

Description

The production OpenSearch clusters currently host a few indices that aren't related on-wiki search.

This is because up until very recently, there was no other place to put these indices. That changed about a month ago, when we launched the OpenSearch on K8s platform with its first tenant, opensearch-ipoid (ref T408586 ). We now have a better place to host these indices, so I'm creating this ticket to:

  • Inform stakeholders and work with them to create a migration plan, onboard to the platform, answer questions etc
  • Per the above, create migration subtasks for each group of non-cirrus indices
  • Ensure all migrations are completed to everyone's satisfication and all update relevant docs

The following sets of indices are in-scope for the migration:

IndexStakeholderCurrent size of indices (including replicas)Number of primary/replica shards
toolhub_tools@bd80830 MB1,2
apifeatureusageMediaWiki Interfaces Team @aaron225 GB1,2
Ttmserver (Translatewiki application)Language team @Nikerabbit @abi_14.1 GB1,1

Change plan

  • deployment_charts: namespaces and default values for admin_ng
  • secrets
  • puppet: configs
  • deployment_charts: helmfiles
  • dns
  • puppet: service_catalog

Event Timeline

We'll take the first steps along this journey by provisioning new OpenSearch clusters on dse-k8s. Starting with these instructions , we'll provision the following namespaces:

  • opensearch-toolhub
  • opensearch-toolhub-test
  • opensearch-apifeatureusage
  • opensearch-apifeatureusage-test
  • opensearch-ttmserver
  • opensearch-ttmserver-test

Each namespace will host a discrete OpenSearch cluster. For now we'll use the opensearch-small flavor , although we can always scale up if required.

Change #1279410 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/puppet@production] deployment_server: define more opensearch configs

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

Change #1279410 merged by Atsuko:

[operations/puppet@production] deployment_server: define more opensearch configs

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

atsuko changed the task status from Open to In Progress.Apr 29 2026, 4:04 PM

Change #1279423 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/deployment-charts@master] dse-k8s: adding more opensearch namespaces

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

Change #1279423 merged by jenkins-bot:

[operations/deployment-charts@master] dse-k8s: adding more opensearch namespaces

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

applying admin_ng for dse-k8s-*

root@deploy1003:~# charlie --services_dir admin_ng -e 'dse-k8s-*' diff 2>&1 | less -rS
root@deploy1003:~# charlie --services_dir admin_ng -e 'dse-k8s-*' apply
root@deploy1003:~# charlie --services_dir admin_ng -e 'dse-k8s-*' diff
[. dse-k8s-eqiad] No diffs.
[. dse-k8s-codfw] No diffs.

Change #1280515 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/deployment-charts@master] dse-k8s: deploy additional opensearch clusters

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

Change #1280515 merged by jenkins-bot:

[operations/deployment-charts@master] dse-k8s: deploy additional opensearch clusters

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

Change #1281462 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/dns@master] wmnet: add additional opensearch clusters

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

Change #1281462 merged by Atsuko:

[operations/dns@master] wmnet: add additional opensearch clusters

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

Change #1282920 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/puppet@production] service::catalog: Add opensearch-ttmserver-test

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

Change #1282920 merged by Atsuko:

[operations/puppet@production] service::catalog: Add opensearch-ttmserver-test

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

Rolled out opensearch-ttmserver-test in both dse-k8s-codfw and dse-k8s-eqiad

atsuko@deploy1003:~$ kube_env opensearch-ttmserver-test-deploy dse-k8s-eqiad 
atsuko@deploy1003:~$ kubectl get po
NAME                                                    READY   STATUS      RESTARTS   AGE
opensearch-ttmserver-test-bootstrap-0                   1/1     Running     0          7m51s
opensearch-ttmserver-test-masters-0                     1/1     Running     0          7m51s
opensearch-ttmserver-test-masters-1                     1/1     Running     0          3m17s
opensearch-ttmserver-test-masters-2                     0/1     Running     0          103s
opensearch-ttmserver-test-securityconfig-update-6gzzg   0/1     Completed   0          7m51s
atsuko@deploy1003:~$ curl https://opensearch-ttmserver-test.svc.eqiad.wmnet:30443/_cat/nodes
10.67.24.210 43 61 2 2.53 2.96 2.48 dm cluster_manager,data * opensearch-ttmserver-test-masters-1
10.67.25.218 56 63 1 3.94 4.05 3.88 dm cluster_manager,data - opensearch-ttmserver-test-masters-0
10.67.30.23   9 61 4 1.27 1.47 1.83 dm cluster_manager,data - opensearch-ttmserver-test-masters-2
atsuko@deploy1003:~$ curl https://opensearch-ttmserver-test.svc.eqiad.wmnet:30443/_cat/health
1777985187 12:46:27 opensearch-ttmserver-test green 3 3 true 12 4 0 0 0 0 - 100.0%

Change #1287388 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/puppet@production] services_proxy: isetting up toolhub and ttmserver

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

Change #1287388 merged by Atsuko:

[operations/puppet@production] services_proxy: isetting up toolhub and ttmserver

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

Change #1287428 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/puppet@production] services_proxy: enabling toolhub and ttmserver

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

Change #1287428 merged by Atsuko:

[operations/puppet@production] services_proxy: enabling toolhub and ttmserver

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

Change #1295901 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/puppet@production] service: services_proxy: prod opensearch-on-k8s services

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

Change #1295901 merged by Atsuko:

[operations/puppet@production] service: services_proxy: prod opensearch-on-k8s services

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

Change #1296539 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/deployment-charts@master] opensearch-cluster: anonymous access for ttmsearch and toolhub

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

Change #1296539 merged by jenkins-bot:

[operations/deployment-charts@master] opensearch-cluster: anonymous access for ttmsearch and toolhub

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

Change #1296608 had a related patch set uploaded (by Atsuko; author: Atsuko):

[operations/puppet@production] services_proxy: switch to prod opensearch-on-k8s services

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

Change #1296608 merged by Atsuko:

[operations/puppet@production] services_proxy: switch to prod opensearch-on-k8s services

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