Which OpenSearch deployment model fits your team
If your team already runs CNCF-conformant Kubernetes and operates it confidently, the OpenSearch Kubernetes Operator is the model to evaluate first. If you want Kubernetes packaging but will own more of the lifecycle yourself, the community Helm charts fit. If you have no Kubernetes skills, or you need direct control over kernel settings, disks and host-level hardening, install on virtual machines. All three are documented installation methods for OpenSearch, and the operator and the charts are both released under Apache 2.0, so license is not the deciding factor. The decision turns on who will run the cluster day to day and how much of the upgrade, certificate and scaling work you want automated.
The operator suits a security or platform team that already manages node pools, persistent volumes and Helm releases. It automates node pools with all node roles, manual scaling per pool, rolling version upgrades with quorum-safe restarts, online volume expansion and TLS certificate management with hot reloading. The operator is installed with Helm on any CNCF-certified cluster, and its README compatibility table lists operator 2.8.0 and 3.0.0 as supporting OpenSearch 2.19.2 up to the latest 3.x release. Check that table against the OpenSearch version you intend to run before you commit. The charts give you the Kubernetes packaging but leave node topology, upgrade sequencing and certificate rotation to your own runbooks, so budget for that ongoing work.
VM installs, through Debian or RPM packages, a tarball, or the Ansible playbook, remain the simplest path for a team without Kubernetes skills. They also give you direct control of vm.max_map_count, which must be at least 262144 for production Linux workloads, and of bootstrap.memory_lock and the Java heap, which the documentation sets to half of system RAM. Whichever model you pick, confirm in writing who owns host tuning, the demo security configuration (disable it with DISABLE_INSTALL_DEMO_CONFIG if you do not want it), and the upgrade procedure, because those responsibilities differ sharply between the three.
Operator, Helm charts and VM installs side by side
This table compares the OpenSearch Kubernetes Operator, the community Helm charts and VM installs on what each one automates, how upgrades, TLS and node pools are handled, who tunes the host, and which skills each assumes. Read each row as the division of labor between the tool and your team. The main takeaway is that the operator automates the most lifecycle work but requires Kubernetes operations skills, while VM installs keep the fewest moving parts but leave every lifecycle task to your staff.
| Dimension | Kubernetes operator | Community Helm charts | VMs (Debian, RPM, tarball, Ansible) |
|---|---|---|---|
| Licensing | Apache-2.0 per the operator README | Apache 2.0 per the helm-charts repository | Apache-2.0 for OpenSearch itself, no paid edition in the OpenSearch FAQ |
| What is automated | Deployment, provisioning, management and orchestration of clusters and OpenSearch Dashboards | Templated deployment of the opensearch and opensearch-dashboards charts | Package install; configuration, scaling and recovery are manual or handled by your Ansible playbooks |
| Node pools and roles | Multiple node pools, all node roles, manual scaling per node pool | Defined through chart values; confirm multi-pool layouts in the chart documentation | Defined by how you provision each host and its configuration files |
| Rolling upgrades | Rolling version upgrades with quorum-safe restarts | Upgrades are performed through chart changes; confirm quorum-safe sequencing with the chart maintainers | Upgrade order, restarts and quorum checks are run by your team, per the OpenSearch upgrade docs |
| TLS and certificates | Certificate management with hot reloading, per the operator README | Configured through chart values and secrets; confirm rotation and reload behavior | Configured in opensearch.yml and certificate files; rotation and reload are your process |
| Demo security config at startup | Not described as a default in the operator README; confirm with the project | Demo config runs unless DISABLE_INSTALL_DEMO_CONFIG is true, and chart 2.18.0 with OpenSearch 2.12.0 or later needs a custom admin password | Set security configuration and admin credentials yourself during install |
| Host tuning responsibility | Node-level settings such as vm.max_map_count depend on your Kubernetes nodes; confirm how your cluster applies them | Same node-level settings apply on your Kubernetes hosts; the chart does not replace them | Your team sets vm.max_map_count to at least 262144, the heap to half of RAM and memory locking per the install docs |
| Storage expansion | Online volume expansion supported | Depends on your storage class and Kubernetes configuration; confirm with the chart | Disk growth and volume management are host tasks |
| Skills assumed | Kubernetes operations, Helm, CRD and operator troubleshooting | Kubernetes operations and Helm, with more manual lifecycle work | Linux administration, systemd, configuration management and runbooks |
How each model is built and what it depends on
The OpenSearch Kubernetes Operator is an Apache-2.0 controller that automates deployment, provisioning, management and orchestration of OpenSearch clusters and OpenSearch Dashboards. You install the operator itself with Helm on any CNCF-certified Kubernetes cluster, and after that it reconciles the cluster you declare. Its documented capabilities include multiple node pools, all node roles, manual scaling per node pool, rolling version upgrades with quorum-safe restarts, online volume expansion and TLS certificate management with hot reloading.
- Helm-installed controller: The operator runs as a workload in your cluster, so the cluster itself becomes a dependency you must upgrade, back up and secure.
- Node pools and roles: You can separate master, data, ingest and coordinating roles across pools that scale independently.
- Quorum-safe upgrades: Version changes restart nodes in a sequence the operator manages, which matters most when you cannot take the cluster offline.
- Compatibility table: The README shows operator 2.8.0 and 3.0.0 supporting OpenSearch 2.19.2 up to the latest 3.x release, so confirm the pairing before you choose a version.
- Kubernetes lifecycle: Kubernetes maintains only its three most recent minor releases, so your cluster upgrades become part of the OpenSearch upgrade plan.
Confirm with your platform team that you already run a conformant cluster with storage classes, backups and RBAC in place, because the operator does not supply those.
The opensearch-project/helm-charts repository is a community repository that provides the opensearch and opensearch-dashboards charts under Apache 2.0. A chart renders the Kubernetes objects for a cluster and installs them, but it does not run a controller that keeps the cluster in a desired state afterward. Day-two work such as scaling pools, rotating certificates, expanding volumes and sequencing upgrades remains with your operators, usually through pipeline changes and runbooks.
- Demo security configuration: The charts run the demo security configuration script at startup unless
DISABLE_INSTALL_DEMO_CONFIGis set to true, so disable it before any non-test deployment. - Admin password requirement: Chart 2.18.0 with OpenSearch 2.12.0 or later requires a custom admin password, or the cluster will not start.
- Secrets handling: Admin credentials and TLS material are supplied through Kubernetes objects, so you must decide how they are stored and rotated.
- Upgrade sequencing: You plan rolling restarts yourself, which raises the value of tested runbooks and staging clusters.
- Dashboards as a separate chart: The dashboards chart is installed and versioned alongside the cluster chart, so check that the two releases match.
Before you adopt the charts, ask who will write and maintain the upgrade and certificate procedures after the initial install.
The OpenSearch installation documentation lists Debian packages, RPM packages, a tarball, an Ansible playbook and Windows among its methods, alongside Docker and Kubernetes options. On virtual machines, the host operating system, its kernel settings and its service manager become part of the cluster design. Because the node is an ordinary Linux host, your existing configuration management, patching and backup tooling carries over, but you must set host tuning correctly on every node.
- Kernel setting: For production Linux workloads,
vm.max_map_countmust be at least 262144. - Java heap: The documentation recommends a Java heap of half of system RAM.
- Swap control: Set
bootstrap.memory_lockto disable swapping, because swapping can dramatically decrease performance and stability. - Ansible playbook: It automates package installation and configuration, but you still own the inventory, variables and any drift after first run.
- Node placement and upgrades: You decide how VMs are spread across hypervisors and how rolling restarts are sequenced.
Ask your team to confirm how these host settings will be enforced and audited on each node, since a single unconfigured VM can behave differently from the rest.
What running OpenSearch on Kubernetes asks of your platform
Both the OpenSearch Kubernetes Operator and the community Helm charts run on top of a Kubernetes cluster that you operate, so the cluster's own upkeep becomes part of the OpenSearch bill of work. The operator automates node pools, rolling upgrades and TLS certificate hot reloading, but it does not upgrade Kubernetes, rotate the control plane or back up etcd for you. The charts leave even more to your team. Before you pick either model, confirm who owns the Kubernetes layer, because that owner carries the upgrade calendar. Kubernetes ships roughly three minor releases per year on cycles of about 14 weeks, and the project maintains only the three most recent minors. As of September 2026 those were 1.37 (end of life October 28, 2027), 1.36 (June 28, 2027) and 1.35 (February 28, 2027). Plan a standing upgrade every few months rather than an occasional project. The version skew policy requires kube-apiserver to move first, one minor at a time, before kube-controller-manager, kube-scheduler and kubelets, and kubelets may trail the API server by up to three minors. That gives you a workable window, but it also means an OpenSearch node pool can sit on an older kubelet for longer than you expect. Check the exact support dates on kubernetes.io before you commit to a distribution.
A production control plane needs more than upgrades. The kubeadm high availability guide describes a stacked topology with etcd on the control plane nodes or an external etcd cluster, with at least three control plane nodes behind a TCP load balancer on port 6443. Kubernetes documentation says etcd should run with an odd number of members, recommends five in production, and requires a tested backup plan using etcdctl snapshot save and etcdutl for restores. Kubernetes Secrets are stored unencrypted in etcd by default, so the cluster needs encryption at rest, least-privilege RBAC and a decision on whether OpenSearch credentials come from an external store. Ask whoever runs the cluster to show a restore drill, not only a backup job.
Confirm which Kubernetes distribution you will use and what its support contract covers: patch cadence, the minor versions it supports, who handles etcd backup and restore, and who is on call for control plane incidents. Certified distributions are listed through the CNCF conformance program, but conformance only confirms API support, not operations. If your team has no Kubernetes skills today, price that gap in staff training or a support retainer before you choose the operator over a VM install.
What the operator automates and what it leaves to you
The OpenSearch Kubernetes Operator takes over repetitive lifecycle work inside a cluster, while capacity, backup and data design stay with your team. Each card below pairs a documented operator capability with the decision or check that remains yours.
Node pools and node roles
The operator deploys clusters as multiple node pools and supports all node roles, so you can separate, for example, cluster manager, data and ingest capacity into distinct groups. The operator provisions and manages these pools, but it does not decide how many nodes each role needs. Check shard counts, heap sizing and the role layout against your log volume and retention before you write the pool definitions.
Per node pool scaling
Scaling is manual and applied per node pool, so you change the replica count for the pool that is under pressure instead of the whole cluster. The operator carries out the change, but it does not detect that a cluster needs more capacity. Your team still owns the trigger, whether that is disk watermarks, indexing latency or search load, and the review that decides when to add nodes.
Rolling upgrades with quorum-safe restarts
The operator performs rolling version upgrades and restarts nodes in a quorum-safe order, which avoids taking the cluster manager quorum down at once. It does not check whether a version change is compatible with your plugins, client libraries or index formats. Review the OpenSearch release notes and test the target version in a non-production cluster before you change the version field.
Online volume expansion
The operator supports online volume expansion, so persistent volumes for data nodes can grow without taking the cluster offline. It does not reclaim space, rebalance shards or guarantee that the storage class supports resizing. Confirm that your storage class allows volume expansion and that your storage team has a growth forecast tied to retention settings.
TLS certificate management with hot reload
The operator manages TLS certificates for the cluster and reloads them without a restart, which simplifies rotation for node and client traffic. It does not replace your certificate authority or define your trust chain. Decide who owns the CA, how revocation is handled and how the rotated certificates are monitored before expiry.
Dashboards lifecycle and what stays with you
The operator also deploys and manages OpenSearch Dashboards alongside the cluster. Backups, snapshot repositories, index lifecycle policies and cluster sizing are not removed by this automation, so you still need to plan where snapshots are stored, how long they are kept and whether the cluster can absorb your log volume. Confirm these designs with your platform and security owners before go-live.
Host tuning and upgrades on VM installs
On VM installs, the host is the part of the deployment you own completely, so the documented production settings become your checklist. OpenSearch's installation docs say vm.max_map_count must be at least 262144 on production Linux workloads, the Java heap should be set to half of system RAM, and bootstrap.memory_lock should be enabled so the JVM is not swapped out, because swapping can dramatically decrease performance and stability. Each node needs these values applied and kept applied across reboots. Under the operator, the same settings are expressed through the cluster spec and Kubernetes node configuration, and the operator manages the pods. On VMs, nothing enforces them except your configuration management, so confirm them with a check on every node after each build and each change.
The four install routes differ mainly in how repeatable the result is. Debian and RPM packages give you a systemd-managed service and standard package upgrades, but the tuning, the opensearch.yml contents and the security setup still have to be applied by hand or by your own scripts, so drift between nodes is common. A tarball install is the most manual, since you also own the service unit, the user, the file paths and the upgrade procedure. The Ansible playbook documented by the OpenSearch project is the route closest to infrastructure-as-code without Kubernetes: the host settings, heap sizing and node configuration live in version-controlled variables, and a rebuilt node follows the same path as the original. Before you adopt it, read the playbook's variables and confirm that they cover the three tuning settings, TLS and your security configuration, because the playbook covers what its maintainers chose to cover.
Plan upgrades around the maintenance policy. OpenSearch versions stay in maintenance until the next major version enters maintenance or one year passes, whichever is longer, and during maintenance they receive bug fixes and security patches but no new features. The 2.19 line still shipped 2.19.6 on July 6, 2026, while 3.9.0 shipped on September 29, 2026, and a new minor version is targeted about every eight weeks. This means a VM fleet on a maintained 2.x line can take patches without a major change, but moving to 3.x is a planned migration with its own testing. Ask the vendor or your integrator to confirm the current support end date for the line you run before you schedule the work, and rehearse rolling restarts on a non-production copy, since a VM cluster has no operator enforcing quorum-safe restarts for you.
Who runs upgrades, backups, monitoring and security on each model
This table shows who carries each operating task under the Kubernetes operator, the community Helm charts and VM installs. Read each row as a question to put to your own team before choosing a model. The main takeaway is that the operator automates more of the cluster lifecycle, while the charts and VM installs push more of that work onto your staff.
| Task | Kubernetes operator | Helm charts | VM installs |
|---|---|---|---|
| Rolling version upgrades | Operator performs rolling upgrades with quorum-safe restarts, per its README. Your team still plans the target version and tests it. | Chart upgrades are run by your team with Helm, and node restarts and quorum checks are your responsibility. Confirm the chart version matches the OpenSearch version. | Your team runs package or tarball upgrades node by node, checks cluster health between steps and handles any rollback. Confirm the upgrade order against the OpenSearch upgrade docs. |
| Node pools and scaling | Operator manages multiple node pools and all node roles, with manual scaling per pool. Confirm pool sizing against your data volume. | Your team defines StatefulSets and values files for each role and scales them by hand. Confirm the layout is documented in your repo. | Your team provisions each node, sets roles in the configuration and joins it to the cluster. Confirm the inventory is kept in code. |
| Backups and restore | Snapshot repository and schedules are not described as operator-managed in the supplied material. Confirm with the operator documentation who configures and tests snapshots. | Snapshot repositories and schedules are your responsibility. Test restores on a separate cluster and record the time they take. | Snapshot repositories, retention and restore drills are your responsibility on every node. Confirm the storage target and access controls. |
| Certificate rotation | Operator manages TLS certificates with hot reloading, per its README. Confirm how your CA and issuer integrate with it. | Certificates are created and rotated by your team, usually through cert-manager or your PKI. Confirm reload behavior on each pod. | Your team issues, distributes and rotates node and client certificates, and reloads each node. Confirm how the CA is kept. |
| Admin credentials | The demo security configuration runs at startup unless disabled. Replace the admin password and store it in a Kubernetes secret store, noting that Kubernetes Secrets are unencrypted in etcd by default. | The chart 2.18.0 with OpenSearch 2.12.0 or later requires a custom admin password, or the cluster will not start. Disable the demo script with DISABLE_INSTALL_DEMO_CONFIG set to true. | Your team must disable the demo configuration, set the admin password and restrict the file permissions on each node. Confirm where the secret is stored. |
| Access control via the Security plugin | SAML, OIDC, LDAP and RBAC are configured through the Security plugin, applied after the cluster starts. Confirm who owns the role mappings in code. | SAML, OIDC, LDAP and RBAC are configured through the Security plugin, usually with values or mounted files. Confirm who reviews role changes. | SAML, OIDC, LDAP, Kerberos and RBAC are configured on each node or through the Security plugin API. Confirm the change process for role mappings. |
| Audit logs and monitoring | Audit logs and cluster metrics must be shipped and retained by your team. Confirm the operator exposes the metrics you need. | Audit logs and cluster metrics must be shipped and retained by your team, usually through your existing Prometheus or log stack. Confirm dashboards exist. | Audit logs and host metrics must be collected from each VM. Host-level alerts for disk, memory and swap are your responsibility. |
| On-call skills needed | Kubernetes operations, Helm, OpenSearch cluster health and Security plugin administration. Staff without Kubernetes skills will need training or a partner before going live. | Helm, Kubernetes and OpenSearch administration. Staff must read chart values and debug pods and volumes in addition to the cluster. | Linux administration, systemd, kernel tuning such as vm.max_map_count, and OpenSearch administration. This model suits teams that already run Linux fleets. |
How to pick a model in four decisions
This sequence helps a team narrow the three OpenSearch run models to one before any build work starts, by checking skills, lifecycle ownership, host control and the version line. Treat it as a guide to structure the decision, not as a rule that settles it.
Check Kubernetes operating skill
Start by asking whether the team already runs Kubernetes in production, including upgrades, RBAC, persistent volumes and certificate handling. Ask who on the team would be paged when a pod or volume misbehaves at night. If the answer is nobody, the operator model carries a skills gap that no chart or playbook removes. Done when the team has named the people who would own the cluster and confirmed their hands-on experience in writing.
Confirm an existing conformant cluster
Next, confirm whether the organization already operates a cluster that passes CNCF Certified Kubernetes conformance, and whether its control plane is highly available. The operator is installed with Helm on any conformant cluster, so an existing platform makes that path viable. If no such cluster exists, building one is a separate project with its own etcd backup plan and load balancer, and it belongs in the scope of the decision. Done when the platform owner confirms the cluster name, distribution and HA topology.
Map the lifecycle work you can own
List the recurring tasks the cluster will need: rolling version upgrades, scaling node pools, expanding volumes, rotating TLS certificates, snapshot and restore testing and patching the hosts. The operator automates several of these, including quorum-safe rolling upgrades, online volume expansion and TLS hot reloading. The Helm charts leave most of them to your runbooks. VMs leave all of them to you. Done when each task has a named owner and a documented method, so you can see which model shifts work onto your team.
Decide who controls host tuning
Decide whether the platform team or a separate server team controls the hosts that run OpenSearch. The OpenSearch installation docs require vm.max_map_count of at least 262144, a Java heap of half of system RAM, and bootstrap.memory_lock to stop swapping. On Kubernetes these settings still need to reach the nodes, so ownership of node configuration matters in every model. Done when the team has written who sets kernel parameters, who approves changes and where they are recorded.
Confirm the version line and maintenance window
Before committing, check which OpenSearch minor line you plan to run and when it leaves maintenance. Per the OpenSearch releases page, a version stays under maintenance until the next major enters maintenance or one year passes, whichever is longer, and maintenance brings security patches but no new features. Also confirm the operator compatibility table includes your target OpenSearch line, and that the chart version supports it. Done when the chosen version, its support end date and the matching operator or chart release are written into the design record.
Test the chosen model on a non-production cluster
Deploy the chosen model to a non-production environment that matches the production network, identity and storage setup. Run a rolling upgrade, a node restart, a volume expansion and a certificate rotation, and record how each behaves. Confirm that the admin password is set explicitly if you use the Helm charts, since chart 2.18.0 with OpenSearch 2.12.0 or later will not start without one. Done when the test log shows each operation completed with no data loss and the runbook matches what you observed.
Record the model decision and its exit path
Write the decision, the reasons behind it and the conditions that would trigger a change, such as a lack of Kubernetes skills or a need to move between models. Note that all three models run the same OpenSearch software, so moving between them is a migration of the deployment, not of the data format. Ask a provider or your own engineers to confirm the migration steps for your chosen path. Done when the record is approved by the platform owner, security lead and the team that will run the cluster.
Questions teams ask before choosing an OpenSearch deployment model
Which OpenSearch deployment model is cheapest to run?
No model is cheapest in every environment. The cost depends on who carries the lifecycle work and what the platform underneath costs. The operator and the Helm charts both need a Kubernetes cluster, so you pay for its control plane, nodes, storage and the people who patch it. VM installs skip that platform layer but leave node provisioning, configuration management and rolling upgrades to your team. Ask any vendor or partner to price each model against the same node count, retention period, upgrade cadence and on-call coverage, then compare the recurring staff time rather than the one-time setup work.
How long does a first OpenSearch deployment take?
It depends on the written scope and your environment. The main variables are whether a Kubernetes cluster already exists, how many node pools and roles you need, how TLS and identity integration are set up, how storage is provisioned, and how many approval steps your change process requires. A VM install with a prepared Ansible playbook can be quick in a stable environment, while a new Kubernetes platform adds work before OpenSearch is involved. Ask for the phases, dependencies and client responsibilities in the scope document before you plan a go-live date.
Can a team without Kubernetes skills run the OpenSearch Kubernetes Operator?
Usually not without help, because the operator assumes someone can operate the cluster beneath it. The operator automates node pools, rolling version upgrades, online volume expansion and TLS certificate management, but it still needs a CNCF-certified cluster, Helm for installation, and people who can troubleshoot pods, storage and networking. If your team has no Kubernetes operations experience, either build that skill first, choose a VM install you can maintain with existing tools, or agree on a partner to run the platform layer under a written scope.
What does the work need from our side?
Plan for cluster access, certificate authority decisions, storage classes and change windows before the work starts. For the operator and charts, you need a Kubernetes cluster with credentials for the namespace, a storage class that supports the volume sizes you need, and a way to issue or import node and admin certificates. For VM installs, you need SSH or configuration management access, host kernel settings, disk layout and package sources. Every model needs agreed maintenance windows for rolling restarts and upgrades, plus named owners for approvals, backups and incident response.
Can the OpenSearch Helm charts be used in production?
The charts can be used as a starting point, but production use depends on what you add around them. The OpenSearch Helm charts are a community repository under Apache 2.0, and their README notes that the demo security configuration runs at startup unless DISABLE_INSTALL_DEMO_CONFIG is set to true. Chart 2.18.0 with OpenSearch 2.12.0 or later requires a custom admin password or the cluster will not start. Charts do not automate rolling upgrades, certificate rotation or node pool management the way the operator does, so you must confirm who owns those tasks, how backups are tested and how the release is tracked against OpenSearch's maintenance windows.
How are the Security plugin and TLS handled in each model?
The Security plugin is part of OpenSearch, so SAML, OpenID Connect, LDAP, Kerberos, JWT, role-based access control, document and field level security and audit logs are configured in every model, but the way you apply them differs. The operator manages TLS certificates with hot reloading, while charts and VM installs rely on you to create, mount, rotate and reload them. Confirm how security configuration files are versioned and promoted between environments, who holds the admin credentials, and how you test that identity changes do not lock out operators.
Can DeployOpen implement, harden and support any of these three models under a fixed-scope agreement?
DeployOpen plans, implements, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside your own infrastructure, and most engagements are fixed-scope with scope, deliverables and timelines agreed in writing before work starts. Which model fits depends on your Kubernetes maturity, your existing automation and your retention and compliance needs, so the scoping conversation should start there. Ongoing support, upgrades and continuous testing are available as retainers. DeployOpen does not publish a price list, and a quote follows from the written scope. DeployOpen prepares systems and evidence for compliance assessments but does not issue audit reports or certifications.
What it costs to move between models later
All three models run the same OpenSearch software, so the data and cluster configuration can move between them in principle. What differs is the operational contract each model puts around that software. On the operator, persistent volumes, node pools and TLS certificates are managed through custom resources. On the Helm charts, those same concerns live in values files and the Kubernetes objects they render, which you maintain. On VMs, the contract is host configuration: vm.max_map_count, the Java heap, bootstrap.memory_lock, data paths and certificate files on each node. Moving from one model to another means rebuilding that contract on the new side, so the migration effort depends on how much of the old setup was hand-maintained.
Migration in principle is supported by the lineage of the software. OpenSearch is wire-compatible with Elasticsearch 7.10, can use indices from Elasticsearch 6.0 through 7.10, and supports rolling upgrades from those versions, according to the OpenSearch FAQ. That path is documented context for moving data forward through versions, not a documented route for changing deployment model. Before you assume a move between the operator, the charts and VMs is routine, confirm the steps with the vendor and rehearse them in a test environment that mirrors your certificates, storage layout and Helm values. Ask specifically how the operator adopts an existing cluster, how the charts handle an existing data volume, and what the rollback path is if the cutover fails.
Plan for the one-time and recurring costs separately. The one-time cost is the rebuild of persistent volume claims, certificate issuance and host tuning on the new side, plus the test cycles needed to prove the move. The recurring cost is whichever model you keep, since the operator reduces hand-run upgrade steps, while the charts and VMs leave more of that work with your team. If you expect to change models later, record the current opensearch.yml settings, the Helm values or operator resources, and the certificate chain in version control, so the next move starts from documented state rather than from memory.
How DeployOpen scopes and runs OpenSearch deployments
DeployOpen plans, implements, hardens, documents and supports self-hosted open-source platforms inside your own cloud accounts, data centers or air-gapped networks. For OpenSearch, that starts with choosing the install model your team can actually operate, then agreeing the work in a written, fixed scope before any build begins.
How we scope
- We confirm whether the cluster will run on Kubernetes with the operator, on Helm charts, or on virtual machines, and record the reasons.
- The written scope lists node pools, node roles, TLS and certificate handling, storage, and the backup and upgrade process for your OpenSearch version.
- We ask you to confirm your Kubernetes skills, change window policy, and which OpenSearch version your use case requires before quoting.
How we build
- We deploy the agreed install method in your environment and apply the host tuning or operator settings that the chosen model requires.
- We configure the Security plugin for your identity provider, role mappings, audit logging, and TLS for node and client traffic.
- We test failover, rolling restarts, and backup restores against the agreed scope before the environment is accepted.
How we hand over
- You receive documentation of the deployed architecture, configuration files, and the procedures for scaling, certificate rotation, and upgrades.
- Runbooks name the owner of each task, so your team knows which steps belong to them and which belong to the platform.
- Knowledge transfer sessions walk your operators through the install model, including what a failed node or stuck upgrade looks like.
How we support
- Ongoing support, upgrades, and continuous testing are available as a retainer, sized to the written scope of your cluster.
- Retainer work covers tracking OpenSearch maintenance windows and planning version upgrades before a line falls out of maintenance.
- Security testing of the deployed cluster is scoped separately, so findings and fixes are tracked against the agreed deliverables.

