اگر قصد دارید یک AI Agent واقعی بسازید که فقط متن تولید نکند و بتواند ایمیل بخواند، اطلاعات CRM را بررسی کند، پرداخت را استعلام بگیرد، پیامک ارسال کند، APIهای ایرانی را فراخوانی کند و بر اساس نتیجه مرحله بعدی را خودش انتخاب کند، به یک زیرساخت دائمی برای اجرای Workflow نیاز دارید. در چنین سناریویی سرور مجازی خارج با n8n Self-Hosted یکی از جذابترین معماریهاست؛ زیرا هم به APIهای بینالمللی AI نزدیک است و هم میتوان از طریق HTTP، Webhook یا یک Gateway واسط به سرویسهای ایرانی متصل شد.
📌 خلاصه معماری پیشنهادی:
🔹 اجرای n8n روی VPS خارج برای دسترسی پایدار به مدلهای AI و سرویسهای جهانی.
🔹 اتصال مستقیم به APIهای ایرانی که IP خارجی را میپذیرند.
🔹 استفاده از VPS ایران بهعنوان API Gateway برای سرویسهایی که IP ایران، Whitelist یا دسترسی داخلی میخواهند.
🔹 استفاده از PostgreSQL، HTTPS، Credential Encryption و Rate Limit برای Production.
🔹 جداسازی Workflow Engine از LLM؛ یعنی Agent روی n8n باشد اما مدل AI بتواند OpenAI، Claude، Gemini، Ollama یا هر Provider دیگری باشد.
Agentic AI Workflow چیست و چه فرقی با اتوماسیون معمولی دارد؟
در Workflow سنتی، مراحل از قبل مشخصاند: اگر فرم ثبت شد، ایمیل ارسال کن؛ اگر پرداخت موفق بود، سفارش را تایید کن. اما در Agentic AI یک مدل زبانی میتواند بر اساس هدف، Context و ابزارهای در دسترس تصمیم بگیرد که چه Actionهایی اجرا شوند.
برای مثال یک Agent پشتیبانی میتواند متن کاربر را تحلیل کند، نوع مشکل را تشخیص دهد، اطلاعات مشتری را از API ایرانی CRM دریافت کند، وضعیت پرداخت را از یک درگاه بررسی کند، مستندات داخلی را جستوجو کند و سپس تصمیم بگیرد پاسخ مستقیم بدهد یا Ticket را برای نیروی انسانی Escalate کند.
| نوع Workflow | منطق تصمیم | نمونه |
|---|---|---|
| Automation سنتی | قوانین ثابت If/Else | بعد از خرید پیامک بفرست |
| AI Workflow | AI یک مرحله را پردازش میکند | خلاصهسازی Ticket |
| Agentic Workflow | AI ابزار انتخاب میکند و چند مرحله تصمیم میگیرد | بررسی مشتری، پرداخت، CRM و اقدام بعدی |
چرا سرور مجازی خارج برای Agentic AI جذاب است؟
بسیاری از Agentهای امروزی فقط به یک API متصل نیستند. یک Workflow ممکن است در یک اجرای واحد به مدل زبانی، Search API، سرویس Embedding، پایگاه داده خارجی، GitHub، Slack، Google Workspace یا چند سرویس SaaS دیگر متصل شود.
قرار دادن Workflow Engine روی یک VPS خارج میتواند مسیر ارتباط با این سرویسها را سادهتر کند و یک IP ثابت خارجی در اختیار شما قرار دهد. مهمتر از آن، n8n بهصورت Self-hosted روی همان سرور اجرا میشود و Workflow، Credentialها، Execution History و منطق تجاری تحت کنترل خودتان قرار میگیرد. n8n نیز رسماً امکان Deploy روی زیرساخت شخصی را ارائه میدهد.
وبسایت رسمی n8n
🔹 IP ثابت برای Webhook و OAuth Callback.
🔹 اجرای 24 ساعته Workflow بدون وابستگی به کامپیوتر شخصی.
🔹 دسترسی Root و امکان نصب Docker، PostgreSQL و Redis.
🔹 امکان اتصال به چند Provider هوش مصنوعی.
🔹 امکان تعریف Reverse Proxy، Firewall و Backup اختصاصی.
🔹 امکان اجرای Queue Worker جداگانه در زمان رشد Workflowها.
n8n Self-Hosted دقیقاً چه چیزی به ما میدهد؟
n8n یک Workflow Automation Platform است که در نسخه Self-hosted میتواند روی Docker، Docker Compose یا زیرساخت شخصی اجرا شود. در نسخههای فعلی، n8n علاوه بر Workflowهای کلاسیک، قابلیت AI Agent، اتصال به مدلهای مختلف، MCP و RAG را نیز در اختیار کاربران قرار میدهد.
این نکته برای پروژههای ایرانی مهم است؛ زیرا اگر برای یک سرویس داخلی Node آماده وجود نداشته باشد، معمولاً میتوان با HTTP Request Node مستقیماً API آن سرویس را فراخوانی کرد.
Agent در n8n چگونه کار میکند؟
در یک Workflow Agentic معمولاً چهار جزء اصلی دارید: مدل زبانی، Memory، Tool و Trigger. Tool میتواند هر Workflow، HTTP API، Database Query یا سرویس خارجی باشد.
| جزء | وظیفه | نمونه |
|---|---|---|
| Trigger | شروع Workflow | Webhook، Cron، Telegram |
| LLM | Reasoning و تصمیم | GPT، Claude، Gemini یا مدل داخلی |
| Memory | حفظ Context | PostgreSQL یا Redis |
| Tool | اجرای عمل واقعی | API پیامک، CRM، پرداخت |
یک اصلاح مهم: Make Self-hosted با n8n Self-hosted یکی نیست
در بسیاری از مقالات عبارت Make Self-hosted به شکلی استفاده میشود که تصور میشود میتوان کل پلتفرم Make را مانند n8n روی یک VPS نصب کرد. در سرویس فعلی Make، این برداشت دقیق نیست.
طبق اطلاعات فعلی Make، سناریوهای اصلی روی زیرساخت Cloud این شرکت در AWS اجرا میشوند. قابلیت On-prem Agent در پلن Enterprise اجازه میدهد Make به API یا سرویس داخل شبکه خصوصی شما متصل شود، اما خود Make Scenario Engine بهصورت معمول روی VPS شخصی شما نصب نمیشود.
| ویژگی | n8n Self-hosted | Make + On-prem Agent |
|---|---|---|
| Workflow Engine روی VPS شما | بله | خیر، Cloud باقی میماند |
| دسترسی به API داخلی | مستقیم از VPS | از طریق On-prem Agent |
| کنترل سیستمعامل | کامل | فقط روی Agent محلی |
| Docker Deployment | بله | Agent مستقل، نه کل Make |
| مناسب کنترل کامل روی Workflow Data | بیشتر | وابسته به معماری Cloud Make |
اطلاعات رسمی:
Make On-prem Agent
چرا اتصال VPS خارج به APIهای ایرانی میتواند چالشبرانگیز شود؟
این بخش همان جایی است که یک مقاله معمولی درباره n8n کافی نیست. وقتی Workflow شما خارج از ایران اجرا میشود اما قرار است به سرویسهای داخلی متصل شود، مسیر شبکه اهمیت زیادی پیدا میکند.
بسته به Provider، ممکن است API ایرانی از IP خارجی بدون مشکل پاسخ دهد، IP ثابت را Whitelist کند یا به دلایل امنیتی و شبکهای دسترسی برخی Locationها محدود باشد. بنابراین قبل از طراحی Production باید API موردنظر از همان VPS واقعی تست شود.
⚠️ فرض نکنید چون API در Browser باز میشود، Webhook و POST از دیتاسنتر خارج هم حتماً کار میکند.
⚠️ IP Allowlist، WAF، Geo Restriction و Timeout میتوانند رفتار متفاوتی ایجاد کنند.
⚠️ Callback پرداخت و Webhook ورودی را جدا از Request خروجی تست کنید.
سه معماری برای اتصال Agent خارجی به API ایرانی
| معماری | مسیر | مزیت | مناسب برای |
|---|---|---|---|
| مستقیم | VPS خارج → API ایران | ساده و کمهزینه | API بدون محدودیت IP خارجی |
| Hybrid Gateway | VPS خارج → VPS ایران → API ایران | IP ایران و کنترل امنیت | APIهای حساس یا Whitelist |
| تقسیم Workflow | Agent خارج + Worker ایران | تفکیک کامل شبکه | اتوماسیون سازمانی پیچیده |
برای Agentic AI یک VPS خارج با IP ثابت انتخاب کنید
n8n، Docker، PostgreSQL، Redis، Webhook و APIهای AI برای اجرای پایدار به یک سرور همیشهروشن با IP ثابت نیاز دارند. سرورهای مجازی ایرانیکاسرور برای ساخت Workflowهای Self-hosted امکان در اختیار داشتن Root Access و پیادهسازی Stack اختصاصی را فراهم میکنند.
اگر Agent شما به OpenAI، Claude، Gemini، MCP Serverها یا سرویسهای بینالمللی متصل میشود، VPS خارج میتواند هسته اصلی Workflow باشد. در مرحله بعد، برای APIهایی که نیاز به IP داخل کشور دارند میتوانید یک VPS ایران را بهعنوان Gateway به معماری اضافه کنید.
📌 تماس با پشتیبانی:
021-91302460
| ایرانیکاسرور
سناریوی واقعی: Agent فروش متصل به APIهای ایرانی
فرض کنید یک فروشگاه دارید و میخواهید Agent هوشمند فقط جواب سؤال ندهد، بلکه بتواند وضعیت مشتری را بررسی و عملیات انجام دهد.
🔹 مشتری در Chat سؤال میپرسد.
🔹 n8n اطلاعات مشتری را از CRM دریافت میکند.
🔹 Agent تشخیص میدهد آیا نیاز به استعلام پرداخت وجود دارد.
🔹 HTTP Request به API پرداخت داخلی ارسال میشود.
🔹 در صورت موفقیت، Agent درخواست ارسال پیامک را صادر میکند.
🔹 نتیجه در CRM و Database ثبت میشود.
🔹 اگر Confidence پایین باشد Workflow به نیروی انسانی منتقل میشود.
وبسرویسهایی مانند سرویس پیامک کاوهنگار نیز API ارائه میکنند و میتوان آنها را در Workflowهای HTTP محور قرار داد. برای جزئیات فنی هر سرویس باید مستندات همان Provider بررسی شود.
مستندات API کاوهنگار
چگونه API ایرانی را در n8n فراخوانی کنیم؟
اگر سرویس Node آماده نداشته باشد، تقریباً همیشه میتوانید از HTTP Request استفاده کنید. کافی است Method، URL، Header و Body را مطابق مستندات API تنظیم کنید.
نمونه عمومی درخواست Bearer Token
curl -X POST "https://api.example.ir/v1/action" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"customer_id": 1258,
"action": "check_status"
}'
⚠️
API Key را داخل Code Node یا JSON Workflow هاردکد نکنید. آن را در بخش Credentials یا Secret Management نگهداری کنید تا Export شدن Workflow باعث افشای کلید نشود.
نصب n8n روی VPS خارج با Docker
n8n استفاده از Docker را برای بسیاری از سناریوهای Self-hosting پشتیبانی میکند و در مستندات فعلی Docker Compose نیز یکی از روشهای اصلی نصب است.
برای شروع ساده ابتدا Docker و Compose را نصب کنید:
sudo apt update
sudo apt install docker.io docker-compose-v2 -y
sudo systemctl enable --now docker
یک پوشه برای Stack ایجاد کنید:
mkdir -p /opt/n8n
cd /opt/n8n
Docker Compose پایه برای n8n + PostgreSQL
services:
postgres:
image: postgres:16
restart: unless-stopped
environment:
POSTGRES_DB: n8n
POSTGRES_USER: n8n
POSTGRES_PASSWORD: CHANGE_THIS_PASSWORD
volumes:
- postgres_data:/var/lib/postgresql/data
n8n:
image: n8nio/n8n:latest
restart: unless-stopped
depends_on:
- postgres
ports:
- "127.0.0.1:5678:5678"
environment:
DB_TYPE: postgresdb
DB_POSTGRESDB_HOST: postgres
DB_POSTGRESDB_PORT: 5432
DB_POSTGRESDB_DATABASE: n8n
DB_POSTGRESDB_USER: n8n
DB_POSTGRESDB_PASSWORD: CHANGE_THIS_PASSWORD
N8N_ENCRYPTION_KEY: CHANGE_TO_A_LONG_RANDOM_SECRET
N8N_HOST: n8n.example.com
N8N_PROTOCOL: https
N8N_WEBHOOK_URL: https://n8n.example.com/
GENERIC_TIMEZONE: Asia/Tehran
TZ: Asia/Tehran
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
postgres_data:
در نسخههای جدید n8n بهتر است برای Reverse Proxy از N8N_WEBHOOK_URL استفاده شود. متغیر قدیمی WEBHOOK_URL از نسخه 2.35.0 Deprecated شده است.
اجرای Stack:
docker compose up -d
docker compose ps
docker compose logs -f n8n
چرا PostgreSQL بهتر از SQLite است؟
برای تست و Workflow کمحجم SQLite ساده است، اما وقتی Execution زیاد میشود، چند Worker دارید یا Queue Mode فعال میکنید، PostgreSQL انتخاب مناسبتری برای Production است. مستندات n8n نیز برای معماری Queue Mode استفاده از SQLite را توصیه نمیکنند.
| سناریو | Database پیشنهادی |
|---|---|
| تست شخصی | SQLite قابل قبول |
| Workflow تجاری | PostgreSQL |
| Queue Mode | PostgreSQL + Redis |
| چند Worker | PostgreSQL + Redis |
Webhook؛ مهمترین بخش n8n روی VPS خارج
بخش زیادی از Workflowها با Webhook شروع میشوند. برای مثال سایت شما پس از ثبت سفارش یک Request به n8n میفرستد یا سرویس پرداخت نتیجه Transaction را به یک Callback اعلام میکند.
اگر n8n پشت Nginx یا Reverse Proxy قرار دارد، باید URL عمومی صحیح برای Webhook تعریف شود؛ در غیر این صورت ممکن است n8n آدرس داخلی Port 5678 را تولید کند. مستندات فعلی n8n برای این حالت N8N_WEBHOOK_URL و N8N_PROXY_HOPS را معرفی میکنند.
N8N_WEBHOOK_URL=https://n8n.example.com/
N8N_PROXY_HOPS=1
معماری Hybrid؛ بهترین راه برای API خارجی + API ایرانی
در بسیاری از پروژههای ایرانی بهترین معماری این نیست که همه چیز را فقط در ایران یا فقط در خارج قرار دهید. معماری Hybrid میتواند مزیت هر دو Location را همزمان بدهد.
✅ n8n و Agent روی VPS خارج.
✅ اتصال مدلهای بینالمللی از همان سرور.
✅ یک Gateway کوچک روی VPS ایران.
✅ APIهای داخلی فقط Gateway ایران را Whitelist کنند.
✅ ارتباط VPS خارج و ایران با Token، VPN یا mTLS محدود شود.
مسیر پیشنهادی درخواست
User
|
v
n8n Agent - Foreign VPS
|
+------> OpenAI / Claude / Gemini
|
+------> Global SaaS APIs
|
+------> Secure Iran API Gateway
|
+----> SMS API
+----> Payment API
+----> Iranian CRM
+----> Internal ERP
ترکیب VPS خارج و VPS ایران؛ معماری حرفهای برای اتوماسیون AI
اگر بخشی از Workflow شما به APIهای جهانی و بخشی دیگر به سرویسهای داخلی متصل است، لازم نیست کل معماری را در یک Location محدود کنید. میتوانید VPS خارج ایرانیکاسرور را برای n8n و Agent اصلی استفاده کنید و یک VPS ایران را بهعنوان Relay یا API Gateway در نظر بگیرید.
این ساختار علاوه بر انعطاف شبکه، امکان اعمال Whitelist، Rate Limit و Logging مستقل روی ترافیک APIهای ایرانی را نیز فراهم میکند.
📌 تماس با پشتیبانی:
021-91302460
| ایرانیکاسرور
چه منابعی برای n8n Agentic AI نیاز داریم؟
اگر خود LLM روی VPS اجرا نمیشود و فقط API مدل خارجی را فراخوانی میکنید، n8n به GPU نیاز ندارد. مصرف اصلی متعلق به Node.js، Database، تعداد Executionها و دادههایی است که بین Nodeها منتقل میشوند.
| نوع استفاده | RAM پیشنهادی شروع | CPU | Stack |
|---|---|---|---|
| تست و Automation شخصی | 2GB | 1 تا 2 vCPU | n8n + SQLite/Postgres |
| Workflow تجاری سبک | 4GB | 2 vCPU | n8n + PostgreSQL |
| AI Agent چندکاربره | 8GB | 4 vCPU | Postgres + Redis |
| Workflow پرتعداد | 8 تا 16GB+ | 4 تا 8 vCPU+ | Queue + Workers + Redis |
این مقادیر نقطه شروع عملی هستند و عدد ثابت رسمی برای همه Workflowها محسوب نمیشوند. یک Workflow که فایل 100MB پردازش میکند میتواند چند برابر یک Workflow متنی ساده RAM مصرف کند.
Queue Mode در n8n برای چیست؟
وقتی تعداد Workflowها بالا میرود، بهتر است فرآیند دریافت Webhook و اجرای واقعی Job از هم جدا شود. n8n برای این کار Queue Mode دارد. در این معماری Main Instance درخواستها را مدیریت میکند و Workerها Jobها را از Queue دریافت میکنند.
برای Queue Mode، Redis در نقش Queue Broker قرار میگیرد و چند Worker میتوانند به Redis و Database مشترک متصل شوند. n8n همچنین امکان اجرای چند Worker را فراهم میکند.
EXECUTIONS_MODE=queue
QUEUE_BULL_REDIS_HOST=redis
QUEUE_BULL_REDIS_PORT=6379
چه زمانی Queue Mode لازم نیست؟
اگر روزانه چندصد Workflow سبک دارید، اضافه کردن Redis و چند Worker فقط معماری را پیچیده میکند. ابتدا یک Instance ساده و PostgreSQL راهاندازی کنید و Metrics واقعی را ببینید.
🔹 CPU دائماً پایین است: Queue Mode احتمالاً هنوز لازم نیست.
🔹 Executionها منتظر آزاد شدن منابع هستند: Worker بررسی شود.
🔹 Workflowهای طولانی باعث کند شدن Webhook شدهاند: معماری Queue مفید میشود.
🔹 هزاران Job مستقل دارید: چند Worker قابل توجیه است.
MCP چه نقشی در Agentic Workflow دارد؟
Model Context Protocol یا MCP روشی استاندارد برای معرفی Toolها و قابلیتها به AI Clientهاست. n8n در نسخههای فعلی MCP Server رسمی دارد و میتواند Workflowهای انتخابشده را در اختیار AI Client سازگار قرار دهد.
یعنی میتوانید یک Workflow برای «استعلام سفارش»، یکی برای «ارسال پیامک» و دیگری برای «ایجاد Ticket» بسازید و آنها را بهعنوان Tool در اختیار Agent قرار دهید.
⚠️
هر Workflow را Tool نکنید. Actionهای مالی، حذف اطلاعات یا تغییر وضعیت حساس باید Human Approval، Scope محدود و Validation صریح داشته باشند.
Human-in-the-loop؛ بخشی که نباید از Agent حذف شود
AI Agent میتواند اشتباه کند. بنابراین Workflowهای دارای اثر واقعی نباید صرفاً به خروجی مدل اعتماد کنند.
✅ پاسخ پشتیبانی کمریسک میتواند خودکار ارسال شود.
✅ Refund بهتر است Approval انسانی داشته باشد.
✅ تغییر مالی در CRM باید Validation قطعی داشته باشد.
✅ حذف Account باید خارج از اختیار مستقیم LLM باشد.
امنیت Credentialهای ایرانی و خارجی
یک Workflow Agentic ممکن است همزمان API Key مدل AI، توکن پیامک، Secret پرداخت، Credential Database و OAuth Token داشته باشد. بنابراین Backup و Encryption n8n از خود Workflow مهمتر میشود.
n8n از Encryption Key برای محافظت از Credentialهای ذخیرهشده استفاده میکند. اگر از Worker استفاده میکنید، Main و Workerها باید Encryption Key یکسان داشته باشند تا Credentialها قابل استفاده باشند.
N8N_ENCRYPTION_KEY=use-a-long-random-secret-here
⚠️
فقط Export کردن Workflowها Backup کامل نیست. Database، Volume و Encryption Key باید در برنامه Backup لحاظ شوند؛ در غیر این صورت ممکن است Credentialهای ذخیرهشده قابل بازیابی نباشند.
امنسازی n8n روی اینترنت
🔹 Port 5678 را مستقیم Public نکنید.
🔹 Nginx یا Reverse Proxy جلوی n8n قرار دهید.
🔹 HTTPS معتبر فعال کنید.
🔹 SSH را با Key و Firewall محدود کنید.
🔹 Workflowهای Public Webhook را Rate Limit کنید.
🔹 Execution Data حساس را بیدلیل برای مدت طولانی ذخیره نکنید.
🔹 Docker Image را دورهای Update کنید.
Firewall پایه
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
Webhookهای ایرانی را چگونه امن کنیم؟
اگر یک سرویس ایرانی قرار است Callback را به VPS خارج ارسال کند، Endpoint شما باید Public باشد؛ اما Public بودن به معنی بدون احراز هویت بودن نیست.
✅ Signature سرویس را در صورت وجود Verify کنید.
✅ Transaction ID را دوباره از API رسمی استعلام کنید.
✅ صرفاً به Body ورودی Webhook اعتماد نکنید.
✅ درخواستهای Duplicate را Idempotent مدیریت کنید.
✅ Timeout مناسب تعریف کنید.
Idempotency چرا در Workflowهای مالی حیاتی است؟
اگر Provider یک Webhook را دوبار ارسال کند، Workflow نباید دوبار اعتبار مشتری را افزایش دهد یا دو پیامک سفارش ثبت کند. برای Actionهای حساس یک Event ID یا Transaction ID را در Database ثبت کنید و قبل از اجرای Action بررسی کنید که قبلاً Process نشده باشد.
Retry هوشمند برای APIهای داخلی
قطع موقت شبکه نباید باعث شکست کل Agent شود. اما Retry بینهایت هم خطرناک است.
| HTTP Status | رفتار پیشنهادی |
|---|---|
| 429 | Retry با Backoff |
| 500 / 502 / 503 | Retry محدود |
| 401 / 403 | Retry کورکورانه نکنید؛ Credential بررسی شود |
| 400 | Payload اصلاح شود |
Agent نباید آزادانه هر API را صدا بزند
یکی از خطرهای Agentic AI این است که ابزار بسیار قدرتمندی در اختیار مدل قرار دهیم. اگر Tool شما Endpoint عمومی HTTP باشد و مدل بتواند URL یا Body را آزادانه بسازد، سطح ریسک بالا میرود.
بهتر است Toolهای Agent محدود و هدفمند باشند. برای نمونه بهجای Tool عمومی «HTTP Request»، Tool جداگانهای با نام «CheckPaymentStatus» بسازید که فقط Transaction ID را بگیرد و خودش Endpoint، Method و Authentication را مدیریت کند.
⚠️ Agent نباید API Key را در Prompt ببیند.
⚠️ Agent نباید Arbitrary URL قابلفراخوانی داشته باشد.
⚠️ Action مالی باید Input Validation داشته باشد.
⚠️ دسترسی Toolها باید Minimum Privilege باشد.
نمونه Agentهای قابل ساخت روی n8n
| Agent | API خارجی | API ایرانی |
|---|---|---|
| Agent فروش | LLM و Email | CRM، پیامک، پرداخت |
| Agent پشتیبانی | LLM و Vector DB | Ticket، پنل کاربری، SMS |
| Agent حسابداری | AI Extraction | ERP و سیستم مالی داخلی |
| Agent محتوا | LLM، Search و Image API | CMS یا پنل داخلی |
| Agent DevOps | GitHub و AI | مانیتورینگ داخلی و Ticket |
Make چه زمانی بهتر از n8n است؟
اگر نمیخواهید مسئول Update سیستمعامل، Docker، Database، Monitoring و Backup باشید، Make میتواند تجربه سادهتری ارائه دهد. Make در حال حاضر هزاران Integration آماده و AI Agent داخل Canvas دارد.
اما اگر هدف اصلی شما Self-hosting کامل Workflow Engine، کنترل VPS، Community Node، Custom Code یا معماری اختصاصی است، n8n انعطاف بیشتری برای این مدل Deploy فراهم میکند.
Make On-prem Agent برای API ایرانی چه کاربردی دارد؟
در سازمانی که Make Enterprise دارد، میتوان On-prem Agent را روی Linux نصب کرد و از HTTP Agent برای دسترسی به API موجود در شبکه خصوصی استفاده کرد. Make اعلام کرده که On-prem Agent امکان اتصال به Applicationها و Databaseهایی را فراهم میکند که مستقیماً از اینترنت قابل دسترسی نیستند.
این روش از نظر معماری با «Self-host کردن Make» فرق دارد. Agent واسط داخل شبکه شماست اما Scenario همچنان متعلق به محیط Make است.
چگونه بفهمیم API ایرانی از VPS خارج قابل دسترسی است؟
اول DNS و TLS را تست کنید:
curl -I https://api.example.ir
curl -v https://api.example.ir
زمان اتصال را هم بررسی کنید:
curl -o /dev/null -s \
-w "DNS: %{time_namelookup}\nConnect: %{time_connect}\nTLS: %{time_appconnect}\nTotal: %{time_total}\n" \
https://api.example.ir
اگر GET ساده موفق است، باز هم Endpoint واقعی با Authentication را در محیط Test Provider آزمایش کنید؛ چون Policy بعضی APIها روی Endpointهای مختلف متفاوت است.
چه زمانی VPS ایران بهعنوان Relay لازم میشود؟
🔹 API فقط IP ایران را میپذیرد.
🔹 Provider برای IP ثابت Whitelist انجام داده است.
🔹 ارتباط مستقیم از دیتاسنتر خارجی Timeout میشود.
🔹 Database یا ERP فقط داخل شبکه ایران قابل دسترسی است.
🔹 نمیخواهید Endpoint داخلی مستقیماً در معرض اینترنت خارجی قرار گیرد.
Relay ایران باید چقدر قوی باشد؟
اگر VPS ایران فقط نقش Reverse Proxy یا API Gateway را دارد و هیچ مدل AI روی آن اجرا نمیشود، معمولاً منابع زیادی نیاز نیست. مصرف اصلی به تعداد Request و Logging بستگی دارد.
| نقش VPS ایران | منابع شروع پیشنهادی |
|---|---|
| Nginx Relay ساده | 1GB RAM / 1 vCPU |
| API Gateway + Logging | 2GB RAM / 2 vCPU |
| Worker مستقل + Database سبک | 4GB RAM / 2 vCPU |
چه اطلاعاتی نباید به LLM خارجی ارسال شود؟
Agentic Workflow به این معنی نیست که تمام Payload هر API را مستقیماً وارد Prompt کنید. بهتر است قبل از ارسال به مدل، داده را Minimize و Mask کنید.
⚠️ API Token و Secret.
⚠️ رمز عبور.
⚠️ اطلاعات بانکی غیرضروری.
⚠️ کل پروفایل مشتری وقتی فقط Status لازم است.
⚠️ Log خام دارای Cookie یا Authorization Header.
Pattern بهتر: Tool نتیجه محدود برگرداند
بهجای اینکه Agent پاسخ خام API پرداخت را ببیند، Workflow واسط فقط خروجی محدود و قابلفهم تولید کند:
{
"payment_status": "paid",
"order_id": 8241,
"amount": 1250000
}
در این حالت Agent اطلاعاتی را دریافت میکند که برای تصمیم لازم است، نه کل Response داخلی Provider.
Backup و Disaster Recovery در n8n
برای Production سه بخش باید Backup شوند: Database، Volume مربوط به n8n و Encryption Key. اگر فقط Workflow JSON داشته باشید، Execution History و بخشی از تنظیمات عملیاتی را از دست میدهید.
✅ Backup روزانه PostgreSQL.
✅ نگهداری Encryption Key خارج از خود سرور.
✅ Backup فایل Docker Compose و Environment.
✅ تست Restore دورهای.
مانیتورینگ Workflowها
Agent ممکن است ظاهراً فعال باشد اما API خارجی Timeout بدهد، Worker Crash کند یا Queue پر شود. بنابراین فقط Up بودن Container کافی نیست.
برای بررسی اولیه:
docker compose ps
docker stats
free -h
df -h
uptime
چه چیزی را مانیتور کنیم؟
🔹 Execution Error Rate.
🔹 تعداد Workflowهای در حال اجرا.
🔹 RAM و CPU Container.
🔹 PostgreSQL Disk Usage.
🔹 Redis Queue Length.
🔹 Latency APIهای ایران و خارج.
🔹 تعداد Retry و Timeout.
چرا Execution Data میتواند دیسک را پر کند؟
در n8n هر Execution میتواند Input و Output Nodeها را ذخیره کند. اگر روزانه هزاران Execution اجرا شود یا Workflow فایل و JSON بزرگ پردازش کند، Database به مرور رشد زیادی میکند.
برای Production باید Retention و Pruning متناسب با نیاز Audit تنظیم شود. Workflow موفقی که یک سال قبل اجرا شده لزوماً لازم نیست تمام Payload خود را برای همیشه نگه دارد.
سرور Agentic AI را متناسب با تعداد Workflow انتخاب کنید
برای n8n ساده معمولاً GPU لازم نیست؛ چیزی که اهمیت دارد RAM کافی برای Node.js و PostgreSQL، CPU مناسب برای اجرای همزمان Workflowها، دیسک سریع برای Execution Data و شبکه پایدار برای Webhook است.
اگر بعداً Workflowهای شما رشد کنند، میتوانید از Queue Mode و Workerهای متعدد استفاده کنید. بنابراین بهتر است از ابتدا VPSی انتخاب شود که امکان ارتقای منابع داشته باشد.
📌 تماس با پشتیبانی:
021-91302460
| ایرانیکاسرور
اشتباهات رایج در اجرای n8n روی VPS خارج
⚠️ Public کردن مستقیم Port 5678.
⚠️ استفاده از HTTP بدون TLS.
⚠️ ذخیره API Key در Code Node.
⚠️ عدم Backup از Encryption Key.
⚠️ استفاده از SQLite برای معماری پرترافیک.
⚠️ Queue Mode بدون نیاز واقعی.
⚠️ اعتماد به خروجی LLM برای تراکنش مالی.
⚠️ تست نکردن APIهای ایران از IP دیتاسنتر واقعی.
⚠️ اشتباه گرفتن Make On-prem Agent با Make Self-hosted کامل.
n8n یا Make برای کسبوکار ایرانی؟
| معیار | n8n Self-hosted | Make |
|---|---|---|
| کنترل سرور | کامل | Cloud Managed |
| Self-host Workflow Engine | بله | در سرویس استاندارد فعلی خیر |
| API سفارشی ایران | HTTP Request | HTTP / On-prem Agent در Enterprise |
| نیاز به مدیریت سرور | بله | کمتر |
| انعطاف Custom Code | بالا | خوب، اما Cloud محور |
| Agentic AI | AI Agent + MCP + Toolها | Make AI Agents |
چکلیست Production قبل از فعال کردن Agent
✅ Domain و HTTPS فعال است.
✅ Port 5678 فقط روی localhost Bind شده است.
✅ PostgreSQL Backup دارد.
✅ Encryption Key خارج از VPS Backup شده است.
✅ Credentialها هاردکد نشدهاند.
✅ API ایران از IP واقعی VPS تست شده است.
✅ Actionهای مالی Human Approval دارند.
✅ Retry و Timeout تعریف شدهاند.
✅ Duplicate Webhook مدیریت میشود.
✅ Workflow Failure Alert فعال است.
برای نصب n8n، Docker یا اتصال APIهای ایرانی مشکل دارید؟
راهاندازی یک n8n ساده سریع است، اما Production واقعی شامل Domain، HTTPS، PostgreSQL، Credential Encryption، Backup، Reverse Proxy، Firewall و در بارهای بالاتر Redis و Worker میشود. اگر Webhookها کار نمیکنند، API ایرانی از خارج Timeout میشود یا قصد راهاندازی معماری Hybrid دارید، میتوانید درخواست کانفیگ خود را برای ایرانیکاسرور ارسال کنید.
📌 تماس با پشتیبانی:
021-91302460
| ایرانیکاسرور
سوالات متداول درباره n8n، Agentic AI و VPS خارج
آیا n8n را میتوان روی سرور مجازی خارج نصب کرد؟
بله. n8n رسماً Self-hosting را پشتیبانی میکند و میتوان آن را با Docker یا Docker Compose روی VPS لینوکس اجرا کرد.
آیا Make هم مثل n8n کاملاً Self-hosted است؟
در سرویس فعلی عمومی Make، خیر. Make روی زیرساخت Cloud اجرا میشود و در Enterprise قابلیت On-prem Agent برای اتصال Cloud Make به سرویسهای شبکه خصوصی وجود دارد.
آیا VPS خارج میتواند به API ایرانی وصل شود؟
در بسیاری از موارد بله، اما این موضوع به Provider، WAF، IP Policy و وضعیت شبکه بستگی دارد. باید API واقعی را از IP همان VPS تست کنید.
اگر API ایرانی فقط IP ایران را قبول کند چه کنیم؟
میتوان یک VPS ایران را بهعنوان API Gateway یا Relay قرار داد و n8n خارجی فقط با آن Gateway امن ارتباط برقرار کند.
برای n8n چند گیگ RAM لازم است؟
برای تست سبک میتوان از حدود 2GB شروع کرد. برای Workflow تجاری همراه PostgreSQL معمولاً 4GB فضای عملیاتی بهتری میدهد و برای Agentهای پرتعداد یا Workerهای متعدد ممکن است 8GB یا بیشتر لازم شود.
آیا برای Agentic AI روی n8n به GPU نیاز است؟
اگر LLM از طریق API خارجی فراخوانی شود، خیر. GPU فقط زمانی اهمیت پیدا میکند که بخواهید مدل زبانی را روی همان سرور اجرا کنید.
آیا PostgreSQL برای n8n ضروری است؟
برای آزمایش کوچک SQLite قابل استفاده است، اما برای Production، رشد Executionها و Queue Mode استفاده از PostgreSQL معماری مناسبتری است.
Queue Mode چه زمانی لازم میشود؟
وقتی Workflowهای همزمان زیاد میشوند یا اجرای Jobهای طولانی باعث فشار روی Main Instance میشود، میتوان با Redis و Workerهای جداگانه اجرای Workflowها را توزیع کرد.
آیا n8n برای اتصال به سرویس ایرانی Node اختصاصی لازم دارد؟
خیر. اگر سرویس API مبتنی بر HTTP ارائه کند، معمولاً HTTP Request Node برای اتصال کافی است و میتوان Header، Query، Authentication و Body را متناسب با مستندات API تنظیم کرد.
جمعبندی؛ بهترین معماری برای Agentic AI ایرانی چیست؟
اگر Workflow شما هم به مدلهای AI و سرویسهای بینالمللی و هم به APIهای ایرانی متصل است، n8n Self-hosted روی VPS خارج یک هسته مناسب برای Orchestration ایجاد میکند. این سرور میتواند Webhookها، Agentها، Database و Toolهای مختلف را همیشه فعال نگه دارد.
اگر API ایرانی از IP خارجی قابل دسترسی باشد، اتصال مستقیم سادهترین راه است. اما اگر محدودیت IP، شبکه یا Whitelist وجود داشته باشد، معماری VPS خارج + VPS ایران بهعنوان Secure Gateway انعطاف بسیار بیشتری ایجاد میکند.
در Production، خود AI فقط بخشی از پروژه است. PostgreSQL، Encryption Key، HTTPS، Backup، Idempotency، Retry، Human Approval و محدود کردن Toolهای Agent همان اجزایی هستند که یک Demo جذاب را به یک سیستم واقعی و قابل اعتماد تبدیل میکنند.
منابع رسمی برای مطالعه بیشتر
🔹
وبسایت رسمی n8n و قابلیت Self-hosting
🔹
مستندات رسمی نصب n8n با Docker
🔹
مستندات n8n Queue Mode و Worker
💬 دیدگاهها 0
هنوز دیدگاهی ثبت نشده است. اولین نفری باشید که نظر میدهید!
✍️ دیدگاه خود را بنویسید