跳到正文

添加服务器 ​

还没有服务器?可以通过 Zenavo 购买一台。

打开 服务器 → 添加服务器,填写:

  • 名称:为项目选择服务器时显示,例如 东京 4C 8GB。
  • 公网 IP 或域名 和 SSH 端口(通常是 22)。
  • SSH 用户:root,或能免密 sudo 的用户。云镜像通常禁止 root 登录;Ubuntu 镜像用 ubuntu,Debian 用 debian,Amazon Linux 用 ec2-user。
  • 认证方式:密码 或 私钥(上传密钥文件或直接粘贴)。密钥必须是未加密的 OpenSSH 或 PEM 私钥,不是 .pub 文件。如果密钥有密码短语,用 ssh-keygen -p -f <file> 去掉。

两者都只供初始化任务使用。初始化成功后立即清除;初始化失败时会加密保留一天,方便你不用重新输入就能重试,之后再清除。服务器正常运行后,Zenavo 不保留对它的 SSH 访问:只通过 Zenavo agent 访问服务器,由 agent 从服务器主动向外连接(防火墙与安全)。

找到密钥文件

密钥通常在 ~/.ssh 中,文件选择器默认会隐藏它。在 macOS 的文件选择器中按 ⌘ ⇧ G 输入路径,或按 ⌘ ⇧ . 显示隐藏文件夹。

点击 连接并初始化。Zenavo 会:

  1. 通过 SSH 连接,并显示服务器的 主机密钥指纹。再次运行初始化时,如果指纹变了,Zenavo 会拒绝连接。
  2. 检查操作系统、CPU、内存和 sudo 权限。
  3. 在服务器上测量是否应该使用中国大陆的安装源,然后安装固定版本的 K3s,再安装 cert-manager 和 Let's Encrypt 签发器。
  4. 确认节点、Traefik、存储供应器和监控组件都已就绪。
  5. 安装 Zenavo agent,并等待它通过 HTTPS 连上控制面。
  6. 清除 SSH 凭据。

进度实时显示在服务器的 状态 标签页。如果初始化失败,按显示的原因处理后点击 重试初始化;已完成的步骤会被跳过。失败后一天内可以沿用你填写的 SSH 凭据(使用上次尝试的凭据);超过一天则需要重新输入。

核对主机密钥 ​

为了确认你连接的是正确的机器,可以把控制台显示的指纹和服务器上的指纹进行比对:

sh
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub

在大多数云平台上,也可以不用 SSH,直接从实例的串行控制台读取。

中国大陆的服务器 ​

在中国大陆访问 GitHub 和 Docker Hub 很慢或者无法访问,所以初始化可以改用国内的镜像源安装。

初始化会在服务器上对三个小请求计时:GitHub、Docker Hub 和 Rancher 在中国的 K3s 镜像。如果中国镜像能访问而 Docker Hub 或 GitHub 不能,或者 GitHub 慢了四倍以上,就使用国内源。如果中国镜像无法访问,则始终使用国际源。Zenavo 不会通过 GeoIP 服务查询服务器的位置。状态 标签页的日志会显示选择了哪些安装源以及原因。香港、澳门和台湾的服务器通常能直接访问 GitHub,因此使用国际源。

使用国内源时:

  • K3s 来自 Rancher 官方的中国镜像(rancher-mirror.rancher.cn,INSTALL_K3S_MIRROR=cn),与 K3s 文档为中国用户描述的方式一致。Zenavo 固定版本,并用 K3s 在 GitHub 上发布的校验和检查安装的二进制文件。如果不匹配,就删除该文件并停止。
  • 公开镜像(K3s 系统镜像、cert-manager,以及来自 Docker Hub、Quay、GHCR、registry.k8s.io 和 gcr.io 的镜像)通过 /etc/rancher/k3s/registries.yaml 从 Zenavo 在国内的镜像拉取。每个镜像在镜像站下保留完整的原始名称,例如 docker.io/library/nats:2.14 会变成 <mirror>/docker.io/library/nats:2.14。如果某个镜像没有被同步,服务器会从它原来的镜像仓库拉取。
  • Zenavo 构建的镜像(来自你的 Git 仓库)会在部署前复制到 Zenavo 位于上海的镜像存储,服务器从那里下载,不需要离开中国大陆。部署日志会显示这次复制(“copying the image to mainland China”),每个镜像只复制一次。

如果 /etc/rancher/k3s/registries.yaml 已经存在且不是 Zenavo 写入的,初始化不会改动它。

与 Zeabur 无关联。