在 Azure 上托管 n8n#
本托管指南将展示如何在 Azure 上自托管 n8n。方案采用 n8n 搭配 Postgres 作为数据库后端,并通过 Kubernetes 管理必要资源及反向代理。
前置要求#
需要安装 Azure 命令行工具
自托管知识储备
自托管 n8n 需要具备以下技术知识:
- 服务器与容器的设置配置
- 应用资源管理与扩缩容
- 服务器与应用安全防护
- n8n 配置
n8n 建议仅专业用户进行自托管。操作失误可能导致数据丢失、安全问题和服务中断。若缺乏服务器管理经验,推荐使用 n8n 云服务。
最 新版与预览版说明
n8n 每周会发布新的次要版本。latest 为生产环境适用版本,next 则是最新发布的版本。请将 next 视为测试版:可能存在不稳定情况。问题反馈请使用社区论坛。
当前 latest 版本:1.119.2
当前 next 版本:1.119.3
托管方案选择#
Azure 提供多种适用于 n8n 的托管方式,包括 Azure 容器实例(针对容器运行优化)、Linux 虚拟机以及 Azure Kubernetes 服务(基于 Kubernetes 的容器运行)。
本指南采用 Azure Kubernetes 服务 (AKS) 作为托管方案。虽然使用 Kubernetes 会增加一定复杂性和配置工作,但这是根据需求变化扩展 n8n 的最佳方案。
本指南中的步骤将混合使用 Azure 界面和命令行工具,但您可选择任一方式完成大多数任务。
打开 Azure Kubernetes 服务#
通过 Azure 门户 选择 Kubernetes 服务。
创建集群#
在 Kubernetes 服务页面,选择 创建 > 创建 Kubernetes 集群。
可根据需求选择任意配置选项,完成后选择 创建。
设置 Kubectl 上下文#
本指南后续步骤需将 Azure 实例设为 Kubectl 上下文。通过打开集群实例的详情页面并点击 连接 按钮,可找到连接信息。生成的代码片段展示了在终端中粘贴运行的步骤,可将本地 Kubernetes 设置切换至新集群。
克隆配置仓库#
Kubernetes 和 n8n 需要一系列配置文件。可从该仓库克隆这些文件。后续步骤将说明各文件的配置功能及需修改的内容。
使用以下命令克隆仓库:
git clone https://github.com/n8n-io/n8n-hosting.git
并切换目录:
cd n8n-hosting/kubernetes