Beta cluster and relforge are pre-production cirrussearch environments. They don't require the exact production Puppet code, merely an OpenSearch instance with the same plugins as production. Using the same Puppet code in deployment-prep as in Cirrussearch prod increases DPE's support burden, as:
- Changes to production Puppet code can potentially break deployment-prep
- Puppet failures in deployment-prep break SSH login and set off alerts and phab tasks
- Puppet hieradata is managed in a different way that can't be directly changed with git/gerrit.
Since we have Docker images for OpenSearch now, I'm going to experiment with a lighter-weight plan that uses service::docker Podman and Quadlet to host the Docker images. This should enable us to change production without inadvertently breaking deployment-prep.
Scope update: Relforge is no longer in scope, only beta cluster remains in scope.
Creating this ticket to:
- Create Puppet plan for service::docker that uses our OpenSearch images.
- Create Puppet role for
relforge/beta cluster that applies the above.