توفر عالية على Vultr مع IP العائم و BGP

يتيح لك Vultr الجمع بين ميزتين من ميزاتنا (عناوين IP العائمة و BGP) من أجل تحقيق توفر عالٍ.

اقامة

ستحتاج إلى مثيلين في نفس الموقع ، وعنوان IP عائم. ستحتاج أيضًا إلى فتح تذكرة تطلب إعداد BGP على ASN خاص لعناوين IP العائمة. (يمكنك أيضًا استخدام هذه الميزة إذا كنت تقوم بتشغيل BGP معنا على ASN عام)

ستحتاج أيضًا إلى برنامج خفي BGP ، نوصي باستخدام BIRD. يتوفر BIRD عادةً عبر مدير الحزم لنظام التشغيل الخاص بك.

سنستخدم 192.0.2.10/32كمثالنا العائم 198.51.100.99IP وعنوان IP الخاص بأحد مثيلاتنا.

ملاحظة: يجب عدم إرفاق IP العائم بأي مثيل معين عبر لوحة التحكم الخاصة بك. إذا تم إرفاق عنوان IP عبر لوحة التحكم ، فلن يعمل التوفر العالي بشكل صحيح.

تكوين IP

سنستخدم واجهة Linux "الوهمية" لربط عنوان IP بـ. يمكنك إنشاء هذا باستخدام الأوامر التالية:

ip link add dev dummy1 type dummy
ip link set dummy1 up
ip addr add dev dummy1 192.0.2.10/32

تأكد من تكوين هذا بشكل صحيح:

# ip addr show dev dummy1
5: dummy1: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether ba:23:57:2c:ad:bc brd ff:ff:ff:ff:ff:ff
    inet 192.0.2.10/32 scope global dummy1

تكوين BIRD

بعد ذلك ، سنقوم بتكوين BIRD. تختلف هذه التعليمات قليلاً بين أنظمة تشغيل المضيف ، انظر الحواشي السفلية في أسفل هذا القسم.

قم بإنشاء /etc/bird.confملف:

log "/var/log/bird" all;

router id 198.51.100.99;

protocol device
{
    scan time 60;
}

protocol direct
{
    interface "dummy1";
}

protocol bgp vultr
{
    local as <<YOURAS>>;
    source address 198.51.100.99;
    import none;
    export all;
    graceful restart on;
    next hop self;
    multihop 2;
    neighbor 169.254.169.254 as 64515;
    password "<<YOURPASSWORD>>";
}

سوف تحتاج إلى تحديث YOURASو YOURPASSWORDمع AS الرقم وكلمة السر BGP تعيين إلى حسابك. يمكن العثور على هذه المعلومات في علامة التبويب BGP لصفحة مثيل في لوحة تحكم Vultr .

سيطلب ملف التكوين هذا من BIRD البحث عن واجهة dummy1 ، والإعلان عن أي عناوين IP يعثر عليها لبنيتنا التحتية عبر BGP. هذا يعني أنه بمجرد تشغيل المثيل الخاص بك ، ستبدأ في تلقي حركة المرور ، وإذا تعطلت حركة المرور ستتوقف.

تكوين فري

إذا كنت تستخدم FreeBSD كمضيف بدلاً من Linux ، فهناك بعض الاختلافات.

  1. يجب إعادة ترجمة النواة لدعم توقيع TCP MD5. هذه التعليمات خارج نطاق هذه المقالة. إذا كانت نواة BSD الخاصة بك لا تدعم تواقيع TCP MD5 ، فسترى الإخراج التالي في سجل BIRD.

    $ cat /var/log/bird
    2017-12-15 01:35:00 <INFO> Started
    2017-12-15 01:35:00 <ERR> vultr: Socket error: Kernel does not support TCP MD5 signatures
    
  2. يقع ملف تكوين BIRD في /usr/local/etc/bird.confBSD.

تحقق من اتصال BGP

ابدأ تشغيل خدمة BIRD service bird startوانتظر بضع ثوانٍ. تحقق من أن جلسة BGP قد تم تأسيسها:

# birdc show proto all vultr
BIRD 1.5.0 ready.
name     proto    table    state  since       info
vultr    BGP      master   up     2016-01-15  Established
  Preference:     100
  Input filter:   REJECT
  Output filter:  ACCEPT
  Routes:         0 imported, 1 exported, 0 preferred
  Route change stats:     received   rejected   filtered    ignored   accepted
    Import updates:      255919581          0  255919581          0          0
    Import withdraws:      1905513          0        ---  257825094          0
    Export updates:              1          0          0        ---          1
    Export withdraws:            0        ---        ---        ---          0
  BGP state:          Established
    Neighbor address: 169.254.169.254
    Neighbor AS:      YOURAS
    Neighbor ID:      x.x.x.x (Host IP)
    Neighbor caps:    refresh enhanced-refresh restart-able AS4
    Session:          external multihop AS4
    Source address:   198.51.100.99
    Hold timer:       184/240
    Keepalive timer:  30/80

إذا كان كل شيء يعمل بشكل صحيح ، يجب أن تشاهد "تم التأسيس" بجوار حالة BGP. هناك مشكلة شائعة هنا هي وجود جدار ناري يحظر منفذ BGP (TCP 179). أيضًا ، إذا تم نشر هذا المثيل قبل إعداد Vultr لجلسة BGP الخاصة بك ، فسوف تحتاج إلى إعادة تشغيله عبر لوحة التحكم قبل توفر BGP. إذا كنت لا تزال تواجه مشاكل ، فابحث /var/log/birdعن مزيد من التفاصيل.

اختبارات

يمكنك التأكد من أن BIRD تعلن عن المسار إلى IP العائم الخاص بك مع ما يلي:

# birdc show route
BIRD 1.5.0 ready.
192.0.2.10/32    dev dummy1 [direct1 2015-12-29] * (240)

لتأكيد أن هذا يعمل بشكل صحيح ، يمكنك تعطيل واجهة dummy1 (مع ip link set dummy1 down) ، ثم كرر show routeالأمر. ستلاحظ BIRD اختفاء الواجهة وستسحب المسار.

استخدام الإنتاج

للتأكد من استمرار موقعك ، ستحتاج إلى أكثر من خادم يعمل بنفس تهيئة BGP. في حالة تعطل أحد المثيلات ، سيتم إعادة توجيه حركة المرور ديناميكيًا إلى إحدى المثيلات الأخرى. لا يوجد حد لعدد المثيلات التي يمكنك تشغيلها باستخدام هذا التكوين في موقع معين ، ولكن واحدًا منها فقط سيكون نشطًا في أي وقت.

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

على سبيل المثال ، إذا كان لديك حالتان:

  • المثيل A - المثيل الرئيسي ، يجب أن يتلقى كل حركة المرور بشكل طبيعي
  • المثيل B - مثيل النسخ الاحتياطي ، يجب أن يتلقى حركة المرور فقط إذا كان المثيل A معطلاً

لتحقيق ذلك ، أضف القسم التالي إلى تكوين BIRD الخاص بك في المثيل B على النحو التالي:

export filter {
    bgp_path.prepend(YOURAS);
    accept;
};

سيضمن ذلك انتقال حركة المرور دائمًا إلى المثيل A ، إلا إذا كانت منخفضة.

إذا كان لديك مثيل C ، الذي يجب أن يتلقى حركة المرور فقط عند تعطل A و B ، يمكنك ببساطة إضافة سطر آخر "bgp_path.prepend" لإنجاز ذلك.

إعداد IPv6

ستعمل هذه العملية أيضًا مع الشبكات الفرعية المحجوزة IPv6 ، على الرغم من أنك ستستخدم "bird6" بدلاً من "bird" و "birdc6" بدلاً من "birdc".

اترك تعليقاً

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد