الترحيل إلى Google Cloud Platform (Google Cloud Platform - GCP)

[الجزء 1 من 2]



ظهرت مدونة Hike في 12 ديسمبر 2012 ، وكان هناك عدد قليل جدًا من القراء في ذلك الوقت. بحلول عام 2016 ، وصلنا إلى 100 مليون مستخدم مسجل و 40 مليار مشاركة شهرية. لكن هذا النمو سلط الضوء على مشكلة توسيع بنيتنا التحتية. للقضاء عليها ، كنا بحاجة إلى منصة عالية الأداء بسعر مناسب. في عامي 2016 و 2017 ، واجهنا العديد من الانقطاعات في العمل ، وكان علينا القيام بشيء عاجل بهذا ، لذلك بدأنا في النظر في خيارات مختلفة.


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


سنقسم هذا المنشور إلى قسمين:


  1. سبب اختيار برنامج "شركاء Google المعتمدون"
  2. التبديل إلى برنامج "شركاء Google المعتمدون" بدون توقف

إثبات المفهوم


بدأنا بإثبات صحة المفهوم ، حيث درسنا مدى توافق البنية التحتية الحالية مع الخدمات التي تقدمها منصة سحابة Google Cloud ، وكذلك عناصر التخطيط للتطوير المستقبلي.


المجالات الرئيسية للتحقق من صحة المفهوم:


⊹ موازن التحميل
machine آلة حوسبة
⊹ الشبكات وجدران الحماية
⊹ الأمن
⊹ توافر السحابة
⊹ البيانات الضخمة
illing الفواتير


تضمن تأكيد المفهوم اختبار والتحقق من عرض النطاق الترددي للأجهزة الافتراضية / موازنة التحميل / الشبكة ، بالإضافة إلى الاستقرار ، وقابلية التوسع ، والأمن ، والمراقبة ، والشحن ، والبيانات الضخمة ، وخدمات تعلم الآلة. في حزيران (يونيو) 2017 ، اتخذنا قرارًا مهمًا بترحيل البنية الأساسية بالكامل إلى منصة Google Cloud cloud.


أردنا اختيار منصة سحابية يمكنها التعامل مع التحديات التي لا حصر لها التي واجهناها:


anc موازن التحميل:


كانت لدينا العديد من المشاكل المرتبطة بإدارة مجموعات HAProxy المحلية للتعامل مع عشرات الملايين من اتصالات المستخدم النشطة يوميًا. لقد قام موازن التحميل العالمي (GLB) بحل العديد من مشاكلنا.



باستخدام موازنة تحميل GCP العالمية ، يمكن لعنوان IP واحد anycast إعادة توجيه ما يصل إلى مليون طلب في الثانية إلى خوادم GCP المختلفة ، مثل مجموعات المثيلات المُدارة (MIGs) ، دون الحاجة إلى "التسخين المسبق". لقد تحسن وقت الاستجابة الكلي لدينا من 1.7 إلى 2 مرة نظرًا لأن GLB يستخدم تنفيذ التجمع الذي يسمح لك بتوزيع الزيارات عبر مصادر متعددة.



machine آلة الحوسبة:


لم تكن هناك مشاكل كبيرة في أجهزة الكمبيوتر نفسها ، لكننا كنا بحاجة إلى نظام أساسي عالي الأداء وبأسعار معقولة. زاد إجمالي إنتاجية أجهزة Google الافتراضية بمقدار 1.3-1.5 مرة ، مما سمح بتقليل العدد الإجمالي لمثيلات الأجهزة الافتراضية قيد التشغيل.


تم إجراء اختبارات Redis مع مجموعة من 6 نسخ (8 نوى ، 30 غيغابايت لكل منها). استنادًا إلى النتائج أدناه ، نستنتج أن برنامج شركاء Google المعتمدون يوفر ما يصل إلى 48٪ (متوسط) تحسينات في الأداء لمعظم عمليات REDIS وحتى 77٪ لعمليات REDIS محددة.


redis-benchmark -h -p 6379 -d 2048 -r 15 -q -n 10000000 -c 100


قدمت خدمة الحوسبة السحابية من Google Compute Engine (GCE) مزايا إضافية في إدارة بنيتنا التحتية باستخدام ما يلي:


مجموعة المثيلات المدارة (MIG): تساعدنا MIG في الحفاظ على خدمات التطبيق في بيئة قوية مع ميزات متعددة المناطق ، بدلاً من تخصيص الموارد لكل منطقة. تحدد MIG تلقائيًا وتصحح الحالات غير الصالحة في مجموعة لضمان التشغيل الأمثل لجميع الحالات.


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


الأجهزة الافتراضية المخصصة: في إطار برنامج "شركاء Google المعتمدون" ، يمكننا إنشاء أجهزتنا الافتراضية الخاصة بقدرة معالجة المعالج وكمية الذاكرة اللازمة لأحمال عمل معينة.


⊹ الشبكات والجدران النارية:


إدارة الشبكات المتعددة وقواعد جدار الحماية ليست سهلة ويمكن أن تكون محفوفة بالمخاطر. يُعد VPC لشبكة GCP عالميًا بشكل افتراضي ويوفر اتصالات أقاليمية بدون تكوين إضافي وبدون تغيير النطاق الترددي للشبكة. توفر قواعد جدار الحماية مرونة VPC للمشاريع التي تستخدم اسم قاعدة العلامة.


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



⊹ الأمن:


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


يتم تشفير خدمات السحابة من Google بشكل افتراضي. يستخدم برنامج "شركاء Google المعتمدون" عدة مستويات من التشفير لحماية البيانات. يوفر استخدام عدة مستويات من التشفير الحماية لبيانات النسخ الاحتياطي ويسمح لك باختيار أفضل نهج بناءً على متطلبات التطبيق ، على سبيل المثال ، باستخدام خدمة Identity-Aware Proxy وتشفير البيانات غير النشطة بشكل افتراضي.


بالإضافة إلى ذلك ، يغلق برنامج "شركاء Google المعتمدون" مؤخرًا نقاط الضعف الكارثية المستندة إلى التنفيذ الكارثي في ​​الغالبية العظمى من المعالجات الحديثة (Meltdown، Specter). طورت Google طريقة جديدة للتعديل الثنائي تسمى Retpoline ، والتي تتيح لك التحايل على هذه المشكلة وإجراء تغييرات بشفافية على البنية التحتية الكاملة للعمل بشكل غير مرئي للمستخدمين.


⊹ توفر السحابة:


يختلف توفر موارد برنامج "شركاء Google المعتمدون" عن موارد موفري حلول السحابة الأخرى ، نظرًا لأن معظم موارد "برنامج شركاء Google المعتمدون" ، بما في ذلك لوحة التحكم ، إما مناطق أو إقليمية. كان علينا إدارة العديد من VPCs للمشاريع الفردية من حسابات منفصلة تحتاج إلى نظير اتصال VPC أو VPN لاتصال خاص. كان علينا أيضًا الاحتفاظ بنسخة من الصورة في حساب منفصل.


في Google Cloud ، تكون معظم الموارد عالمية أو إقليمية. تتضمن هذه الموارد لوحة التحكم (حيث يمكننا رؤية جميع الأجهزة الافتراضية لمشروعنا على شاشة واحدة) ، صور القرص ، حاويات لتخزين البيانات (عدة مناطق داخل القارة) ، VPC (لكن الشبكات الفرعية المنفصلة إقليمية) ، موازنة الحمل العالمية ، النشر والاشتراك ، إلخ.



⊹ البيانات الضخمة:


انتقلنا من تكوين تحليلي متجانس يصعب إدارته إلى نظام BQ مُدار بالكامل ، مما أدى إلى تحسينات في ثلاثة مجالات:


● زيادة سرعة معالجة الاستعلام تصل إلى 50 مرة.


● أنظمة معالجة البيانات المدارة بالكامل مع التحجيم التلقائي.


● تم تقليل وقت معالجة البيانات من ساعات إلى 15 دقيقة.


⊹ الشحن:


كان من الصعب مقارنة مزودي الخدمات السحابية المختلفين ، نظرًا لأن العديد من الخدمات لم تكن متشابهة أو قابلة للمقارنة ، اختلفت لسيناريوهات الاستخدام المختلفة وتعتمد على سيناريوهات الاستخدام الفريدة.


مزايا برنامج شركاء Google المعتمدون:


خصومات الاستخدام على المدى الطويل: يتم تطبيقها مع الاستخدام المتزايد للأجهزة الافتراضية عند الوصول إلى عتبات معينة. يمكننا الحصول تلقائيًا على خصم يصل إلى 30٪ على أعباء العمل التي يتم تنفيذها خلال معظم الشهر المحاسبي.


الفوترة لكل دقيقة: عند تخصيص جهاز افتراضي في GCE ، يتم تحصيل رسوم لمدة لا تقل عن 10 دقائق ، وبعد ذلك تبدأ الفواتير لكل دقيقة للاستخدام الفعلي للجهاز الظاهري. يوفر هذا تخفيضًا كبيرًا في التكاليف ، حيث لا يتعين علينا دفع ساعة كاملة ، حتى إذا كان مثيل الآلة يعمل أقل من ساعة.


أجهزة فائقة ، عدد أقل من الحالات: لقد وجدنا أنه بالنسبة لجميع المستويات والتطبيقات تقريبًا ، باستخدام GCP ، يمكنك تنفيذ نفس عبء العمل مع نفس الأداء ولكن عدد أقل من الحالات.


الالتزام بدلاً من التكرار: هناك عامل آخر هو نهج GCP في سعر مثيلات الآلة الافتراضية. في AWS ، الطريقة الأساسية لتقليل تكلفة مثيل آلة افتراضية هي شراء مثيلات محجوزة لمدة 1-3 سنوات. إذا كان عبء العمل يتطلب تغيير تكوين الجهاز الظاهري أو لم نكن بحاجة إلى هذا المثيل ، فكان علينا بيعه في السوق للحالات المحجوزة بسعر أقل. لدى برنامج "شركاء Google المعتمدون" "خصم التزام التزام" الذي ينطبق عند حجز موارد المعالج والذاكرة ، لا يهم حالات الآلة الافتراضية التي نستخدمها.


الخلاصة:


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

Source: https://habr.com/ru/post/ar427347/


All Articles