Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

reorganize operator #2354

Merged
merged 5 commits into from
Nov 15, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 0 additions & 8 deletions docs-2.0-en/20.appendix/6.eco-tool-version.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,6 @@ NebulaGraph Dashboard Community Edition (Dashboard for short) is a visualization
| {{ nebula.tag }} | {{dashboard.tag}}|


## NebulaGraph Stats Exporter

[Nebula-stats-exporter](https://github.com/vesoft-inc/nebula-stats-exporter) exports monitor metrics to Promethus.

|NebulaGraph version|Stats Exporter version|
|:---|:---|
| {{ nebula.tag }} | {{exporter.tag}}|

## NebulaGraph Exchange

NebulaGraph Exchange (Exchange for short) is an Apache Spark&trade application for batch migration of data in a cluster to NebulaGraph in a distributed environment. It can support the migration of batch data and streaming data in a variety of different formats. For details, see [What is NebulaGraph Exchange](../import-export/nebula-exchange/about-exchange/ex-ug-what-is-exchange.md).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

!!! note

It is recommended to execute [`SUBMIT JOB COMPACT`](../../4.job-statements/#submit_job_compact) immediately after executing the `CLEAR SPACE` operation improve the query performance. Note that the COMPACT operation may affect query performance, and it is recommended to perform this operation during low business hours (e.g., early morning).
It is recommended to execute [SUBMIT JOB COMPACT](../4.job-statements.md#submit_job_compact) immediately after executing the `CLEAR SPACE` operation improve the query performance. Note that the COMPACT operation may affect query performance, and it is recommended to perform this operation during low business hours (e.g., early morning).

## Permission requirements

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,4 @@ You can install the NebulaGraph Community Edition with the following ecosystem t

## Installation details

- To install NebulaGraph with **NebulaGraph Dashboard Enterprise Edition**, see [Create a cluster](../../nebula-dashboard-ent/3.create-import-dashboard/1.create-cluster.md).

- To install NebulaGraph with **NebulaGraph Operator**, see [Install NebulaGraph clusters](../../k8s-operator/4.cluster-administration/4.1.installation/4.1.1.cluster-install.md).


!!! note

[Contact us](https://www.nebula-graph.io/contact) to get the installation package for the Enterprise Edition of NebulaGraph.
70 changes: 9 additions & 61 deletions docs-2.0-en/k8s-operator/2.get-started/2.3.create-cluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This topic introduces how to create a {{nebula.name}} cluster with the following
## Prerequisites

- [NebulaGraph Operator is installed.](2.1.install-operator.md)
- [LM is installed and the License Key is loaded.](2.2.deploy-lm.md)

- [A StorageClass is created.](https://kubernetes.io/docs/concepts/storage/storage-classes/)

## Create a {{nebula.name}} cluster with Helm
Expand Down Expand Up @@ -43,32 +43,10 @@ This topic introduces how to create a {{nebula.name}} cluster with the following
kubectl create namespace "${NEBULA_CLUSTER_NAMESPACE}"
```

5. Create a Secret for pulling the NebulaGraph cluster image from a private repository.

```bash
kubectl -n "${NEBULA_CLUSTER_NAMESPACE}" create secret docker-registry <image-pull-secret> \
--docker-server=DOCKER_REGISTRY_SERVER \
--docker-username=DOCKER_USER \
--docker-password=DOCKER_PASSWORD
```

- `<image-pull-secret>`: Specify the name of the Secret.
- `DOCKER_REGISTRY_SERVER`: Specify the server address of the private repository from which the image will be pulled, such as `reg.example-inc.com`.
- `DOCKER_USER`: The username for the image repository.
- `DOCKER_PASSWORD`: The password for the image repository.

6. Apply the variables to the Helm chart to create a NebulaGraph cluster.
5. Apply the variables to the Helm chart to create a NebulaGraph cluster.

```bash
helm install "${NEBULA_CLUSTER_NAME}" nebula-operator/nebula-cluster \
# Configure the access address and port (default port is '9119') that points to the LM. You must configure this parameter in order to obtain the license information. Only for NebulaGraph Enterprise Edition clusters.
--set nebula.metad.licenseManagerURL="192.168.8.XXX:9119" \
# Configure the image addresses for each service in the cluster.
--set nebula.graphd.image="<reg.example-inc.com/test/graphd-ent>" \
--set nebula.metad.image="<reg.example-inc.com/test/metad-ent>" \
--set nebula.storaged.image="<reg.example-inc.com/test/storaged-ent>" \
# Configure the Secret for pulling images from a private repository.
--set imagePullSecrets[0].name="{<image-pull-secret>}" \
--set nameOverride="${NEBULA_CLUSTER_NAME}" \
--set nebula.storageClassName="${STORAGE_CLASS_NAME}" \
# Specify the version of the NebulaGraph cluster.
Expand All @@ -79,9 +57,6 @@ This topic introduces how to create a {{nebula.name}} cluster with the following
--namespace="${NEBULA_CLUSTER_NAMESPACE}" \
```

NebulaGraph Operator supports creating clusters with zones. For more information, see [Install NebulaGraph clusters](../4.cluster-administration/4.1.installation/4.1.1.cluster-install.md).


## Create a {{nebula.name}} cluster with Kubectl

!!! compatibility "Legacy version compatibility"
Expand All @@ -97,22 +72,9 @@ The following example shows how to create a NebulaGraph cluster by creating a cl
kubectl create namespace nebula
```

2. Create a Secret for pulling the NebulaGraph Enterprise image from a private repository.

```bash
kubectl -n <nebula> create secret docker-registry <image-pull-secret> \
--docker-server=DOCKER_REGISTRY_SERVER \
--docker-username=DOCKER_USER \
--docker-password=DOCKER_PASSWORD
```

- `<nebula>`: The namespace where this Secret will be stored.
- `<image-pull-secret>`: Specify the name of the Secret.
- `DOCKER_REGISTRY_SERVER`: Specify the server address of the private repository from which the image will be pulled, such as `reg.example-inc.com`.
- `DOCKER_USER`: The username for the image repository.
- `DOCKER_PASSWORD`: The password for the image repository.
2. Define the cluster configuration file `nebulacluster.yaml`.

3. Define the cluster configuration file.

??? info "Expand to see an example configuration for the cluster"

Expand All @@ -128,7 +90,7 @@ The following example shows how to create a NebulaGraph cluster by creating a cl
whenUnsatisfiable: "ScheduleAnyway"
graphd:
# Container image for the Graph service.
image: reg.example-inc.com/xxx/xxx
image: vesoft/nebula-graphd
logVolumeClaim:
resources:
requests:
Expand All @@ -145,14 +107,9 @@ The following example shows how to create a NebulaGraph cluster by creating a cl
memory: 500Mi
version: v{{nebula.release}}
imagePullPolicy: Always
# Secret for pulling images from a private repository.
imagePullSecrets:
- name: secret-name
metad:
# LM access address and port number for obtaining License information.
licenseManagerURL: 192.168.x.xxx:9119
# Container image for the Meta service.
image: reg.example-inc.com/xxx/xxx
image: vesoft/nebula-metad
logVolumeClaim:
resources:
requests:
Expand All @@ -178,7 +135,7 @@ The following example shows how to create a NebulaGraph cluster by creating a cl
schedulerName: default-scheduler
storaged:
# Container image for the Storage service.
image: reg.example-inc.com/xxx/xxx
image: vesoft/nebula-storaged
logVolumeClaim:
resources:
requests:
Expand All @@ -200,22 +157,13 @@ The following example shows how to create a NebulaGraph cluster by creating a cl
version: v{{nebula.release}}
```

The following parameters must be customized:

- `spec.metad.licenseManagerURL`: Configure the URL that points to the LM, which consists of the access address and port number (default port `9119`) of the LM.
- `spec.<graphd|metad|storaged>.image`: Specify the container image of the Graph, Meta, and Storage service respectively.
- `spec.imagePullSecrets`: Specify the Secret for pulling the NebulaGraph Enterprise service images from a private repository.
- `spec.<graphd|metad|storaged>.logVolumeClaim.storageClassName`: Specify the log disk storage configurations for the Graph, Meta, and Storage service respectively.
- `spec.metad.dataVolumeClaim.storageClassName`: Specify the data disk storage configurations for the Meta service.
- `spec.storaged.dataVolumeClaims.storageClassName`: Specify the data disk storage configurations for the Storage service.

For more information about the other parameters, see [Install NebulaGraph clusters](../4.cluster-administration/4.1.installation/4.1.1.cluster-install.md).


4. Create a NebulaGraph cluster.
3. Create a NebulaGraph cluster.

```bash
kubectl create -f apps_v1alpha1_nebulacluster.yaml
kubectl create -f nebulacluster.yaml
```

Output:
Expand All @@ -224,7 +172,7 @@ The following example shows how to create a NebulaGraph cluster by creating a cl
nebulacluster.apps.nebula-graph.io/nebula created
```

5. Check the status of the NebulaGraph cluster.
4. Check the status of the NebulaGraph cluster.

```bash
kubectl get nc nebula
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ Part of the above parameters are described as follows:
| `controllerManager.replicas` | `2` | The number of controller-manager replicas. |
| `admissionWebhook.create` | `false` | Whether to enable Admission Webhook. This option is disabled. To enable it, set the value to `true` and you will need to install [cert-manager](https://cert-manager.io/docs/installation/helm/). For details, see [Enable admission control](../4.cluster-administration/4.7.security/4.7.2.enable-admission-control.md). |
| `shceduler.create` | `true` | Whether to enable Scheduler. |
| `shceduler.schedulerName` | `nebula-scheduler` | The name of the scheduler customized by NebulaGraph Operator. It is used to evenly distribute Storage Pods across different [zones](../4.cluster-administration/4.8.ha-and-balancing/4.8.2.enable-zone.md). |
| `shceduler.schedulerName` | `nebula-scheduler` | The name of the scheduler customized by NebulaGraph Operator. It is used to evenly distribute Storage Pods across different zones which are only available in the Enterprise Edition.|
abby-cyber marked this conversation as resolved.
Show resolved Hide resolved
| `shceduler.replicas` | `2` | The number of nebula-scheduler replicas. |


Expand Down
Loading