Skip to content

Commit

Permalink
Update 2.deploy-dashboard.md (#1987)
Browse files Browse the repository at this point in the history
  • Loading branch information
abby-cyber authored Jul 19, 2022
1 parent d32a885 commit 1f0f2b1
Showing 1 changed file with 138 additions and 141 deletions.
279 changes: 138 additions & 141 deletions docs-2.0/nebula-dashboard/2.deploy-dashboard.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,143 @@
|prometheus | 存储监控数据的时间序列数据库。|9090|
|nebula-http-gateway | 为集群服务提供 HTTP 接口,执行 nGQL 语句与 Nebula Graph 数据库进行交互。|8090|

## 方式一 通过 Docker Compose 部署 Dashboard 依赖服务

## 方式一 逐一部署 Dashboard 依赖服务
支持通过 Docker Compose 启动 Dashboard 所需的所有服务。

### 前提条件

确保用户在部署 Dashboard 的机器上已经安装了 Docker。

### 操作步骤

1. 在 Nebula Graph 集群的每台机器上的`nebula-dashboard`安装目录下,进入`vendors/node-exporter`,然后分别执行以下命令启动`node-exporter`

```bash
nohup ./node-exporter --web.listen-address=":9100" &
```

!!! note

用户可根据需要,决定是否在集群中的每台机器上启动`node-exporter`服务。

2. 在部署 Dashboard 机器上的`nebula-dashboard`安装目录下,部署 Dashboard 所需的服务。

1. 进入`vendors/nebula-stats-exporter`目录,通过修改`config.yaml`文件,配置 Nebula Graph 集群所有服务的 HTTP 端口及所在机器的 IP。示例如下:

```yaml
clusters:
- name: nebula
instances:
- name: metad0
endpointIP: 192.168.8.157
endpointPort: 19559
componentType: metad
- name: metad1
endpointIP: 192.168.8.155
endpointPort: 19559
componentType: metad
- name: metad2
endpointIP: 192.168.8.154
endpointPort: 19559
componentType: metad
- name: graphd0
endpointIP: 192.168.8.157
endpointPort: 19669
componentType: graphd
- name: graphd1
endpointIP: 192.168.8.155
endpointPort: 19669
componentType: graphd
- name: graphd2
endpointIP: 192.168.8.154
endpointPort: 19669
componentType: graphd
- name: storaged0
endpointIP: 192.168.8.157
endpointPort: 19779
componentType: storaged
- name: storaged1
endpointIP: 192.168.8.155
endpointPort: 19779
componentType: storaged
- name: storaged2
endpointIP: 192.168.8.154
endpointPort: 19779
componentType: storaged
```

2. 进入`vendors/prometheus`目录,通过修改`prometheus.yaml`文件,配置`node-exporter``nebula-stats-exporter`服务的地址和端口。示例如下:

```bash
global:
scrape_interval: 5s # 收集监控数据的间隔时间。默认为 1 分钟。
evaluation_interval: 5s # 告警规则扫描时间间隔。默认为 1 分钟。
scrape_configs:
- job_name: 'node-exporter'
static_configs:
- targets: [
'192.168.8.154:9100',
'192.168.8.155:9100',
'192.168.8.157:9100' # node-exporter 服务的 IP 地址和端口。
]
- job_name: 'nebula-stats-exporter'
static_configs:
- targets: [
'nebula-stats-exporter:9200', # nebula-stats-exporter 服务的地址和端口。
]
```

3. 在目录`nebula-dashboard`内,修改文件`config.json`,配置代理信息。

```json
{
"port": 7003,
"proxy":{
"gateway":{
"target": "nebula-http-gateway:8090" # nebula-http-gateway 服务的地址和端口号。
},
"prometheus":{
"target": "prometheus:9090" # Prometheus 服务的地址和端口号。
},
"graph":{
"target": "graphd:19669" # 用于获取 Graph 服务的运行配置。
},
"storage":{
"target": "graphd:19779" # 用于获取 Storage 服务的运行配置。
}
},
"nebulaServer": {
"ip": "192.168.8.131", # 任一 Graph 服务的机器 IP。
"port": 9669 # Graph 服务的端口号。
}
}
```

3. 在任意目录下执行以下命令创建供 Dashboard 中所有服务相互访问的网络。

```bash
docker network create nebula-net
```

4. 在目录`nebula-dashboard`内,执行以下命令启动 Dashboard 的依赖服务。

```bash
docker-compose -f docker-compose.yaml up -d
```

关于`docker-compose.yaml`文件中参数的解释,参见[服务配置](https://docs.docker.com/compose/compose-file/compose-file-v3/#service-configuration-reference)。


5. 执行`docker ps`命令查看服务的状态,然后分别进行以下操作检查服务是否都正常启动。

- 在浏览器中输入`<IP>:9200`检查`nebula-stats-exporter`服务是否正常启动。
- 在浏览器中输入`<IP>:9100`检查`node-exporter`服务是否正常启动。
- 在浏览器中输入`<IP>:9090`检查`prometheus`服务是否正常启动。
- 在浏览器中输入`<IP>:8090`检查`nebula-http-gateway`服务是否正常启动。
- 在浏览器中输入`<IP>:7003`检查`dashboard`服务是否正常启动。

## 方式二 逐一部署 Dashboard 依赖服务

### 部署`node-exporter`服务

Expand Down Expand Up @@ -197,145 +332,10 @@ $ nohup ./nebula-httpd &

服务启动后,可以在浏览器中输入`<IP>:7003`检查服务是否正常启动。

## 方式二 通过 Docker Compose 部署 Dashboard 依赖服务

支持通过 Docker Compose 启动 Dashboard 所需的所有服务。

### 前提条件

确保用户在部署 Dashboard 的机器上已经安装了 Docker。

### 操作步骤

1. 在 Nebula Graph 集群的每台机器上的`nebula-dashboard`安装目录下,进入`vendors/node-exporter`,然后分别执行以下命令启动`node-exporter`

```bash
nohup ./node-exporter --web.listen-address=":9100" &
```

!!! note

用户可根据需要,决定是否在集群中的每台机器上启动`node-exporter`服务。

2. 在部署 Dashboard 机器上的`nebula-dashboard`安装目录下,部署 Dashboard 所需的服务。

1. 进入`vendors/nebula-stats-exporter`目录,通过修改`config.yaml`文件,配置 Nebula Graph 集群所有服务的 HTTP 端口及所在机器的 IP。示例如下:

```yaml
clusters:
- name: nebula
instances:
- name: metad0
endpointIP: 192.168.8.157
endpointPort: 19559
componentType: metad
- name: metad1
endpointIP: 192.168.8.155
endpointPort: 19559
componentType: metad
- name: metad2
endpointIP: 192.168.8.154
endpointPort: 19559
componentType: metad
- name: graphd0
endpointIP: 192.168.8.157
endpointPort: 19669
componentType: graphd
- name: graphd1
endpointIP: 192.168.8.155
endpointPort: 19669
componentType: graphd
- name: graphd2
endpointIP: 192.168.8.154
endpointPort: 19669
componentType: graphd
- name: storaged0
endpointIP: 192.168.8.157
endpointPort: 19779
componentType: storaged
- name: storaged1
endpointIP: 192.168.8.155
endpointPort: 19779
componentType: storaged
- name: storaged2
endpointIP: 192.168.8.154
endpointPort: 19779
componentType: storaged
```

2. 进入`vendors/prometheus`目录,通过修改`prometheus.yaml`文件,配置`node-exporter``nebula-stats-exporter`服务的地址和端口。示例如下:

```bash
global:
scrape_interval: 5s # 收集监控数据的间隔时间。默认为 1 分钟。
evaluation_interval: 5s # 告警规则扫描时间间隔。默认为 1 分钟。
scrape_configs:
- job_name: 'node-exporter'
static_configs:
- targets: [
'192.168.8.154:9100',
'192.168.8.155:9100',
'192.168.8.157:9100' # node-exporter 服务的 IP 地址和端口。
]
- job_name: 'nebula-stats-exporter'
static_configs:
- targets: [
'nebula-stats-exporter:9200', # nebula-stats-exporter 服务的地址和端口。
]
```

3. 在目录`nebula-dashboard`内,修改文件`config.json`,配置代理信息。

```json
{
"port": 7003,
"proxy":{
"gateway":{
"target": "nebula-http-gateway:8090" # nebula-http-gateway 服务的地址和端口号。
},
"prometheus":{
"target": "prometheus:9090" # Prometheus 服务的地址和端口号。
},
"graph":{
"target": "graphd:19669" # 用于获取 Graph 服务的运行配置。
},
"storage":{
"target": "graphd:19779" # 用于获取 Storage 服务的运行配置。
}
},
"nebulaServer": {
"ip": "192.168.8.131", # 任一 Graph 服务的机器 IP。
"port": 9669 # Graph 服务的端口号。
}
}
```

3. 在任意目录下执行以下命令创建供 Dashboard 中所有服务相互访问的网络。

```bash
docker network create nebula-net
```

4. 在目录`nebula-dashboard`内,执行以下命令启动 Dashboard 的依赖服务。

```bash
docker-compose -f docker-compose.yaml up -d
```

关于`docker-compose.yaml`文件中参数的解释,参见[服务配置](https://docs.docker.com/compose/compose-file/compose-file-v3/#service-configuration-reference)。


5. 执行`docker ps`命令查看服务的状态,然后分别进行以下操作检查服务是否都正常启动。

- 在浏览器中输入`<IP>:9200`检查`nebula-stats-exporter`服务是否正常启动。
- 在浏览器中输入`<IP>:9100`检查`node-exporter`服务是否正常启动。
- 在浏览器中输入`<IP>:9090`检查`prometheus`服务是否正常启动。
- 在浏览器中输入`<IP>:8090`检查`nebula-http-gateway`服务是否正常启动。
- 在浏览器中输入`<IP>:7003`检查`dashboard`服务是否正常启动。


## 停止 Dashboard

- 对于通过 Docker Compose 启动的 Dashboard,执行`docker-compose stop`命令停止。

- 对于通过逐一部署方式启动的 Dashboard,执行`kill <pid>`的方式停止,示例如下:

```bash
Expand All @@ -346,9 +346,6 @@ $ nohup ./nebula-httpd &
$ kill $(lsof -t -i :7003) # 停止 dashboard 服务
```

- 对于通过 Docker Compose 启动的 Dashboard,执行`docker-compose stop`命令停止。


## 后续操作

[连接 Dashboard](3.connect-dashboard.md)

0 comments on commit 1f0f2b1

Please sign in to comment.