From 1f0f2b1669465beb6e2103232dd66cb9faa7ea28 Mon Sep 17 00:00:00 2001 From: "abby.huang" <78209557+abby-cyber@users.noreply.github.com> Date: Tue, 19 Jul 2022 11:15:44 +0800 Subject: [PATCH] Update 2.deploy-dashboard.md (#1987) --- .../nebula-dashboard/2.deploy-dashboard.md | 279 +++++++++--------- 1 file changed, 138 insertions(+), 141 deletions(-) diff --git a/docs-2.0/nebula-dashboard/2.deploy-dashboard.md b/docs-2.0/nebula-dashboard/2.deploy-dashboard.md index 73929e16ac..e8041d121b 100644 --- a/docs-2.0/nebula-dashboard/2.deploy-dashboard.md +++ b/docs-2.0/nebula-dashboard/2.deploy-dashboard.md @@ -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`命令查看服务的状态,然后分别进行以下操作检查服务是否都正常启动。 + + - 在浏览器中输入`:9200`检查`nebula-stats-exporter`服务是否正常启动。 + - 在浏览器中输入`:9100`检查`node-exporter`服务是否正常启动。 + - 在浏览器中输入`:9090`检查`prometheus`服务是否正常启动。 + - 在浏览器中输入`:8090`检查`nebula-http-gateway`服务是否正常启动。 + - 在浏览器中输入`:7003`检查`dashboard`服务是否正常启动。 + +## 方式二 逐一部署 Dashboard 依赖服务 ### 部署`node-exporter`服务 @@ -197,145 +332,10 @@ $ nohup ./nebula-httpd & 服务启动后,可以在浏览器中输入`: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`命令查看服务的状态,然后分别进行以下操作检查服务是否都正常启动。 - - - 在浏览器中输入`:9200`检查`nebula-stats-exporter`服务是否正常启动。 - - 在浏览器中输入`:9100`检查`node-exporter`服务是否正常启动。 - - 在浏览器中输入`:9090`检查`prometheus`服务是否正常启动。 - - 在浏览器中输入`:8090`检查`nebula-http-gateway`服务是否正常启动。 - - 在浏览器中输入`:7003`检查`dashboard`服务是否正常启动。 - - ## 停止 Dashboard +- 对于通过 Docker Compose 启动的 Dashboard,执行`docker-compose stop`命令停止。 + - 对于通过逐一部署方式启动的 Dashboard,执行`kill `的方式停止,示例如下: ```bash @@ -346,9 +346,6 @@ $ nohup ./nebula-httpd & $ kill $(lsof -t -i :7003) # 停止 dashboard 服务 ``` -- 对于通过 Docker Compose 启动的 Dashboard,执行`docker-compose stop`命令停止。 - - ## 后续操作 [连接 Dashboard](3.connect-dashboard.md)