safesight-edge/docs/deployment.md

2.2 KiB
Raw Blame History

Edge 设备部署指南

首次部署(从 SD 卡克隆)

克隆前准备

在源设备上清理不需要的文件后关机,取出 SD 卡,使用 dd 或烧录工具克隆到新卡。

克隆后配置

将新 SD 卡插入新设备,开机,执行以下步骤:

1. 生成新的设备 ID

管理端通过设备 ID 区分不同设备,克隆后必须更换:

sudo rm -f /etc/machine-id /var/lib/safesight-edge-agent/device_id
sudo systemd-machine-id-setup

2. 重新生成 SSH 主机密钥

sudo rm -f /etc/ssh/ssh_host_*_key*
sudo ssh-keygen -A

3. 设置主机名

sudo hostnamectl set-hostname <新主机名>

4. 配置静态 IP生产环境

编辑 netplan 配置:

sudo nano /etc/netplan/01-network-manager-all.yaml

写入:

network:
  version: 2
  ethernets:
    enP4p65s0:              # 网卡名,用 ip addr 确认
      dhcp4: no
      addresses:
        - 10.0.0.82/24       # 目标 IP
      routes:
        - to: default
          via: 10.0.0.1      # 网关
      nameservers:
        addresses:
          - 10.0.0.1         # DNS

应用:

sudo netplan apply

5. 重启

sudo reboot

验证

# 确认服务状态
systemctl status safesight-edge-server safesight-edge-agent

# 确认新 IP
ip addr show | grep inet

# 确认新设备 ID
cat /var/lib/safesight-edge-agent/device_id

# 管理端发现新设备后,在设备详情页设置别名

更新部署

在线更新(可访问 git

cd ~/apps/safesight-edge
git pull
bash scripts/build.sh -m -j4
cd agent && go build -o safesight-edge-agent ./cmd/safesight-agent && cd ..
sudo ./scripts/deploy.sh upgrade

离线更新(生产内网)

在开发机上执行:

bash scripts/package-offline.sh

将生成的 safesight-upgrade-*.tar.gz 传到生产设备:

# 通过 SCP替换 IP
scp safesight-upgrade-*.tar.gz orangepi@10.0.0.82:/tmp/

# 或通过 U 盘挂载后复制

在生产设备上:

tar -xzf safesight-upgrade-*.tar.gz -C /tmp/
cd /tmp/safesight-upgrade-*
sudo ./deploy.sh upgrade    # 已升级过的新设备
# 或
sudo ./upgrade-from-old.sh   # 首次从旧版本升级