Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/opensearch-project/opensearch-k8s-operator
OpenSearch Kubernetes Operator
https://github.com/opensearch-project/opensearch-k8s-operator
autoscaler k8s kubernetes kubernetes-operator monitoring opensearch operator upgrades
Last synced: 3 days ago
JSON representation
OpenSearch Kubernetes Operator
- Host: GitHub
- URL: https://github.com/opensearch-project/opensearch-k8s-operator
- Owner: opensearch-project
- License: apache-2.0
- Created: 2021-12-13T16:27:39.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-11-25T19:53:46.000Z (about 1 month ago)
- Last Synced: 2025-01-03T01:09:15.502Z (3 days ago)
- Topics: autoscaler, k8s, kubernetes, kubernetes-operator, monitoring, opensearch, operator, upgrades
- Language: Go
- Homepage:
- Size: 32.6 MB
- Stars: 411
- Watchers: 29
- Forks: 223
- Open Issues: 119
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
![build](https://github.com/opensearch-project/opensearch-k8s-operator/actions/workflows/docker-build.yaml/badge.svg) ![test](https://github.com/opensearch-project/opensearch-k8s-operator/actions/workflows/testing.yaml/badge.svg) ![release](https://img.shields.io/github/v/release/opensearch-project/opensearch-k8s-operator) [![Golang Lint](https://github.com/opensearch-project/opensearch-k8s-operator/actions/workflows/linting.yaml/badge.svg)](https://github.com/opensearch-project/opensearch-k8s-operator/actions/workflows/linting.yaml) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/opensearch-operator)](https://artifacthub.io/packages/search?repo=opensearch-operator)
# OpenSearch Kubernetes Operator
The Kubernetes OpenSearch Operator is used for automating the deployment, provisioning, management, and orchestration of OpenSearch clusters and OpenSearch dashboards.
## Getting started
The Operator can be easily installed using helm on any CNCF-certified Kubernetes cluster. Please refer to the [User Guide](./docs/userguide/main.md) for installation instructions.
## Roadmap
- Auto-Scaler.
- OpenShift support.
- Data-prepper support.## Current feature list
Features:
- [x] Deploy a new OS cluster.
- [x] Ability to deploy multiple clusters.
- [x] Spin up OS dashboards.
- [x] Configuration of all node roles (master, data, coordinating..).
- [x] Scale the cluster resources (manually), per nodes' role group.
- [x] Drain strategy for scale down.
- [x] Version updates.
- [x] Change nodes' memory allocation and limits.
- [x] Secured installation features.
- [x] Certificate management.
- [x] Rolling restarts - through API.
- [x] Scaling nodes' disks - increase disk size.
- [x] Cluster configurations and nodes' settings updates.
- [x] Operator Monitoring, with Prometheus and Grafana.## Installation
The Operator can be easily installed using Helm:
1. Add the helm repo: `helm repo add opensearch-operator https://opensearch-project.github.io/opensearch-k8s-operator/`
2. Install the Operator: `helm install opensearch-operator opensearch-operator/opensearch-operator`## OpenSearch Kubernetes Operator installation & demo video
[![Watch the video](https://opster.com/wp-content/uploads/2022/05/Operator-Installation-Tutorial.png)](https://player.vimeo.com/video/708641527)
## Compatibility
The opensearch k8s operator aims to be compatible to all supported opensearch versions. Please check the table below for details:
| Operator Version | Min Supported Opensearch Version | Max Supported Opensearch Version | Comment |
| ----------------------------------------------------------- | -------------------------------- | -------------------------------- | ------------------------------------------- |
| 2.7.0
2.6.1
2.6.0
2.5.1
2.5.0 | 1.3.x | latest 2.x | Supports the latest OpenSearch 2.x version. |This table only lists versions that have been explicitly tested with the operator, the operator will not prevent you from using other versions. Newer minor versions (2.x) not listed here generally also work but you should proceed with caution and test it our in a non-production environment first.
## Development
If you want to develop the operator, please see the separate [developer docs](./docs/developing.md).
## Contributions
We welcome contributions! See how you can get involved by reading [CONTRIBUTING.md](./CONTRIBUTING.md).