Traefik هو جهاز توجيه حافة مفتوح المصدر مصمم خصيصًا للبيئات السحابية الأصلية والحاويات. تكمن نقاط قوته الأساسية في اكتشاف الخدمات الآلي والتوجيه الديناميكي وموازنة الحمل. يتكامل بسلاسة مع أنظمة التنسيق السائدة مثل Kubernetes و Docker ، ويتضمن HTTPS تلقائيًا ، ويدعم مجموعة غنية من البرامج الوسيطة. هذا يبسط بشكل كبير إدارة شبكة الخدمات الصغيرة ، ويلبي احتياجات توجيه حركة مرور التطبيقات المعبأة في حاويات للمؤسسات التي تتراوح من الشركات الصغيرة والمتوسطة إلى الشركات الكبيرة.

تم تطوير هذا المشروع بواسطة Emile Vauge في عام 2016 وتقوم Traefik Labs بصيانته منذ تغيير العلامة التجارية لـ Containous في عام 2020. وبفضل قدرته على “التكوين التلقائي للتوجيه” في البيئات السحابية الأصلية، أصبح خيارًا شائعًا للبروكسيات العكسية ووحدات التحكم Ingress داخل نظام الحاويات، حيث تم اعتماده على نطاق واسع في بنى الخدمات الصغيرة وسيناريوهات الحوسبة الطرفية.

Traefik

1. أساسيات Traefik

  • اسم مزود الخدمة: Traefik (تُنطق مثل “traffic”)
  • الاسم باللغة الإنجليزية: Traefik Proxy (الإصدار المجتمعي) / Traefik Enterprise (الإصدار التجاري)
  • تاريخ التأسيس: تم إطلاقها لأول مرة في يوليو 2016؛ وتم تغيير اسم الشركة إلى Traefik Labs في عام 2020.
  • عنوان المقر الرئيسي: ليون، فرنسا
  • عنوان الموقع الرسمي:https://traefik.io
  • نوع الخدمة: بروكسي عكسي مفتوح المصدر، موازن تحميل، وحدة تحكم Kubernetes Ingress، بوابة API، جهاز توجيه حافة سحابي أصلي
  • الأسعار المرجعية: الإصدار المجتمعي مجاني تمامًا (بموجب ترخيص Apache 2.0)؛ أما الإصدار التجاري فيتم تسعيره وفقًا لحجم النشر، ويبدأ سعره من حوالي 1500 دولار أمريكي سنويًا.
  • توفر الإصدار التجريبي: يمكن تنزيل الإصدار المجتمعي واستخدامه دون قيود؛ أما الإصدار التجاري فيوفر إصدارًا تجريبيًا مجانيًا لمدة 30 يومًا (يتطلب تقديم تفاصيل الشركة).

2. مزايا Traefik Core وخصائصه التقنية

اكتشاف الخدمة الديناميكي، بدون توجيه يدوي
راقب Kubernetes و Docker و Consul وواجهات برمجة التطبيقات الأخرى للمنصات في الوقت الفعلي، مما يتيح التسجيل والتوجيه التلقائي للخدمات في غضون ثوانٍ من النشر. حدد قواعد التوجيه عبر تسميات الحاويات، مما يلغي الحاجة إلى صيانة التكوين اليدوي. يتم تعديل سياسات موازنة الحمل تلقائيًا أثناء توسيع نطاق الخدمة، مما يؤدي إلى تحسين التكرار السريع في بيئات الخدمات الصغيرة.

HTTPS تلقائي وأمان أصلي
بشكل افتراضي، يدمج عميل Let's Encrypt، ويقوم تلقائيًا بتقديم طلبات الحصول على شهادات SSL ونشرها وتجديدها، ويدعم شهادات البدل وإدارة الشهادات الموزعة. ويضم Coraza WAF، ويدعم طرق مصادقة متعددة بما في ذلك OIDC و JWT، وبالتالي يضع حدودًا لأمن التطبيقات.

متوافق مع السحابة الأصلية ومتوافق مع البيئات المختلفة
تم تطويره بلغة Go، ويتم نشره كملف ثنائي واحد بدون تبعيات، ويدعم أنظمة Linux و Windows و macOS وبيئات الحاويات/المجموعات. وهو متوافق أصلاً مع واجهة برمجة تطبيقات Kubernetes Gateway، ويوفر Helm Charts وصور Docker للنشر بنقرة واحدة إلى مجموعات سحابية أصلية.

أداء عالٍ ودعم بروتوكولات حديثة
خفيف الوزن وعالي الكفاءة، يدعم عشرات الآلاف من الاتصالات المتزامنة مع استهلاك ضئيل للذاكرة؛ متوافق أصلاً مع بروتوكولات بما في ذلك HTTP/3 (QUIC) و gRPC و WebSocket، مما يقلل من زمن استجابة الاتصال ويعزز كفاءة الإرسال في بيئات الشبكات الضعيفة.

نظام بيئي للبرمجيات الوسيطة المعيارية
أكثر من 50 مكونًا مدمجًا من مكونات البرامج الوسيطة (بما في ذلك تحديد السرعة، وقطع الدائرة، والضغط، وإعادة كتابة الطلبات، وما إلى ذلك)، تدعم التركيبات المتسلسلة؛ متوافقة مع مكونات WebAssembly الإضافية، مما يتيح التخصيص والتوسيع عبر واجهات برمجة التطبيقات (API) لتلبية متطلبات إدارة حركة المرور المعقدة.

قابلية المراقبة الأصلية
توفر لوحة التحكم المرئية المدمجة مراقبة في الوقت الفعلي لحالة حركة المرور والخدمة، مع تكامل أصلي لأدوات المراقبة مثل Prometheus و OpenTelemetry. وهي تدعم التتبع الموزع (Jaeger/Zipkin)، مما يسهل استكشاف الأخطاء وإصلاحها وتحسين الأداء.

3. المنتجات والخدمات الرئيسية لشركة Traefik

  • Traefik Proxy (إصدار المجتمع): إصدار أساسي مجاني ومفتوح المصدر يتميز باكتشاف الخدمة التلقائي و HTTPS التلقائي والتوجيه الأساسي ووظائف البرامج الوسيطة.
  • Traefik Enterprise (الإصدار التجاري): يوفر إدارة المجموعات، والتكوين الموزع، ودعم SLA على مستوى المؤسسات، وميزات أمان متقدمة وميزات موازنة الحمل.
  • Traefik Hub: منصة إدارة واجهة برمجة تطبيقات (API) سحابية أصلية تدعم إدارة دورة حياة واجهة برمجة التطبيقات (API) المدفوعة بـ GitOps، وبوابات واجهة برمجة التطبيقات (API) للخدمة الذاتية، وتكامل بوابة الذكاء الاصطناعي (AI Gateway).
  • خدمات الدعم على مستوى المؤسسة: دعم فني على مدار الساعة طوال أيام الأسبوع، ضمان اتفاقية مستوى الخدمة، استكشاف الأخطاء وإصلاحها، تحسين التكوين وإرشادات التطوير المخصصة.
  • Traefik Kubernetes Ingress Controller: وحدة تحكم Ingress مصممة خصيصًا لـ Kubernetes، تعمل على تبسيط إدارة حركة المرور لمجموعات الحاويات.

4. يدعم Traefik المناطق / عملات الفوترة

  • نطاق التغطية: غير محدود عالميًا، قابل للنشر في أي منطقة بها بنية أساسية للخوادم/الحاويات، متوافق مع نشر بنية الخدمات الصغيرة العالمية.

خصائص النشر: باعتباره برنامجًا سحابيًا أصليًا، فإنه يوفر استقلالية كاملة في موقع النشر، ويدعم نشر العقد الموزعة عالميًا. يعمل بروتوكول HTTP/3 على تحسين زمن الوصول عبر المناطق؛ وتغطي الخدمات التجارية البلدان والمناطق الرئيسية في جميع أنحاء العالم.

عملات الفوترة المدعومة: الإصدار المجتمعي مجاني؛ أما الإصدار التجاري والخدمات فيتم احتساب تكلفتها بالدولار الأمريكي (USD) بشكل أساسي، مع إمكانية الدفع باليورو (EUR) في مناطق محددة.

5. كيفية التكامل مع Traefik

  1. إعداد البيئة: بيئة Linux/Windows/macOS/FreeBSD أو حاوية/K8s، مع ذاكرة دنيا موصى بها تبلغ 512 ميجابايت (يوصى بأن تحتوي بيئات الإنتاج على ما لا يقل عن نواتين وذاكرة وصول عشوائي (RAM) سعة 4 جيجابايت)؛
  2. التثبيت والنشر: قم بتثبيت الإصدار المجتمعي عبر صور Docker أو Helm Charts أو الحزم الثنائية أو مديري حزم النظام؛ بالنسبة للإصدار التجاري، يرجى الاتصال بقسم المبيعات للحصول على ترخيص.
    # Docker Quick Deployment docker run -d -p 80:80 -p 443:443 traefik:v3.4
    # نشر Kubernetes (Helm) helm repo add traefik https://traefik.github.io/charts && helm install traefik traefik/traefik
    
  3. التكوين الأساسي: إعلان المسارات وقواعد HTTPS والبرمجيات الوسيطة عبر YAML/TOML أو التسميات (مثال بسيط)؛
     # traefik.yml مثال entryPoints:   web:     address: ":80"   websecure:     address: ":443" certificatesResolvers:   myresolver:     acme:       email: user@example.com       storage: acme.json
    caServer: https://acme-v02.api.letsencrypt.org/directory http: routers: myrouter: rule: "Host(`example.com`)" service: myservice tls: { certResolver: myresolver } services: myservice: loadBalancer: servers:
    - url: "http://webapp:8000"
    
  4. قم بتشغيل الخدمة: قم بتنفيذ `traefik serve --config=traefik.yml` لبدء تشغيلها، وقم بتكوينها لبدء التشغيل تلقائيًا عند الإقلاع، وتحقق من صحة التكوين.
  5. الاختبار والتحقق: قم بالوصول إلى لوحة التحكم (http://:8080/dashboard) للتحقق من الحالة. قم بالوصول إلى اسم المجال المُهيأ للتحقق من HTTPS ووظيفة التوجيه.
  6. التكوين المتقدم (اختياري): تمكين إدارة المجموعات والشهادات الموزعة و WAF وتكامل المراقبة. يتوفر دعم على مستوى المؤسسات للإصدارات التجارية.

6. حالات استخدام Traefik

  • وحدة التحكم في الدخول إلى Kubernetes: تحل محل وحدة الدخول Nginx التقليدية، وتتكيف تلقائيًا مع التغييرات الديناميكية في Pod، وتدعم معيار واجهة برمجة التطبيقات Gateway API.
  • بوابة واجهة برمجة التطبيقات للخدمات الصغيرة: نقطة دخول مركزية لحركة المرور تنفذ المصادقة، وتحديد السرعة، وقطع الدائرة، وتدعم عمليات النشر الأزرق-الأخضر/الكناري.
  • توازن تحميل التطبيقات المعبأة في حاويات: يتكامل بشكل عميق مع Docker/Swarm، ويقوم تلقائيًا بتكوين التوجيه للحاويات الجديدة ويضبط سياسات توازن التحميل ديناميكيًا.
  • عقد الحوسبة الطرفية: يتم نشرها في أطراف الشبكة، وتوفر تخزين المحتوى المؤقت، وتصفية الطلبات، وإنهاء HTTPS، مما يقلل من الحمل على الخوادم الأساسية.
  • بوابة موحدة متعددة السحابات/متعددة المجموعات: تحقيق إدارة موحدة لواجهات برمجة التطبيقات (API) وحركة المرور عبر البيئات المختلفة عبر Traefik Hub

7. الأسئلة المتكررة حول Traefik

ما هي الاختلافات بين Traefik و Nginx؟
تتميز Traefik في البيئات السحابية الأصلية بفضل اكتشاف الخدمات التلقائي والتكوين الديناميكي، مما يوفر تكاليف تشغيلية منخفضة. توفر Nginx أداءً فائقًا في سيناريوهات الموارد الثابتة عالية التزامن، على الرغم من أنها تتطلب صيانة يدوية للتوجيه وتناسب بشكل أفضل البنى التقليدية المستقرة.

هل Traefik مناسب لبيئات الإنتاج واسعة النطاق؟
الإصدار المجتمعي مناسب للاستخدامات الصغيرة والمتوسطة الحجم؛ أما الإصدار التجاري فيوفر إدارة المجموعات والتكوين الموزع ودعم اتفاقية مستوى الخدمة على مستوى المؤسسات. وقد تم تشغيله بشكل موثوق في العديد من المؤسسات الكبيرة ويمكنه تلبية متطلبات الإنتاج على نطاق واسع.

كيف يعمل Traefik؟
خفيف الوزن وعالي الكفاءة، ومناسب تمامًا لسيناريوهات الخدمات الصغيرة الديناميكية؛ في السيناريوهات الثابتة تمامًا وذات التزامن العالي، يكون أداؤه أقل قليلاً من Nginx، ولكنه يوفر كفاءة إدارة شاملة فائقة في البيئات السحابية الأصلية.

كيف يمكنني مراقبة حالة تشغيل Traefik؟
يتميز بلوحة تحكم مدمجة وواجهة برمجة تطبيقات إدارية، تدعم جمع مقاييس Prometheus. متوافق مع Grafana للمراقبة المرئية، كما يدعم أدوات التتبع الموزعة لتحديد مشكلات السلسلة بدقة.

ما هي المهارات المطلوبة لتكوين Traefik؟
لا يتطلب الاستخدام الأساسي سوى فهم بناء جملة YAML/TOML والمعرفة الأساسية بالحاويات؛ أما تخصيص المكونات الإضافية أو تنفيذ الإضافات المتقدمة فيتطلب إتقان لغة البرمجة Go، مع توفر الوثائق الرسمية وموارد المجتمع للمساعدة.

ملاحظة تكميلية من المحرر

يستفيد Traefik من نقاط قوته الأساسية المتمثلة في “التوافق مع السحابة الأصلية” و“العمليات المؤتمتة”، مما يجعله مناسبًا بشكل خاص للبنى المكونة من حاويات والخدمات الصغيرة. تعمل قدرته على اكتشاف الخدمات المؤتمتة على حل المشكلات الصعبة المتعلقة بالصيانة المرتبطة بتوجيه البروكسي التقليدي بشكل شامل. مقارنة بالأدوات المماثلة، فإنه يلغي الحاجة إلى وضع قواعد توجيه شاملة يدويًا، ويتيح التكامل السريع مع أنظمة تنسيق الحاويات المتنوعة، ويحافظ على تشغيل خفيف الوزن وعالي الأداء.

يُنصح المطورون الأفراد والفرق الصغيرة والمتوسطة بإعطاء الأولوية للإصدار المجتمعي من أجل النشر السريع للتطبيقات المعبأة في حاويات. يمكن للمؤسسات التي تتطلب بيئات إنتاج واسعة النطاق أو دعمًا احترافيًا الترقية إلى الإصدار التجاري أو استخدام Traefik Hub لإدارة واجهات برمجة التطبيقات عبر البيئات. بفضل الوثائق الشاملة والمجتمع النشط، يمكن حل المشكلات بسرعة من خلال القنوات الرسمية أو دعم المجتمع، مما يجعلها أداة إدارة حركة مرور الشبكة “جاهزة للاستخدام” لعصر السحابة الأصلية.

هل تريدني أن أقوم بتعديل مقدمة Traefik هذه لتتطابق تمامًا مع تنسيق Caddy السابق الخاص بك — مع ضمان تماثل مستويات العناوين وأنماط القوائم وهيكل الفقرات — لتسهيل النشر الجماعي على الموقع الإلكتروني؟

0 رد Aالمؤلف Mالمشرف
    لا توجد تعليقات بعد. كن أول من يشارك برأيه!
الملف الشخصي
عربة التسوق
قسائم
تسجيل الدخول اليومي
رسالة جديدة الرسائل المباشرة
بحث