DSE Windows 和 Linux 可部署包

DSE 生成可部署包的用户与认证帮助

Windows win-x64 + 原生 Linux linux-x64 • Linux 已在 Ubuntu Server 26.04.1 LTS / Microsoft Hyper-V 上验证

生成的 Windows 和 Linux 可部署包认证运行

请在 Generate deployables 完成后使用本节。本节记录生成的 win-x64 和原生 linux-x64 包的认证/运行流程。这些是 DSE 生成的集成运行器,不是 DSE 商业 Windows/Container 安装 SKU。

生成的 deployable 是可移植的集成运行器,与 DSE 商业安装 SKU 不同。

Windows 可部署包 (windows/win-x64)

将生成的 Windows 文件夹复制到认证机器(或解压传输的压缩包),然后从 windows\win-x64 目录操作。

首次运行前请确认以下生成文件存在:

启动本地 Runtime Manager:

cd /d C:\Path\To\deployables\windows\win-x64
manager.cmd

manager.cmd 会启动 DataSourceExplorer.Runner.exe --manager。管理器只监听 127.0.0.1,通常会自动打开默认浏览器。如果浏览器未打开,请直接运行可执行文件并使用控制台中显示的 Local management URL。

  1. 确认 Runtime status 为 READY,且没有活动执行。
  2. 在 Connections 中确认所有必需源和目标均显示 Configured。若要保留保存/嵌入的值,请将受保护字段留空。
  3. 首次认证运行请使用 Manual only,并将输出目录设置为 output。
  4. 选择 Run now,等待状态返回 READY。
  5. 确认 Last result 和 Run history 显示 Success,然后独立验证预期输出文件/目标数据。

一次性无界面运行:

run.cmd
生成器会先尝试 self-contained 发布。如果回退为 framework-dependent 发布,请在目标机器安装匹配的 .NET 8 和 ASP.NET Core 8 Runtime。

Linux 可部署包 (linux/linux-x64) — 已验证的 Ubuntu Hyper-V 流程

以下流程遵循提供用于认证的 Ubuntu Server 26.04.1 LTS / Microsoft Hyper-V 已验证指南。它运行原生 Linux 可部署包;此流程不需要 Docker。

从 Windows 浏览器访问的推荐安全方式

与其把管理器暴露到 VM 网络,不如在读取 Linux 日志中的管理器端口后,从 Windows PowerShell 建立本地 SSH 端口转发:

ssh -L 18093:127.0.0.1:<manager-port> <linux-user>@<VM-IP>

然后在 Windows 打开 http://127.0.0.1:18093/。使用管理器期间请保持 SSH 会话打开。下方的 socat 转发仍可用于隔离/可信的认证网络。

目的

本流程创建一个轻量级 Ubuntu Server 虚拟机,并运行由 DSE 生成的原生 Linux 可部署包。它对应 Windows 上的部署流程:复制生成的包、启动 DSE Deployable Runtime Manager、从 Windows 主机打开管理器、执行部署并验证结果。

本文所述包是原生 linux-x64 可部署包。本流程不需要 Docker。

先决条件

Windows→Hyper-V→Ubuntu→DSE Runtime Manager→Browser

1. 创建 Hyper-V 虚拟机

创建第 2 代虚拟机,并使用以下基准配置:

虚拟机名称DSE-Linux-Test
代数Generation 2
内存建议固定 4096 MB RAM
处理器4 个虚拟处理器
磁盘40 GB 动态扩展 VHDX
网络Hyper-V Default Switch
Secure Boot启用 - Microsoft UEFI Certificate Authority
操作系统Ubuntu Server LTS(本流程使用 26.04.1 验证)
安装 Ubuntu 时选择 Install OpenSSH server。安装完成后弹出 ISO,并从虚拟硬盘启动。

2. 准备 Ubuntu

登录 Ubuntu 并更新系统,然后检查 CPU、内存、磁盘和 IP 地址。

sudo apt update
sudo apt upgrade -y
hostname -I
nproc
free -h
df -h

如果 40 GB VHDX 已创建,但根逻辑卷只有约 18-19 GB,请扩展 LVM 根卷以使用剩余空间。

sudo vgs
sudo lvextend -l +100%FREE -r /dev/ubuntu-vg/ubuntu-lv
df -h

3. 从 Windows 使用 SSH 连接

使用 hostname -I 显示的当前虚拟机 IP。Hyper-V Default Switch 的地址可能在重启后改变。

ssh <linux-user>@<VM-IP>

4. 复制生成的 Linux 文件夹

请从 Windows PowerShell 运行 ssh/scp,而不是从 Ubuntu shell 运行。DSE 生成的是 linux 文件夹,而不是 linux.zip 文件。将示例路径、用户和 IP 替换为实际值。

ssh <linux-user>@<VM-IP> "rm -rf /home/<linux-user>/dse-deploy/linux && mkdir -p /home/<linux-user>/dse-deploy"
scp -r "C:\Path\To\GeneratedDeployables\...\linux" <linux-user>@<VM-IP>:/home/<linux-user>/dse-deploy/
如果出现 “Could not resolve hostname c:”,说明 scp 是在 Ubuntu 中运行的。退出到 Windows PowerShell 后重新运行。

5. 准备部署包

如需使用 relay,请安装 socat,然后进入已复制的 linux-x64 目录并添加 Linux 执行权限。当前 DSE shell 脚本为无 BOM 的 UTF-8,因此不需要解压或移除 BOM。

sudo apt update && sudo apt install -y socat
cd ~/dse-deploy/linux/linux-x64
chmod +x DataSourceExplorer.Runner manager.sh run.sh
ls -l DataSourceExplorer.Runner manager.sh run.sh

6. 验证源/目标连接

启动 DSE 前,确认 Ubuntu VM 可以访问所需的主机和端口。下面示例使用 MongoDB 27017 端口。

timeout 5 bash -c '</dev/tcp/<source-host>/<source-port>' \
  && echo 'Port reachable' \
  || echo 'Port NOT reachable'

# MongoDB example
timeout 5 bash -c '</dev/tcp/192.168.50.124/27017' \
  && echo 'MongoDB port reachable' \
  || echo 'MongoDB port NOT reachable'

7. 启动 DSE Deployable Runtime Manager

启动管理器并查看控制台日志。管理器绑定到 127.0.0.1,并选择一个本地端口。

cd ~/dse-deploy/linux/linux-x64
./manager.sh
sleep 2
cat .dse-manager/manager-console.log
curl http://127.0.0.1:<manager-port>/ | head
成功日志会包含类似内容:Local management URL: http://127.0.0.1:51827。重启后端口可能改变。

8. 让 Windows 浏览器访问管理器

在 Ubuntu 中使用 socat,将固定的虚拟机端口 18093 转发到管理器当前的 loopback 端口。下面命令会自动检测虚拟机 IP 和管理器端口。

cd ~/dse-deploy/linux/linux-x64
VM_IP=$(hostname -I | awk '{print $1}')
MANAGER_PORT=$(grep -oE '127\.0\.0\.1:[0-9]+' .dse-manager/manager-console.log | tail -1 | cut -d: -f2)
nohup socat TCP-LISTEN:18093,bind="$VM_IP",reuseaddr,fork TCP:127.0.0.1:"$MANAGER_PORT" > ~/dse-relay.log 2>&1 &
echo "Open: http://$VM_IP:18093/"
ss -ltnp | grep 18093
只在受信任的测试网络中使用此转发。socat 运行期间,管理器可通过虚拟机网络接口访问。

9. 从界面运行部署包

  1. 在 Edge 或 Chrome 中打开转发命令显示的 URL。
  2. 确认 Runtime status 显示 READY,且没有活动执行。
  3. 在 Connections 中确认源和目标显示 Configured。如果要保留嵌入的受保护连接值,请保持相关字段为空。
  4. 首次测试时,将 Scheduler configuration 设置为 Manual only,将 Output directory 设置为 output,然后保存。
  5. 选择 Run now,并等待状态返回 READY。
  6. 确认 Last result 和 Run history 显示 Success,然后验证输出文件和目标数据。

10. 停止、重启与清理

虚拟机重启后,IP 和管理器端口可能变化。再次运行 manager.sh,读取新端口并重新启动 socat。停止转发:

pkill -f 'socat TCP-LISTEN:18093' || true

验证清单

故障排除

Issue / SymptomAction
scp 显示 Could not resolve hostname c:从 Windows PowerShell 运行 scp,不要从 Ubuntu 运行。
Permission denied 或脚本无法启动运行 chmod +x DataSourceExplorer.Runner manager.sh run.sh。
curl -I 返回 405 Method Not Allowed如果管理器只允许 GET 而不允许 HEAD,这是正常的。使用 curl http://127.0.0.1:<port>/ 测试。
浏览器无法打开 127.0.0.1 管理器 URL使用 socat 转发,然后在 Windows 中打开 http://<VM-IP>:18093/。
重启后页面失效重新运行 manager.sh 并重新创建转发,因为 IP 和端口可能改变。
源连接测试失败检查路由/防火墙,并从 Ubuntu 测试目标主机和端口。
集成到产品帮助时,请使用本包中的本地化 HTML 页面。命令保持不变,只翻译说明文字和界面指导。

相关资源

使用视频教程进行可视化演示,或返回文档中心查看其他 DSE 资源。

文档主页  •  多语言视频帮助  •  安装指南  •  DSE 网站