ReOrc docs
Get ReOrc
简体中文
简体中文
  • 欢迎使用 Reorc
  • 设置与部署
    • 设置组织
    • 安装 Reorc-agent
  • 快速开始
    • 1. 添加连接源
    • 2. 创建项目
    • 3. 创建数据模型
    • 4. 验证数据处理流程
    • 5. 创建数据管道和调度任务
  • 连接
    • 目标数据库
    • 项目连接管理
  • 数据建模
    • 概述
    • 数据源
    • 模型
      • 宏
      • 物化
      • 模型配置
    • 字段列表
    • 数据血缘
    • 数据库特定配置
      • SelectDB(Doris)
  • 语义层建模
    • 概述
    • 语义层模型 (Cube)
      • 自定义维度
      • 自定义指标
        • 聚合计算函数
    • 语义层视图 (View)
    • 模型关系 (Relationship)
    • BI 接入方式
  • 数据摄入
    • 概述
    • 连接源类型
      • 从数据库获取数据
      • MySQL
      • SelectDB(Doris)
    • 数据转换(Transform)
  • 数据管道
    • 概述
    • 建模管道
    • 任务调度
  • 进阶用法
    • Jinja 模板
    • 变量
      • 系统内置变量
      • 项目内自定义变量
  • 健康监测
    • 数据管道健康
  • 资产管理
    • 元数据
    • 版本历史
    • dbt 包和项目依赖
  • 数据服务
    • 概述
    • 创建和编辑
    • 数据预览和下载
    • 权限管理
    • 开放 API
  • 数据安全
    • 数据脱敏
  • 设置
    • 组织设置
    • 项目设置
    • 个人设置
    • 角色和权限设置
Powered by GitBook
On this page
  • 要求
  • 设置 Reorc Agent
  • Agent 的操作
  • 在后台运行 Agent
  • 升级 Agent
  1. 设置与部署

安装 Reorc-agent

Previous设置组织Next快速开始

Last updated 2 months ago

Reorc 的数据面(Data Plane)由多个 Worker Hosts 构成,用于运行由控制面(Control Plane)协调的数据任务。

每个 Worker 上都包含一个称为 Reorc-agent 的服务,它与控制面通信,并管理 Worker 上的执行环境。设置 Worker 的规则如下:

  • 可设置多个 Workers 以实现横向扩展。

  • Workers 可以安装在不同的网络位置。

  • 专用于某个环境的 Workers 之间必须能够相互通信。因此,建议将相同环境的 Workers 放置在同一局域网络中,以最大程度地稳定连接并降低延迟。

本指南将向您展示如何设置 Reorc Agent。

要求

您的 Worker Hosts 需满足以下要求:

硬件:

根据实际使用情况,您可以参考以下配置范围,以优化Reorc的性能表现。

Worker 数量
CPU(核心数 / Worker)
内存(GB/ Worker)
磁盘(GB/ Worker)

最低配置

1

2

8

20

推荐配置

2+

4

16

100

软件:

  • 操作系统:Linux(已测试 RHEL 和 Ubuntu )。

  • Python:3.9+,建议使用更新版本,并在可行情况下使用虚拟环境。

  • : 20.10.0+,需安装 Docker Compose。

确保运行 Reorc Agent 的用户有权限访问 Docker CLI。可以使用以下命令授予用户权限。在修改用户组后,可能需要注销并重新登录终端会话。

sudo usermod -aG docker $USER 

设置 Reorc Agent

请按照以下步骤进行操作:

  1. 在 Reorc 左侧边栏中,点击“组织/ Organization”图标并选择“环境和 Workers/ Environment & Workers”。

  2. 点击“部署 Agent/ Deploy Agent”并按照屏幕上的指示完成 Agent 的部署。

    或者,您也可以按照以下步骤操作。

在命令行界面(CLI)中安装 Reorc Agent
  1. 在 Worker Host 上:安装 Agent 包。

pip install -U reorc-agent

您可以通过运行以下命令来验证安装是否成功: reorc version

  1. 在 Worker Host 上:将 Host 注册到控制面。

reorc login
  1. 在“环境和 Workers/ Environments & workers”页面中,点击“部署 Agent/ Deploy Agent”,复制API密钥,并粘贴到 Host 上。

  2. 在 Worker Host 上:启动 Agent,Agent 将持续向控制面发送心跳信号。

reorc agent start
  1. 刷新页面以查看新部署的 Host,状态应显示为“在线/ Online”。

  2. 将 Agent 分配到环境。

    当 Agent 运行并显示“在线/ Online”状态后,点击“操作/ action”>“加入环境/ Join Environment”,选择要分配的环境。当 Agent 成功加入环境后,您应会看到状态变为“活动中/ Active”。

注意事项

  • dev 和prod 环境必须至少各有一个 Agent 在运行。

Agent 的操作

当 Agent 启动并运行后,您可以执行一些关键操作。

点击 Agent 的 操作/action 按钮即可:

可以执行以下操作:

  • 重启服务:重启 Agent 服务,重启后 Agent 仍会加入环境。

  • 停止服务:停止 Agent 服务, Agent 将变为非活动状态。

  • 离开环境:将 Agent 服务从当前环境中移除。

在后台运行 Agent

systemd
  1. 创建配置文件

创建 /etc/systemd/system/reorc-agent.service 文件,并添加以下内容:

[Unit]
Description=ReOrc Agent Service
After=network.target

[Service]
User=<os_user>
Group=<os_user>
ExecStart=/path/to/python/bin/reorc agent start
Restart=on-failure
Environment=PYTHONUNBUFFERED=1
StandardOutput=append:/var/log/reorc/agent.log
StandardError=append:/var/log/reorc/agent.log

[Install]
WantedBy=multi-user.target
  1. 准备日志文件夹和权限

sudo mkdir -p /var/log/reorc
sudo chown <os_user>:<os_user> /var/log/reorc
  1. 启动服务

sudo systemctl daemon-reload
sudo systemctl start reorc-agent
sudo systemctl enable reorc-agent
Supervisor

安装 Supervisor

  1. 安装 Supervisor

# Install on Ubuntu 
sudo apt install supervisor

# Install on CentOS (RHEL)
sudo dnf install supervisor

# or
sudo yum install supervisor
  1. 创建用户组和用户

sudo groupadd supervisor
sudo usermod -aG supervisor $USER
  1. 创建配置文件

安装后,/etc/supervisord.conf 中应该已经有一个配置文件。做一些修改以允许supervisor 中的用户运行访问 supervisord。

[unix_http_server]
file=/run/supervisor/supervisor.sock   ; (the path to the socket file)
chmod=770
chown=root:supervisor
  1. 启用并启动 supervisord

sudo systemctl enable supervisord
sudo systemctl start supervisord

现在,您应该能够运行 supervisorctl (supervisord 的控制命令行界面)。

添加 reorc-agent

  1. 将一个配置文件添加到 /etc/supervisord.d/reorc-agent.ini,其内容如下:

[program:reorc-agent]
command = /path/to/python/bin/reorc agent start
autorestart = true
stopasgroup = true
killasgroup = true
umask = 000
user = <os_user>
redirect_stderr = true
stdout_logfile = /var/log/reorc/agent.log

请注意:

  • 将 command 替换为 reorc 二进制文件的绝对路径。通常是 Python 环境(或虚拟环境)的 bin 文件夹。

  • 替换 user。

  • 替换日志路径 stdout_logfile,用户应该具有对该文件夹的写访问权限。

  1. 通过 supervisorctl 管理进程

# Reload config and add/remove as necessary, and will restart affected programs
supervisorctl update

# start, stop, and restart reorc-agent
supervisorctl start reorc-agent
supervisorctl stop reorc-agent
supervisorctl restart reorc-agent

升级 Agent

始终建议保持 Reorc Agent 的更新。

要升级 Agent ,请按照以下步骤操作:

  1. 停止 Agent 服务

    根据您管理服务的方式,您可能需要运行以下命令之一来停止该进程:

# if managed by Systemd
sudo systemctl stop reorc-agent

# if managed by Supervisor
supervisorctl stop reorc-agent
  1. 升级并重新登录

# Upgrade to the latest version
pip install -U reorc-agent

reorc login
  1. 启动 Agent

# if managed by Systemd
sudo systemctl start reorc-agent

# if managed by Supervisor
supervisorctl start reorc-agent

reorc agent start 命令会在前台启动 Agent ,当终端会话关闭时,Agent 也会终止。对于生产部署,您应让 Agent 在后台运行。更多详细信息,请参考: 。

有多种方式可以将 Agent 在后台运行,例如,使用 或 等工具。

Docker
在后台运行 Agent
systemd
Supervisor