Page MenuHomePhabricator

Import/adapt OpenSearch Operator and OpenSearch Cluster 3.x helm charts
Open, MediumPublic

Description

Per parent task, we have committed to testing the OpenSearch 3.x operator and helm charts.

Creating this ticket to:

  • Import the 3.x helm chart and adapt for WMF
  • Verify operation

Minikube:

  • Create a cluster using our custom operator 3.x image
  • + our custom OpenSearch 3 image
  • + OpenSearch security configured properly (users are created with the correct passwords)

dse-k8s:

  • Create a cluster using our custom operator 3.x image
  • + our custom OpenSearch 3 image
  • + OpenSearch security configured properly (users are created with the correct passwords)
  • + disabling TLS at the pod level without disabling HTTP auth
  • + changing resources/limits
  • + deleting pods and ensuring the operator replaces them
  • +

Details

Related Changes in GitLab:
TitleReferenceAuthorSource BranchDest Branch
Reset the repo for 3.xrepos/search-platform/sre/opensearch-helm-charts!2bkingresetmain
Customize query in GitLab

Event Timeline

bking triaged this task as Medium priority.

Work done so far:

  • Split out charts
  • Deploy the operator CRDS, operator, and cluster charts in minikube using default values.

Next: we'll repeat the above steps, using the WMF images instead of upstream.

I've successfully bootstrapped a cluster in minikube using the WMF OpenSearch operator/WMF OpenSearch OCI images. That means we should be able to add the charts into the deployment-charts repo and start testing with our actual K8s clusters.

We can either replace the current charts for OpenSearch Operator, OpenSearch Operator CRDs, and OpenSearch cluster, or deploy them alongside the existing charts. Replacing the current charts is much cleaner, but it could get messy if we have to update the current 2.x chart after we replace it with a 3.x chart.

T419289 requires changes to the current 2.x chart, so we'll hold off on importing the new charts until that ticket is finished.

Per today's SRE standup, @BTullis asked if we could migrate to a newer version of the chart without migrating to the 3.x operator (which is in beta).

The answer is yes, we can stay on the 2.x operator and go to a newer version of the chart. But I think it would be more productive to focus on the 3.x operator, because the 3.x operator is a rewrite that purportedly fixes a lot of the problems with the 2.x operator†.

Thus, I tend to think we wouldn't get a lot of value out of moving to a newer chart without moving to the newer operator. Admittedly, I have not spun up a cluster on the latest chart + 2.x operator in awhile, but I'm happy to take a look if anyone thinks this is worth pursuing.

† See our docs for examples of things we have to do manually that are typically handled by an operator.