پارتیان
پارتیان ابتکار پایداردانشنامهپایگاه دانشآموزش HA و Session Synchronization در FortiWeb

پایگاه دانش

آموزش HA و Session Synchronization در FortiWeb

مدت زمان مطالعه:

۱۳ مرداد ۱۴۰۵

0

0
0
آموزش HA و Session Synchronization در FortiWeb
آموزش جامع HA و Session Synchronization در FortiWeb 7.6

آموزش جامع HA و Session Synchronization در FortiWeb

High Availability یا HA در FortiWeb برای کاهش Downtime ناشی از خرابی Appliance، Interface، کابل، عملیات نگهداری یا Upgrade استفاده می‌شود. اما HA فقط با قرارگرفتن دو دستگاه در یک Group ساخته نمی‌شود؛ Firmware، License، Heartbeat، Virtual MAC، شبکه Client-side و Server-side، Health Check، Session Behavior و مسیر مدیریت هر Member باید دقیق طراحی و آزمایش شوند.

در FortiWeb چند نوع State وجود دارد که معمولاً با یکدیگر اشتباه گرفته می‌شوند: Configuration Synchronization، FortiWeb Session Synchronization، Layer 7 Persistence Synchronization، Backend Health Check Synchronization، TLS Session و Web Application Session. هرکدام رفتار متفاوتی در Failover دارند و فعال‌کردن یکی الزاماً دیگری را حفظ نمی‌کند.

این مقاله Modeهای Active-Passive، Standard Active-Active و High Volume Active-Active را مقایسه می‌کند و یک سناریوی کامل Active-Passive را با GUI و CLI، Reserved Management، تست Failover، Session Test، Split-Brain و Out-of-Sync از سطح مقدماتی تا پیشرفته توضیح می‌دهد.

این مقاله برای شاخه FortiWeb 7.6 نوشته شده و نسخه مبنا FortiWeb 7.6.9 است. جزئیات CLI با CLI Reference رسمی 7.6.7 و 7.6.8 تطبیق داده شده‌اند. در FortiWeb 7.4 ساختار اصلی HA مشابه است، اما Health Check Synchronization و بعضی قابلیت‌های Active-Active شاخه 7.6 توسعه یافته‌اند. در FortiWeb 8.0 دستور Manual Failover با execute ha failover اضافه شده است؛ این دستور را برای شاخه 7.6 فرض نکنید.

هشدار عملیاتی: تشکیل Cluster می‌تواند Role دستگاه، Virtual MAC، ARP/ND، IP Interfaceهای Syncشده و مسیر دسترسی مدیریتی را تغییر دهد. قبل از اجرا Backup، Console، Change Window، Diagram، Rollback Plan و هماهنگی با تیم Network و Application الزامی است.

مروری بر این مقاله


  1. HA چه مشکلی را حل می‌کند و چه مشکلی را حل نمی‌کند؟
  2. مقایسه Modeهای HA
  3. مفاهیم State و Synchronization
  4. Configuration Synchronization
  5. FortiWeb Session و Web Application Session
  6. TLS Session در Failover
  7. Layer 7 Persistence Synchronization
  8. Health Check Synchronization
  9. Heartbeat و شبکه HA
  10. Primary Election، Priority و Override
  11. Virtual MAC، ARP و NS
  12. Reserved Management Interface
  13. پیش‌نیازها و Pre-check
  14. سناریوی کامل Active-Passive
  15. پیکربندی Active-Passive در GUI
  16. پیکربندی Active-Passive در CLI
  17. Active-Active و Session Synchronization
  18. Load-balancing Algorithm و Session Management
  19. Synchronization دستی و مدیریت Memberها
  20. روش تست Configuration Sync
  21. روش تست Failover و Session
  22. روش تست Network Convergence
  23. Upgrade و Maintenance در Cluster
  24. Troubleshooting و Split-Brain
  25. Best Practice و چک‌لیست اجرایی

1. HA چه مشکلی را حل می‌کند و چه مشکلی را حل نمی‌کند؟

خرابی یا رخداد آیا HA FortiWeb پوشش می‌دهد؟ شرط یا کنترل تکمیلی
خرابی سخت‌افزار FortiWeb بله Member سالم، Sync و Network Redundancy
قطع Interface Monitorشده بله Monitor صحیح و کابل‌های Member دوم
خرابی Heartbeat اصلی در صورت Backup Link Heartbeat Backup مستقل
خرابی Switch مشترک خیر، اگر هر دو Member به همان Switch وابسته باشند. دو Switch و مسیر مستقل
خرابی Backend Server به‌تنهایی خیر Server Pool و Health Check
خرابی Session Store برنامه خیر Shared Session Store یا Application HA
خرابی کامل Site خیر DR، GSLB یا Multi-Site Design
خطای Configuration که Sync شده است خیر Revision، Backup و Change Control
نکته: HA FortiWeb بیشتر Single Device Failure را پوشش می‌دهد. Availability واقعی باید از Client تا DNS، Firewall، Switch، FortiWeb، Backend و Database بررسی شود.

2. مقایسه Modeهای HA

Mode روش کار مزیت محدودیت
Active-Passive یک Primary Traffic را پردازش می‌کند و Secondary آماده Failover است. سادگی، ریسک کمتر و رفتار قابل پیش‌بینی ظرفیت Secondary در حالت عادی استفاده نمی‌شود.
Active-Active Standard Primary اتصال‌ها را میان Memberها توزیع می‌کند. استفاده از ظرفیت چند Member پیچیدگی Session Sync و Load Distribution
Active-Active High Volume برای Throughput و معماری پیشرفته با VIP یا Load Balancer طراحی شده است. مقیاس‌پذیری بالاتر طراحی IP، Load Balancer و Operation Mode پیچیده‌تر

پشتیبانی Operation Mode

FortiWeb Operation Mode HA قابل استفاده
Reverse Proxy Active-Passive، Active-Active Standard و High Volume
True Transparent Proxy Active-Passive و Standard Active-Active
Transparent Inspection Active-Passive
Offline Protection Active-Passive
WCCP Active-Passive

3. مفاهیم State و Synchronization

نوع State نمونه رفتار در HA
Configuration Server Policy، Certificate، Profile از Primary Sync می‌شود.
FortiWeb Session Session موردنیاز برخی Featureهای FortiWeb در Active-Active و طبق شرایط Sync می‌شود.
Application Session Login Session داخل Application روی FortiWeb نیست؛ به Cookie و Backend بستگی دارد.
TLS Session Cipher، Key و Handshake State Sync نمی‌شود؛ Re-handshake انجام می‌شود.
Persistence Mapping کاربر به Backend شماره 2 هدایت شود. در Active-Passive با L7 Persistence Sync
Health State Backend Up یا Down با Health Check Sync منتقل می‌شود.

4. Configuration Synchronization

Primary بیشتر تنظیمات Configuration را به Secondaryها منتقل می‌کند. هدف این است که Member جایگزین پس از Failover همان Server Policy، Certificate، Protection Profile و Network Configuration لازم را داشته باشد.

مواردی که معمولاً Sync می‌شوند

  • Server Policyها و Server Poolها
  • Web Protection Profileها
  • Certificateها و بیشتر Objectهای امنیتی
  • Interface Configurationهای غیررزروشده
  • System Settingهای مشترک
  • FortiGuard Packageها و Security Databaseها طبق رفتار نسخه

موارد Node-specific

  • Device Priority
  • بعضی HA Settingهای محلی
  • Reserved Management IP هر Member
  • Serial Number و Hardware State
  • High Volume Active-Active Interface Addressهای Member-specific
یکسان‌سازی اشتباه: اگر قبل از Join کردن Cluster روی Secondary Configuration مهمی وجود دارد، آن را Backup بگیرید. بعد از تشکیل Cluster، Primary منبع Configuration مشترک خواهد بود.

5. FortiWeb Session و Web Application Session

FortiWeb Session با Session خود Web Application یکسان نیست. Login Session برنامه معمولاً با Cookie، Token یا Server-side Session Store نگهداری می‌شود. FortiWeb ممکن است برای Featureهایی مانند Client Management، Authentication یا Persistence State جداگانه داشته باشد.

قانون 30 ثانیه

طبق مستند Fortinet، Sessionهایی که کمتر از 30 ثانیه برقرار بوده‌اند Sync نمی‌شوند. فقط Sessionهای قدیمی‌تر از 30 ثانیه برای Synchronization واجد شرایط‌اند.

اثر روی تست

  • تست Session بلافاصله بعد از Login ممکن است Fail شود و نتیجه اشتباه بدهد.
  • برای تست، Session را بیش از 30 ثانیه فعال نگه دارید.
  • Session کوتاه و طولانی را جداگانه آزمایش کنید.
  • Featureهای مبتنی بر Cookie FortiWeb را جدا از Login Application بررسی کنید.

6. TLS Session در Failover

State مربوط به TLS Handshake و Session Keyها Sync نمی‌شود. پس از Failover، Client معمولاً TLS Session را دوباره برقرار می‌کند. این Re-handshake ممکن است وقفه کوتاهی ایجاد کند، اما الزاماً Login Session برنامه را از بین نمی‌برد.

چه چیزی باید اندازه‌گیری شود؟

  • مدت TLS Reconnect
  • تعداد Requestهای Retryشده توسط Browser
  • رفتار Mobile App و API Client
  • Certificate و Cipher روی Member جدید
  • اثر روی WebSocket یا Long-lived Connection
انتظار صحیح: هدف HA همیشه Zero Packet Loss نیست. باید Recovery Time و Session Impact قابل قبول سازمان تعریف شود.

7. Layer 7 Persistence Synchronization

این قابلیت در Active-Passive استفاده می‌شود تا Mapping Persistence میان Primary و Secondary Sync شود. برای مثال کاربری که بر اساس Cookie Persistence به Backend شماره 2 هدایت شده است، بعد از Failover نیز به همان Backend هدایت شود.

چه زمانی لازم است؟

  • Backendها Shared Session Store ندارند.
  • Application به Sticky Session وابسته است.
  • Server Pool از Cookie یا Source-based Persistence استفاده می‌کند.
  • تغییر Backend باعث Logout یا Transaction Failure می‌شود.

چه چیزی را حل نمی‌کند؟

  • خرابی Backend انتخاب‌شده
  • Session ذخیره‌شده فقط در Memory Backend
  • Database Transaction نیمه‌کاره
  • WebSocket Connection بدون Reconnect Logic

8. Health Check Synchronization

Health Check Sync وضعیت Up یا Down بودن Backendها را از Primary به Secondary منتقل می‌کند. بدون این قابلیت، Member جدید بعد از Failover ممکن است برای مدت کوتاهی Health State را از ابتدا محاسبه کند.

Modeهای پشتیبانی‌شده

  • Active-Passive
  • Active-Active Standard
  • Reverse Proxy و True Transparent Proxy

رفتار Sync

  • به‌صورت پیش‌فرض هنگام تغییر Health State Sync انجام می‌شود.
  • Periodic Sync قابل فعال‌سازی است.
  • بازه معتبر Periodic Sync طبق مستند 600 تا 3000 ثانیه است.
  • مقدار پیش‌فرض Periodic Interval برابر 3000 ثانیه است.
  • دستور Immediate Sync نیز وجود دارد.
config system ha
    set hlck-sync enable
    set hlck-period-sync enable
    set hlck-period-timeout 600
end

execute ha synchronize health-check

9. Heartbeat و شبکه HA

Heartbeat برای تشخیص سلامت Member و انتقال Sync Data استفاده می‌شود. Heartbeat Traffic می‌تواند شامل اطلاعات حساس Configuration باشد و پهنای باند قابل توجهی مصرف کند.

Best Practice شبکه Heartbeat

  • در Active-Passive دو Link مستقل استفاده کنید.
  • ترجیحاً اتصال مستقیم میان Memberها باشد.
  • اگر Switch استفاده می‌شود، VLAN اختصاصی و L2 Multicast مجاز باشد.
  • Heartbeat Port برای Traffic عادی، Virtual Server یا Bridge استفاده نشود.
  • Encryption روی تمام Memberها یکسان تنظیم شود.
  • MTU، Duplex، Speed و Error Counter بررسی شوند.
  • Heartbeat اصلی و Backup روی یک Switch یا مسیر فیزیکی مشترک نباشند.

Heartbeat Interval و Lost Threshold

کاهش بیش از حد Interval یا Threshold Failover را سریع‌تر می‌کند، اما حساسیت به Jitter، CPU Spike و Packet Loss را افزایش می‌دهد. مقدارهای پیش‌فرض یا مستند باید نقطه شروع باشند و بدون تست تغییر نکنند.

10. Primary Election، Priority و Override

Device Priority عددی است که عدد کوچک‌تر اولویت بالاتری دارد. Override تعیین می‌کند Priority نسبت به Uptime اهمیت بیشتری داشته باشد.

Override رفتار عمومی کاربرد
Disable Member فعال ممکن است بعد از بازگشت Member ترجیحی Primary باقی بماند. کاهش Failback غیرضروری
Enable Member دارای Priority بهتر بعد از بازگشت می‌تواند Primary شود. Preferred Primary ثابت

Side Effect Override

Override می‌تواند بعد از Recovery یک Failback دوم ایجاد کند. اگر Application به تغییر Connection حساس است، ممکن است ترجیح دهید Member سالم فعلی Primary بماند تا Maintenance Window.

11. Virtual MAC، ARP و NS

در Active-Passive و Standard Active-Active، Traffic Portها از Virtual MAC استفاده می‌کنند. هنگام Failover، Member جدید Virtual MAC را به‌عهده می‌گیرد و ARP یا Neighbor Solicitation ارسال می‌کند تا Switch و Neighborها Mapping جدید را یاد بگیرند.

پارامترهای مهم

  • arps: تعداد ARP/NS Announcement
  • arp-interval: فاصله Announcementها
  • link-failed-signal: سیگنال Link Failure برای تجهیزات مجاور در سناریوهای لازم
  • Group ID: بخشی از Virtual MAC؛ تغییر آن Connectivity را تحت تأثیر قرار می‌دهد.
VM Environment: در بعضی Hypervisorها، Security Policy مربوط به Promiscuous Mode، Forged Transmit یا MAC Change باید با Virtual MAC سازگار باشد. این مورد را با Deployment Guide Platform بررسی کنید.

12. Reserved Management Interface

در Active-Passive و Standard Active-Active، بیشتر Interface Configurationها Sync می‌شوند. برای اینکه هر Member IP مدیریتی مستقل داشته باشد، یک Interface را Reserved Management تعریف کنید.

کاربرد

  • Login مستقیم به Secondary
  • بررسی Log و Status هر Member
  • Troubleshooting زمانی که Cluster IP مشکل دارد
  • SNMP و Monitoring Member-specific در صورت طراحی صحیح

مسیریابی Management

اگر Management Station در Subnet دیگری است، HA Static Route یا HA Policy Route لازم است. Route مدیریت Memberها Node-specific است و باید روی هر Member بررسی شود.

config system ha
    set ha-mgmt-status enable
    set ha-mgmt-interface "port5"
end
تطبیق Build: IP و Route Reserved Management از بخش Interface و HA Management Routing تنظیم می‌شوند. نام دقیق Subcommand را با CLI Reference همان Build بررسی کنید.

13. پیش‌نیازها و Pre-check

  • مدل و Firmware همه Memberها یکسان است.
  • در VM، vCPU، RAM و Interface Count یکسان است.
  • License و FortiGuard Contract همه Memberها معتبر است.
  • System Time و NTP صحیح است.
  • Operation Mode با HA Mode انتخاب‌شده سازگار است.
  • Group ID در Broadcast Domain یکتا است.
  • Heartbeat Cable و Backup Link آماده‌اند.
  • تمام Monitor Interfaceها روی هر دو Member Link Up هستند.
  • Switch و Firewall مسیر Redundant دارند.
  • Reserved Management IPها و Routeها طراحی شده‌اند.
  • Backend از هر دو Member قابل دسترسی است.
  • Backup هر دو دستگاه گرفته شده است.

Pre-check CLI

get system status
show system interface
show system ha
diagnose system ha status

# بررسی Interface:
diagnose netlink interface list

# بررسی Route:
get router info routing-table all

14. سناریوی کامل Active-Passive

پارامتر Node 1 Node 2
Hostname FWB-HA-01 FWB-HA-02
Mode Active-Passive
Group Name PARTIAN-FWB-HA
Group ID 10
Priority 1 5
Override Enable برای Preferred Primary ثابت
Heartbeat اصلی port3
Heartbeat Backup port4
Monitor Interface port1 port2
Reserved Management 10.10.10.11/24 10.10.10.12/24
Layer 7 Persistence Sync Enable
Health Check Sync Enable

تصمیم درباره Override

در این سناریو Node 1 باید همیشه Preferred Primary باشد، بنابراین Override فعال است. اگر جلوگیری از Failback خودکار مهم‌تر است، Override را غیرفعال کنید.

15. پیکربندی Active-Passive در GUI

System > High Availability > Settings

مرحله 1: تنظیم Node اول

  1. Mode را Active-Passive انتخاب کنید.
  2. Group Name را PARTIAN-FWB-HA وارد کنید.
  3. Group ID را 10 قرار دهید.
  4. Device Priority را 1 تنظیم کنید.
  5. Override را مطابق سیاست Failback فعال کنید.
  6. Heartbeat Interface را port3 انتخاب کنید.
  7. Backup Heartbeat را port4 انتخاب کنید.
  8. Heartbeat Encryption و Key را تنظیم کنید.
  9. Monitor Interface را port1 و port2 انتخاب کنید.
  10. Boot Time را متناسب با Switch و Network Convergence تنظیم کنید.
  11. Reserved Management Interface را فعال کنید.
  12. Layer 7 Persistence Synchronization را فعال کنید.
  13. Server Health Check Synchronization را فعال کنید.

مرحله 2: تنظیم Node دوم

تمام مقدارهای مشترک باید یکسان باشند. فقط Hostname، Priority و Reserved Management IP متفاوت است.

مرحله 3: بررسی HA Members

System > High Availability > Settings > HA Members

Role، Serial، Priority، Uptime، Sync Status، Interface Status و Health را بررسی کنید.

16. پیکربندی Active-Passive در CLI

Node اول

config system ha
    set mode active-passive
    set group-id 10
    set group-name "PARTIAN-FWB-HA"
    set priority 1
    set override enable
    set hbdev "port3"
    set hbdev-backup "port4"
    set hb-interval 1
    set hb-lost-threshold 3
    set arps 5
    set arp-interval 1
    set monitor "port1" "port2"
    set boot-time 30
    set ha-mgmt-status enable
    set ha-mgmt-interface "port5"
    set 17-persistence-sync enable
    set hlck-sync enable
    set encryption enable
    set key "REPLACE-WITH-STRONG-HA-KEY"
end

Node دوم

config system ha
    set mode active-passive
    set group-id 10
    set group-name "PARTIAN-FWB-HA"
    set priority 5
    set override enable
    set hbdev "port3"
    set hbdev-backup "port4"
    set hb-interval 1
    set hb-lost-threshold 3
    set arps 5
    set arp-interval 1
    set monitor "port1" "port2"
    set boot-time 30
    set ha-mgmt-status enable
    set ha-mgmt-interface "port5"
    set 17-persistence-sync enable
    set hlck-sync enable
    set encryption enable
    set key "REPLACE-WITH-STRONG-HA-KEY"
end
Heartbeat Timing: مقدارهای Interval و Threshold را بدون تست تغییر ندهید. CPU Spike یا Packet Loss می‌تواند Failover کاذب ایجاد کند.

17. Active-Active و Session Synchronization

در Active-Active، Primary Traffic را میان Memberها توزیع می‌کند. Session Table به‌صورت پیش‌فرض می‌تواند از Heartbeat Interface منتقل شود. در Cluster پرترافیک، تا چهار Interface جدا برای Session Sync قابل تعریف است.

config system ha
    set mode active-active-standard
    set group-id 20
    set group-name "PARTIAN-FWB-AAS"
    set hbdev "port3"
    set hbdev-backup "port4"
    set session-pickup enable
    set session-sync-dev "port5" "port6"
    set session-sync-broadcast disable
    set session-warm-up 20
end

قواعد Session Sync Interface

  • فقط Primary تنظیم را اعمال می‌کند.
  • Configuration به Secondaryها Sync می‌شود.
  • Heartbeat Interface نباید در session-sync-dev وارد شود.
  • اگر Interface جدا انتخاب شود، Heartbeat دیگر Session Table را حمل نمی‌کند.
  • Unicast حالت پیش‌فرض است.
  • برای Cluster بزرگ Broadcast ممکن است مفید باشد، اما باید L2 Design بررسی شود.

18. Load-balancing Algorithm و Session Management

Algorithm رفتار نکته
IP Source مشابه را به Member مشابه هدایت می‌کند. برای بعضی Session-dependent Featureها مناسب‌تر است.
Least Connection Member با Connection کمتر انتخاب می‌شود. توزیع Dynamic
Round-robin Memberها به ترتیب انتخاب می‌شوند. سادگی، اما Affinity کمتر

طبق CLI Reference، بعضی قابلیت‌های Session Management FortiWeb با Algorithmهای By Connections یا Round-robin محدودیت دارند. قبل از انتخاب Algorithm، Featureهایی مانند Client Management، Authentication و Cookie-based Functionها را آزمایش کنید.

Weight در Algorithm IP

در Cluster دارای Memberهای یکسان معمولاً Weight برابر استفاده می‌شود. اگر ظرفیت واقعی Memberها متفاوت است، اساساً Cluster Design باید بازبینی شود؛ HA Memberها بهتر است هم‌مدل و هم‌ظرفیت باشند.

19. Synchronization دستی و مدیریت Memberها

بررسی وضعیت

get system ha status
diagnose system ha status
show system ha

Sync دستی

execute ha synchronize cli
execute ha synchronize all
execute ha synchronize health-check

ورود به Member دیگر

execute ha manage

# یا در Buildهایی که Syntax Index می‌خواهد:
execute ha manage <cluster-index>

Cluster Index با Serial Number تعیین می‌شود. قبل از تغییر Node-specific مطمئن شوید روی Member درست قرار دارید.

20. روش تست Configuration Sync

  1. وضعیت Cluster را In-Sync ثبت کنید.
  2. یک Object کم‌خطر مانند Comment یا Test Protected Host بسازید.
  3. روی Secondary از طریق Reserved Management یا ha manage وجود Object را بررسی کنید.
  4. Certificate List و Web Protection Profile را مقایسه کنید.
  5. Object تست را حذف کنید و Sync حذف را نیز بررسی کنید.

چه چیزی را نباید برای تست تغییر داد؟

  • Group ID در Production
  • Heartbeat Interface بدون Console
  • Virtual Server IP فعال
  • Server Policy اصلی
  • Firmware یا Operation Mode

21. روش تست Failover و Session

آماده‌سازی

  • یک User تست داخل Application
  • یک صفحه که Backend ID را نمایش دهد
  • Packet Capture روی Client-side و Server-side
  • Log Application و FortiWeb
  • Session کوتاه و Session بالای 30 ثانیه

مراحل

  1. با User تست Login کنید.
  2. Backend انتخاب‌شده را ثبت کنید.
  3. حداقل 60 ثانیه Session را فعال نگه دارید.
  4. یک Transaction غیرحساس در حال Polling ایجاد کنید.
  5. Interface Monitorشده Primary را در Change Window قطع کنید.
  6. زمان تغییر Role را ثبت کنید.
  7. TLS Re-handshake و HTTP Retry را مشاهده کنید.
  8. ادامه Login و Backend Persistence را بررسی کنید.
  9. Primary قبلی را برگردانید و رفتار Override را ثبت کنید.

جدول نتیجه تست

آزمون انتظار نتیجه قابل قبول
Role Change یک Secondary Primary شود. بدون Dual Primary
Virtual IP IP بدون تغییر بماند. ARP/ND Update سریع
TLS Re-handshake Client Recover شود.
Application Login ادامه Session به طراحی Backend بستگی دارد.
Persistence Backend قبلی در صورت L7 Sync و Backend سالم
Health State Backend Down شناخته شود. Health Check Sync صحیح

22. روش تست Network Convergence

  • MAC Address Table روی Switch را قبل و بعد ثبت کنید.
  • ARP Table یا Neighbor Table روی Router و Client را بررسی کنید.
  • Gratuitous ARP یا NS Packetها را Capture کنید.
  • Failover را از هر دو مسیر Client-side و Server-side تست کنید.
  • در VMware، Virtual Switch Security Setting را بررسی کنید.
  • اگر Failover طولانی است، ARP Count، ARP Interval و Boot Time را بررسی کنید.
  • Link-failed-signal را فقط با شناخت رفتار Switch فعال کنید.

23. Upgrade و Maintenance در Cluster

Upgrade HA باید بر اساس Upgrade Path و Release Notes انجام شود. قبل از Upgrade موارد زیر را بررسی کنید:

  • Known Issueهای HA همان Release
  • Upgrade ترتیب Memberها
  • Config Backup و Certificate Backup
  • License و Disk Space
  • Compatibility با FortiWeb Manager یا FortiAnalyzer
  • زمان Reboot و Failover
  • تست Application بعد از هر مرحله
Version Mismatch: Memberها باید Firmware یکسان داشته باشند. Cluster طولانی‌مدت با Version متفاوت طراحی پشتیبانی‌شده‌ای نیست.

24. Troubleshooting و Split-Brain

نشانه علت محتمل بررسی راه‌حل
هر دو Member Primary هستند. Heartbeat قطع، Key متفاوت یا Multicast Block Cable، VLAN، Group و Debug Heartbeat را بازیابی و Traffic را کنترل کنید.
Cluster تشکیل نمی‌شود. Mode، Group ID، Firmware یا Model متفاوت System Status و HA Config مقادیر را یکسان کنید.
Out-of-Sync Heartbeat Loss یا Sync Daemon HA Status و Debug Manual Sync یا TAC
Failover طولانی است. ARP/ND یا Switch Convergence Packet Capture و MAC Table ARP Setting و Network را Tune کنید.
Failover کاذب رخ می‌دهد. Heartbeat بسیار حساس، CPU High یا Packet Loss CPU، Error Counter و HA Debug Link و Timing را اصلاح کنید.
Secondary قابل مدیریت نیست. Reserved Mgmt یا Route تنظیم نشده Interface و HA Route Management Interface و Route بسازید.
Session حفظ نمی‌شود. کمتر از 30 ثانیه، Sync غیرفعال یا App Local State Session Age و Backend Log تست صحیح و App HA
Backend اشتباه انتخاب می‌شود. L7 Persistence Sync یا Health Sync Pool، Persistence و Health Sync را فعال و تست کنید.

Debug کوتاه

diagnose system ha status

diagnose debug application hatalk 7
diagnose debug enable

# پس از جمع‌آوری:
diagnose debug disable
Production Debug: Debug را کوتاه اجرا کنید. Output زیاد یا Debug طولانی می‌تواند Troubleshooting را دشوار کند؛ برای Out-of-Sync مداوم با Fortinet TAC هماهنگ شوید.

25. Best Practice و چک‌لیست اجرایی

  • مدل، Firmware و Resource Memberها یکسان است.
  • License و FortiGuard همه Memberها معتبر است.
  • Operation Mode با HA Mode سازگار است.
  • Group ID یکتا است.
  • Priority و Override مستند شده‌اند.
  • دو Heartbeat Link مستقل وجود دارد.
  • Heartbeat از شبکه User جدا است.
  • Heartbeat Encryption یکسان است.
  • Monitor Interfaceها روی هر دو Member متصل‌اند.
  • VLAN Subinterface به‌عنوان Monitor انتخاب نشده است.
  • Reserved Management برای هر Member وجود دارد.
  • Management Route هر Member تست شده است.
  • تفاوت FortiWeb Session و Application Session مستند است.
  • قانون 30 ثانیه در تست لحاظ شده است.
  • Layer 7 Persistence Sync در صورت نیاز فعال است.
  • Health Check Sync فعال و Immediate Sync تست شده است.
  • Session Sync Interface ظرفیت کافی دارد.
  • Algorithm Active-Active با Featureهای Session سازگار است.
  • ARP/ND Convergence تست شده است.
  • Switch، Firewall و Backend نیز Redundant هستند.
  • Failover و Failback دوره‌ای تست می‌شوند.
  • Backup و Rollback Plan وجود دارد.
  • Upgrade Path و Known Issues بررسی می‌شوند.
<grammarly-desktop-integration data-grammarly-shadow-root="true" style="visibility: visible !important;"></grammarly-desktop-integration> <grammarly-desktop-integration data-grammarly-shadow-root="true" style="visibility: visible !important;"></grammarly-desktop-integration>

مطالب مرتبط

پرسش و پاسخ

Group ID روی Virtual MAC اثر دارد و می‌تواند باعث تغییر MAC و قطع موقت Connectivity شود.
Reserved Management Interface یا Route آن تنظیم نشده است.
دستور execute ha failover مربوط به FortiWeb 8.0 است. در 7.6 از روش کنترل‌شده و مستند استفاده کنید.
احتمالاً Application Session در Memory Backend است یا Persistence به‌درستی Sync نشده است. HA FortiWeb جای Shared Session Store را نمی‌گیرد.
Cluster کار می‌کند، اما دو Link مستقل برای کاهش ریسک Split-Brain و Failover کاذب توصیه می‌شود.
خیر. L7 Persistence برای حفظ Backend Affinity در Active-Passive است؛ Session Sync در Active-Active برای FortiWeb Session Table استفاده می‌شود.
خیر. Client پس از Failover TLS Handshake جدید انجام می‌دهد.
خیر. طبق مستند Fortinet، Sessionهای کمتر از 30 ثانیه Sync نمی‌شوند.

امتیاز و دیدگاه کاربران

دیدگاه خود را درباره این مقاله بیان کنید.ثبت دیدگاه
متشکریم از همراهی شما، میتوانید نظرات و پیشنهادات خود را از طریق فرم زیر برایمان ارسال کنید.

طراحی سایت : رادکام