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

Update enterprise edition #1497

Merged
merged 1 commit into from
Jul 8, 2022
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
4 changes: 4 additions & 0 deletions docs-2.0/20.appendix/release-note.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Nebula Graph {{ nebula.release }} release notes

{{ ent.ent_begin }}

## Enterprise edition

### Feature
Expand Down Expand Up @@ -65,3 +67,5 @@
## Legacy versions

[Release notes of legacy versions](https://nebula-graph.io/posts/)

{{ ent.ent_end }}
4 changes: 4 additions & 0 deletions docs-2.0/3.ngql-guide/4.job-statements.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ The long-term tasks run by the Storage Service are called jobs, such as `COMPACT

All job management commands can be executed only after selecting a graph space.

{{ ent.ent_begin }}

## SUBMIT JOB BALANCE DATA

!!! enterpriseonly
Expand All @@ -31,6 +33,8 @@ nebula> SUBMIT JOB BALANCE DATA;
+------------+
```

{{ ent.ent_end }}

<!-- balance-3.1
## SUBMIT JOB BALANCE IN ZONE

Expand Down
5 changes: 5 additions & 0 deletions docs-2.0/3.ngql-guide/9.space-statements/6.clear-space.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,16 @@ Only the [God role](../../7.data-security/1.authentication/3.role-list.md) has t
- The larger the amount of data in the graph space, the longer it takes to clear it. If the execution fails due to client connection timeout, increase the value of the `storage_client_timeout_ms` parameter in the [Graph Service configuration](../../5.configurations-and-logs/1.configurations/3.graph-config.md).
- During the execution of `CLEAR SPACE`, writing data into the graph space is not automatically prohibited. Such write operations can result in incomplete data clearing, and the residual data can be damaged.

!!! note
- The Nebula Graph Community Edition does not support blocking data writing while allowing `CLEAR SPACE`.

{{ ent.ent_begin }}
!!! enterpriseonly

- The Nebula Graph Community Edition does not support blocking data writing while allowing `CLEAR SPACE`.
- The Nebula Graph Enterprise Edition supports blocking data writing by setting `VARIABLE read_only=true` before running `CLEAR SPACE`. After the data are cleared successfully, run `SET VARIABLE read_only=false` to allow data writing again.

{{ ent.ent_end }}
## Syntax

```ngql
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,8 @@ You can install Nebula Graph by downloading the tar.gz file.
So far, you have installed Nebula Graph successfully.

## Next to do

{{ ent.ent_begin }}
- (Enterprise Edition)[Deploy license](../deploy-license.md)
{{ ent.ent_end }}

- [Manage Nebula Graph services](../manage-service.md)
Original file line number Diff line number Diff line change
@@ -1,16 +1,23 @@
# Install Nebula Graph with ecosystem tools

You can install the Enterprise Edition and Community Edition of Nebula Graph with the following ecosystem tools:

{{ ent.ent_begin }}
- Nebula Dashboard Enterprise Edition
{{ ent.ent_end }}
- Nebula Operator

## Installation details

{{ ent.ent_begin }}
- To install Nebula Graph with **Nebula Dashboard Enterprise Edition**, see [Create a cluster](../../nebula-dashboard-ent/3.create-import-dashboard/1.create-cluster.md).
{{ ent.ent_end }}

- To install Nebula Graph with **Nebula Operator**, see [Deploy Nebula Graph clusters with Kubectl](../../nebula-operator/3.deploy-nebula-graph-cluster/3.1create-cluster-with-kubectl.md) or [Deploy Nebula Graph clusters with Helm](../../nebula-operator/3.deploy-nebula-graph-cluster/3.2create-cluster-with-helm.md).

{{ ent.ent_begin }}

!!! note

Contact our sales ([[email protected]](mailto:[email protected])) to get the installation package for the Enterprise Edition of Nebula Graph.

{{ ent.ent_end }}
Original file line number Diff line number Diff line change
Expand Up @@ -19,22 +19,24 @@ For now, Nebula Graph does not provide an official deployment tool. Users can de

## Manual deployment process

### Step 1: Install Nebula Graph
### Install Nebula Graph

Install Nebula Graph on each machine in the cluster. Available approaches of installation are as follows.

* [Install Nebula Graph with RPM or DEB package](2.install-nebula-graph-by-rpm-or-deb.md)

* [Install Nebula Graph by compiling the source code](1.install-nebula-graph-by-compiling-the-source-code.md)


### Step 2. Add a license (for the Enterprise Edition only).
{{ ent.ent_begin }}
### Add a license (for the Enterprise Edition only).

- Adding a license is only required when you deploy a Nebula Graph cluster with the Enterprise Edition. For details, see [Deploy a license for Nebula Graph Enterprise Edition](../../4.deployment-and-installation/deploy-license.md).

- Skip this step when you deploy a cluster with the Community Edition.

### Step 3: Modify the configurations
{{ ent.ent_end }}

### Modify the configurations

To deploy Nebula Graph according to your requirements, you have to modify the configuration files.

Expand Down Expand Up @@ -262,7 +264,7 @@ Users can refer to the content of the following configurations, which only show
--port=9779
```

### Step 4: Start the cluster
### Start the cluster

Start the corresponding service on **each machine**. Descriptions are as follows.

Expand All @@ -288,7 +290,7 @@ sudo /usr/local/nebula/scripts/nebula.service start <metad|graphd|storaged|all>

- `/usr/local/nebula` is the default installation path for Nebula Graph. Use the actual path if you have customized the path. For more information about how to start and stop the services, see [Manage Nebula Graph services](../manage-service.md).

### Step 5: Check the cluster status
### Check the cluster status

Install the native CLI client [Nebula Console](../../2.quick-start/3.connect-to-nebula-graph.md), then connect to any machine that has started the graphd process, run `ADD HOSTS` command to add storage hosts, and run `SHOW HOSTS` to check the cluster status. For example:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,14 @@

Nebula Graph builds the configurations based on the [gflags](https://gflags.github.io/gflags/) repository. Most configurations are flags. When the Nebula Graph service starts, it will get the configuration information from [Configuration files](#configuration_files) by default. Configurations that are not in the file apply the default values.

{{ ent.ent_begin }}

!!! enterpriseonly

The tuning service for performance, parameters and query statements are provided only in the Enterprise Edition.

{{ ent.ent_end }}

!!! note

* Because there are many configurations and they may change as Nebula Graph develops, this topic will not introduce all configurations. To get detailed descriptions of configurations, follow the instructions below.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,14 @@ For all parameters and their current values, see [Configurations](1.configuratio
| `daemonize` | `true` | When set to `true`, the process is a daemon process. |
| `pid_file` | `pids/nebula-metad.pid` | The file that records the process ID. |
| `timezone_name` | - | Specifies the Nebula Graph time zone. This parameter is not predefined in the initial configuration files. You can manually set it if you need it. The system default value is `UTC+00:00:00`. For the format of the parameter value, see [Specifying the Time Zone with TZ](https://www.gnu.org/software/libc/manual/html_node/TZ-Variable.html "Click to view the timezone-related content in the GNU C Library manual"). For example, `--timezone_name=UTC+08:00` represents the GMT+8 time zone.|

{{ ent.ent_begin }}
| Name | Predefined value | Description |
| ----------- | ----------------------- | ---------------------------------------------------- |
|`license_path`|`share/resources/nebula.license`| Path of the license of the Nebula Graph Enterprise Edition. Users need to [deploy a license file](../../4.deployment-and-installation/deploy-license.md) before starting the Enterprise Edition. This parameter is required only for the Nebula Graph Enterprise Edition. For details about how to configure licenses for other ecosystem tools, see the deployment documents of the corresponding ecosystem tools.|

{{ ent.ent_end }}

!!! note

* While inserting property values of [time types](../../3.ngql-guide/3.data-types/4.date-and-time.md), Nebula Graph transforms time types (except TIMESTAMP) to the corresponding UTC according to the time zone specified by `timezone_name`. The time-type values returned by nGQL queries are all UTC time.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,8 @@ For all parameters and their current values, see [Configurations](1.configuratio
| ------------------- | ------------------------ | ------------------------------------------ |
| `system_memory_high_watermark_ratio` | `0.8` | Specifies the trigger threshold of the high-level memory alarm mechanism. If the system memory usage is higher than this value, an alarm mechanism will be triggered, and Nebula Graph will stop querying. This parameter is not predefined in the initial configuration files. |

{{ ent.ent_begin }}

## Audit configurations

!!! enterpriseonly
Expand All @@ -108,6 +110,8 @@ For all parameters and their current values, see [Configurations](1.configuratio

For more information about audit log, see [Audit log](../2.log-management/audit-log.md).

{{ ent.ent_end }}

## Metrics configurations

| Name | Predefined value | Description |
Expand Down
3 changes: 3 additions & 0 deletions docs-2.0/7.data-security/1.authentication/1.authentication.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,11 @@ Local authentication indicates that usernames and passwords are stored locally o

Lightweight Directory Access Protocol (LDAP) is a lightweight client-server protocol for accessing directories and building a centralized account management system. LDAP authentication and local authentication can be enabled at the same time, but LDAP authentication has a higher priority. If the local authentication server and the LDAP server both have the information of user `Amber`, Nebula Graph reads from the LDAP server first.

{{ ent.ent_begin }}
### Enable LDAP authentication

!!! Enterpriseonly

Contact [email protected].

{{ ent.ent_end }}
57 changes: 42 additions & 15 deletions docs-2.0/7.data-security/1.authentication/2.management-user.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,28 +17,50 @@ The `root` user with the **GOD** role can run `CREATE USER` to create a new user
- Syntax

```ngql
CREATE USER [IF NOT EXISTS] <user_name> [WITH PASSWORD '<password>'] [WITH IP WHITELIST <ip_list>];
CREATE USER [IF NOT EXISTS] <user_name> [WITH PASSWORD '<password>'];
```

- `IF NOT EXISTS`: Detects if the user name exists. The user will be created only if the user name does not exist.
- `user_name`: Sets the name of the user.
- `password`: Sets the password of the user.
- `ip_list`(Enterprise): Sets the IP address whitelist. The user can connect to Nebula Graph only from IP addresses in the list. Use commas to separate multiple IP addresses.

{{ ent.ent_begin }}
- Syntax with enterprise edition

```ngql
CREATE USER [IF NOT EXISTS] <user_name> [WITH PASSWORD '<password>'][WITH IP WHITELIST <ip_list>];
```
- `ip_list`: Sets the IP address whitelist. The user can connect to Nebula Graph only from IP addresses in the list. Use commas to separate multiple IP addresses.

{{ ent.ent_end }}

- Example

```ngql
nebula> CREATE USER user1 WITH PASSWORD 'nebula';
nebula> CREATE USER user2 WITH PASSWORD 'nebula' WITH IP WHITELIST 192.168.10.10,192.168.10.12;
nebula> SHOW USERS;
+---------+-------------------------------+
| Account | IP Whitelist |
+---------+-------------------------------+
| "root" | "" |
| "user1" | "" |
+---------+-------------------------------+
```

{{ ent.ent_begin }}
- Example with enterprise edition

```ngql
nebula> CREATE USER user2 WITH PASSWORD 'nebula' WITH IP WHITELIST 192.168.10.10,192.168.10.12;
nebula> SHOW USERS;
+---------+-------------------------------+
| Account | IP Whitelist |
+---------+-------------------------------+
| "root" | "" |
| "user2" | "192.168.10.10,192.168.10.12" |
+---------+-------------------------------+
```
{{ ent.ent_end }}

## GRANT ROLE

Expand Down Expand Up @@ -133,33 +155,38 @@ Users can run `CHANGE PASSWORD` to set a new password for a user. The old passwo

## ALTER USER

The `root` user with the **GOD** role can run `ALTER USER` to set a new password and IP address whitelist for a user. The old password is not needed when altering the user.
The `root` user with the **GOD** role can run `ALTER USER` to set a new password. The old password is not needed when altering the user.

- Syntax

```ngql
ALTER USER <user_name> WITH PASSWORD '<password>' [WITH IP WHITELIST <ip_list>];;
ALTER USER <user_name> WITH PASSWORD '<password>';
```

- Example

```ngql
nebula> ALTER USER user2 WITH PASSWORD 'nebula';
```

{{ ent.ent_begin }}
- Syntax with enterprise edition

```ngql
ALTER USER <user_name> WITH PASSWORD '<password>' [WITH IP WHITELIST <ip_list>];
```

- Example with enterprise edition

!!! enterpriseonly

When `WITH IP WHITELIST` is not used, the IP address whitelist is removed and the user can connect to the Nebula Graph by any IP address.

```ngql
nebula> ALTER USER user2 WITH PASSWORD 'nebula';
nebula> SHOW USERS;
+---------+--------------+
| Account | IP Whitelist |
+---------+--------------+
| "root" | "" |
| "user1" | "" |
| "user2" | "" |
+---------+--------------+
nebula> ALTER USER user2 WITH PASSWORD 'nebula' WITH IP WHITELIST 192.168.10.10;
```

{{ ent.ent_end }}

## DROP USER

The `root` user with the **GOD** role can run `DROP USER` to remove a user.
Expand Down
3 changes: 3 additions & 0 deletions docs-2.0/8.service-tuning/load-balance.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ You can use the `BALANCE` statement to balance the distribution of partitions an

The `BALANCE` commands migrate data and balance the distribution of partitions by creating and executing a set of subtasks. **DO NOT** stop any machine in the cluster or change its IP address until all the subtasks finish. Otherwise, the follow-up subtasks fail.

{{ ent.ent_begin }}
## Balance partition distribution

!!! enterpriseonly
Expand Down Expand Up @@ -83,6 +84,8 @@ After you add new storage hosts into the cluster, no partition is deployed on th

If any subtask fails, run `RECOVER JOB <job_id>` to recover the failed jobs. If redoing load balancing does not solve the problem, ask for help in the [Nebula Graph community](https://discuss.nebula-graph.io/).

{{ ent.ent_end }}

### Stop data balancing

To stop a balance job, run `STOP JOB <job_id>`.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@ For different data sources, the vertex configurations are different. There are m
|`tags.path`|string|-|Yes|The path of the source file specified to generate SST files.|
|`tags.repartitionWithNebula`|bool|`false`|No|Whether to repartition data based on the number of partitions of graph spaces in Nebula Graph when generating the SST file. Enabling this function can reduce the time required to DOWNLOAD and INGEST SST files. If the number of the partition (partition_num) in the graph space is greater than `1`, set the parameter to `true`, otherwise, the generated data file may only contain vertices without tags.|

{{ ent.ent_begin }}
### Specific parameters of Nebula Graph

!!! enterpriseonly
Expand All @@ -196,6 +197,8 @@ For different data sources, the vertex configurations are different. There are m
|`tags.noField`|bool|`false`|Yes|If the value is `true`, only VIDs will be exported, not the property data. If the value is `false`, VIDs and the property data will be exported.|
|`tags.return.fields`|list|`[]`|Yes|Specifies the properties to be exported. For example, to export the `name` and `age`, you need to set the parameter value to `["name","age"]`. This parameter only takes effect when the value of `tags.noField` is `false`.|

{{ ent.ent_end }}

## Edge configurations

For different data sources, configurations of edges are also different. There are general parameters and some specific parameters. General parameters and specific parameters of different data sources need to be configured when users configure edges.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@
nebula-storaged-1 1/1 Running 0 5m34s
nebula-storaged-2 1/1 Running 0 5m34s
```
{{ ent.ent_begin }}

## Scaling clusters

Expand Down Expand Up @@ -92,6 +93,8 @@ Similarly, you can scale in a Nebula Graph cluster by setting the value of the `

You can click on [nebula-cluster/values.yaml](https://github.com/vesoft-inc/nebula-operator/blob/{{operator.tag}}/charts/nebula-cluster/values.yaml) to see more configurable parameters of the nebula-cluster chart. For more information about the descriptions of configurable parameters, see **Configuration parameters of the nebula-cluster Helm chart** below.

{{ ent.ent_end }}

## Delete clusters

Run the following command to delete a Nebula Graph cluster with Helm:
Expand Down
6 changes: 5 additions & 1 deletion docs-2.0/reuse/source_manage-service.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Nebula Graph supports managing services with scripts or systemd. This topic will describe the two methods in detail.
Nebula Graph supports managing services with scripts or systemd.

!!! enterpriseonly

Expand Down Expand Up @@ -39,6 +39,8 @@ $ sudo /usr/local/nebula/scripts/nebula.service
|`storaged`|Set the Storage Service as the target service.|
|`all`|Set all the Nebula Graph services as the target services.|

{{ ent.ent_begin }}

## Manage services with systemd

For easy maintenance, Nebula Graph Enterprise Edition supports managing services with systemd. You can start, stop, restart, and check services with `systemctl` commands.
Expand Down Expand Up @@ -68,6 +70,8 @@ $ systemctl <start | stop | restart | status > <nebula | nebula-metad | nebula-g
|`nebula-graphd`|Set the Graph Service as the target service.|
|`nebula-storaged`|Set the Storage Service as the target service.|

{{ ent.ent_end }}

## Start Nebula Graph

### In non-container environment
Expand Down
Loading