-
-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Description
OpenSearch node types
An OpenSearch node (instance) can take one or several of the following node types:
- Cluster manager
- Cluster manager eligible
- Data
- Ingest
- Coordinating
- Dynamic
- Warm
- Search
see https://docs.opensearch.org/docs/latest/tuning-your-cluster/#nodes
A typical cluster only contains some node types and some nodes consist of several types, e.g.
- 3 nodes of type ["Cluster manager"]
- 8 nodes of type ["Data", "Ingest", "Coordinating"]
Proposed solution
Every node type is modelled as a separate role, but extra types per role can be defined on role or role-group level, e.g.
---
apiVersion: opensearch.stackable.tech/v1alpha1
kind: OpenSearchCluster
metadata:
name: opensearch
spec:
clusterManager: # implicit node type "Cluster manager"
roleGroups:
default:
replicas: 3
data: # implicit node type "Data"
extraNodeTypes: # set the node types of the role-groups to ["Data", "Ingest", "Coordinating"]
- ingest
- coordinating
roleGroups:
hot:
replicas: 2
warm:
extraNodeTypes: # set the node type of the role-group to ["Data", "Ingest", "Coordinating", "Warm"]
- warm
replicas: 6
Advantages:
- Role and role-group configurations are similar to the other operators.
Disadvantages:
- In a typical setup,
extraNodeTypes
must be defined.
Alternative solution
There is only the role "nodes" with the implicit types ["Cluster manager eligible", "Data", "Ingest", "Coordinating']. The node types can be overriden at the role-group level:
---
apiVersion: opensearch.stackable.tech/v1alpha1
kind: OpenSearchCluster
metadata:
name: opensearch
spec:
nodes: # implicit node types ["Cluster manager eligible", "Data", "Ingest", "Coordinating']
roleGroups:
clusterManager:
nodeTypes: # overrides the implicit node types
- clusterManager
replicas: 3
dataHot:
nodeTypes: # overrides the implicit node types
- data
- ingest
- coordinating
replicas: 2
dataWarm:
nodeTypes: # overrides the implicit node types
- data
- ingest
- coordinating
- warm
replicas: 6
Advantages:
- Simple clusters work out of the box without the need to configure node types.
- The configuration is closer to the Helm chart where node types are configured via
node.roles
.
Disadvantages:
- The role/role-group configuration is different to other operators.
- Configurations at the role level are not as useful as in the proposed solution.
- Role-groups should be named more carefully, e.g. the role-group names of data nodes should contain the term "data".
Metadata
Metadata
Assignees
Labels
No labels