Skip to content

Commit

Permalink
reorganize operator (#2354)
Browse files Browse the repository at this point in the history
* reorganize operator

Co-Authored-By: Chris Chen <chris.chen@vesoft.com>

* broken links

Co-Authored-By: Chris Chen <chris.chen@vesoft.com>

* broken links fix again

Co-Authored-By: Chris Chen <chris.chen@vesoft.com>

* Update 6.deploy-nebula-graph-with-peripherals.md

Co-Authored-By: Chris Chen <chris.chen@vesoft.com>

---------

Co-authored-by: Chris Chen <chris.chen@vesoft.com>
  • Loading branch information
abby-cyber and ChrisChen2023 authored Nov 15, 2023
1 parent 82c4278 commit db07a30
Show file tree
Hide file tree
Showing 24 changed files with 58 additions and 1,609 deletions.
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.|
| `shceduler.replicas` | `2` | The number of nebula-scheduler replicas. |


Expand Down
Loading

0 comments on commit db07a30

Please sign in to comment.