|
1 | | -= Stackable Operator for Apache Superset |
2 | | -:description: Stackable Operator for Apache Superset manages Superset clusters on Kubernetes for data exploration, SQL connections, and visualization. |
3 | | -:keywords: Stackable operator, Apache Superset, Kubernetes, operator, data science, data exploration |
4 | | -:superset: https://superset.apache.org/ |
| 1 | += Stackable Operator for OpenSearch |
| 2 | +:description: Stackable Operator for OpenSearch manages OpenSearch clusters on Kubernetes for data ingestion and search |
| 3 | +:keywords: Stackable operator, OpenSearch, Kubernetes, operator, data science, data exploration, search |
| 4 | +:opensearch: https://opensearch.org/ |
5 | 5 | :crs: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/ |
6 | | -:github: https://github.com/stackabletech/superset-operator/ |
7 | | -:crd: {crd-docs-base-url}/superset-operator/{crd-docs-version}/ |
8 | | -:crd-supersetcluster: {crd-docs}/superset.stackable.tech/supersetcluster/v1alpha1/ |
| 6 | +:github: https://github.com/stackabletech/opensearch-operator/ |
| 7 | +:crd: {crd-docs-base-url}/opensearch-operator/{crd-docs-version}/ |
| 8 | +:crd-opensearchcluster: {crd-docs}/opensearch.stackable.tech/opensearchcluster/v1alpha1/ |
9 | 9 | :feature-tracker: https://features.stackable.tech/unified |
10 | 10 |
|
11 | 11 | [.link-bar] |
12 | 12 | * {github}[GitHub {external-link-icon}^] |
13 | 13 | * {feature-tracker}[Feature Tracker {external-link-icon}^] |
14 | 14 | * {crd}[CRD documentation {external-link-icon}^] |
15 | 15 |
|
16 | | -The Stackable operator for {superset}[Apache Superset] deploys and manages Superset clusters on Kubernetes. |
17 | | -Superset is a data exploration and visualization tool that connects to SQL-based data sources. |
18 | | -Store your data in Apache Druid or Trino, and manage your Druid and Trino instances with the Stackable operators for xref:druid:index.adoc[Apache Druid] or xref:trino:index.adoc[Trino]. |
19 | | -This operator helps you manage your Superset instances on Kubernetes efficiently. |
| 16 | +The Stackable operator for {opensearch}[OpenSearch] deploys and manages OpenSearch clusters on Kubernetes. |
| 17 | +OpenSearch is a powerful search and analytics engine built on Apache Lucene. |
| 18 | +This operator helps you manage your OpenSearch instances on Kubernetes efficiently. |
20 | 19 |
|
21 | 20 | == Getting started |
22 | 21 |
|
23 | | -Get started using Superset with Stackable operator by following the xref:getting_started/index.adoc[]. |
24 | | -It guides you through installing the operator alongside a PostgreSQL database, connecting to your Superset instance and analyzing some preloaded example data. |
| 22 | +Get started using OpenSearch with the Stackable operator by following the xref:getting_started/index.adoc[]. |
| 23 | +It guides you through installing the operator, connecting to your OpenSearch instance and analyzing some preloaded example data. |
25 | 24 |
|
26 | 25 | == Operator model |
27 | 26 |
|
28 | | -The operator manages two {crs}[custom resources]: The _SupersetCluster_ and _DruidConnection_. |
29 | | -It creates a number of different Kubernetes resources based on the custom resources. |
| 27 | +The operator manages the _OpenSearchCluster_ resource. |
| 28 | +It creates a number of different Kubernetes resources based on this {crs}[custom resource]. |
30 | 29 |
|
31 | 30 | === Custom resources |
32 | 31 |
|
33 | | -The SupersetCluster is the main resource for the configuration of the Superset instance. |
34 | | -The resource defines only one xref:concepts:roles-and-role-groups.adoc[role], the `node`. |
| 32 | +The OpenSearchCluster is the resource for the configuration of the OpenSearch instance. |
| 33 | +The resource defines only one xref:concepts:roles-and-role-groups.adoc[role], the `nodes`. |
35 | 34 | The various configuration options are explained in the xref:usage-guide/index.adoc[]. |
36 | 35 | It helps you tune your cluster to your needs by configuring xref:usage-guide/storage-resource-configuration.adoc[resource usage], xref:usage-guide/security.adoc[security], xref:usage-guide/logging.adoc[logging] and more. |
37 | 36 |
|
38 | | -DruidConnection resources link a Superset and Druid instance. |
39 | | -It lets you define this connection in the familiar way of deploying a resource (instead of configuring the connection via the Superset UI or API). |
40 | | -The operator configures the connection between Druid and the Superset instance. |
41 | | - |
42 | 37 | === Kubernetes resources |
43 | 38 |
|
44 | 39 | Based on the custom resources you define, the operator creates ConfigMaps, StatefulSets and Services. |
45 | 40 |
|
46 | | -image::superset_overview.drawio.svg[A diagram depicting the Kubernetes resources created by the operator] |
| 41 | +image::opensearch_overview.drawio.svg[A diagram depicting the Kubernetes resources created by the operator] |
47 | 42 |
|
48 | 43 | The diagram above depicts all the Kubernetes resources created by the operator, and how they relate to each other. |
49 | | -The Job created for the DruidConnnection resource is not shown. |
50 | 44 |
|
51 | 45 | For every xref:concepts:roles-and-role-groups.adoc#_role_groups[role group] you define, the operator creates a StatefulSet with the amount of replicas defined in the RoleGroup. |
52 | | -Every Pod in the StatefulSet has two containers: the main container running Superset and a sidecar container gathering metrics for xref:operators:monitoring.adoc[]. |
53 | | -The operator creates a Service for the `node` role as well as a single service per role group. |
| 46 | +For every RoleGroup, a Service is created, as well as one for the whole cluster that references the cluster manager nodes. |
54 | 47 |
|
55 | 48 | Additionally, a ConfigMap is created for each RoleGroup. |
56 | | -These ConfigMaps contains two files: `log_config.py` and `superset_config.py` which contain logging and general Superset configuration respectively. |
57 | | - |
58 | | -== Required external component: Metastore SQL database |
59 | | - |
60 | | -Superset requires an SQL database in which to store its metadata, dashboards and users. |
61 | | -The xref:getting_started/index.adoc[] guides you through installing an example database with a Superset instance that you can use to get started, but is not suitable for production use. |
62 | | -Follow the setup instructions for one of the xref:required-external-components.adoc[supported databases] for a production database. |
63 | | - |
64 | | -== Connecting to data sources |
65 | | - |
66 | | -Superset does not store its own data, instead it connects to other products where data is stored. |
67 | | -On the Stackable Platform the two commonly used choices are xref:druid:index.adoc[Apache Druid] and xref:trino:index.adoc[Trino]. |
68 | | -For Druid there is a way to xref:usage-guide/connecting-druid.adoc[connect a Druid instance declaratively] with a custom resource. |
69 | | -For Trino this is on the roadmap. |
70 | | -Have a look at the demos linked <<demos, below>> for examples of using Superset with Druid or Trino. |
71 | | - |
72 | | -== [[demos]]Demos |
73 | | - |
74 | | -Many of the Stackable xref:demos:index.adoc[demos] use Superset in the stack for data visualization and explaration. |
75 | | -The demos come in two main variants. |
76 | | - |
77 | | -=== With Druid |
78 | | - |
79 | | -The xref:demos:nifi-kafka-druid-earthquake-data.adoc[] and xref:demos:nifi-kafka-druid-water-level-data.adoc[] demos |
80 | | -show Superset connected to xref:druid:index.adoc[Druid], exploring earthquake and water level data respectively. |
81 | | - |
82 | | -=== With Trino |
83 | | - |
84 | | -The xref:demos:spark-k8s-anomaly-detection-taxi-data.adoc[], xref:demos:trino-taxi-data.adoc[], xref:demos:trino-iceberg.adoc[] and xref:demos:data-lakehouse-iceberg-trino-spark.adoc[] demos all use a xref:trino:index.adoc[Trino] instance on top of S3 storage that hold data to analyze. Superset is connected to Trino to analyze a variety of different datasets. |
| 49 | +These ConfigMaps contain configuration files like `opensearch.yml`. |
85 | 50 |
|
86 | 51 | == Supported versions |
87 | 52 |
|
88 | | -The Stackable operator for Apache Superset currently supports the Superset versions listed below. |
89 | | -To use a specific Superset version in your SupersetCluster, you have to specify an image - this is explained in the xref:concepts:product-image-selection.adoc[] documentation. |
| 53 | +The Stackable operator for OpenSearch currently supports the OpenSearch versions listed below. |
| 54 | +To use a specific OpenSearch version in your OpenSearchCluster, you have to specify an image - this is explained in the xref:concepts:product-image-selection.adoc[] documentation. |
90 | 55 | The operator also supports running images from a custom registry or running entirely customized images; both of these cases are explained under xref:concepts:product-image-selection.adoc[] as well. |
91 | 56 |
|
92 | 57 | include::partial$supported-versions.adoc[] |
93 | 58 |
|
94 | 59 | == Useful links |
95 | 60 |
|
96 | | -* The {github}[superset-operator {external-link-icon}^] GitHub repository |
| 61 | +* The {github}[opensearch-operator {external-link-icon}^] GitHub repository |
97 | 62 | * The operator feature overview in the {feature-tracker}[feature tracker {external-link-icon}^] |
98 | | -* The {crd-supersetcluster}[SupersetCluster {external-link-icon}^] CRD documentation |
| 63 | +* The {crd-opensearchcluster}[OpenSearchCluster {external-link-icon}^] CRD documentation |
0 commit comments