كيفية عمل DevOps مع AWS
نشرت: 2021-06-03ربما صادف الكثير منا كلمة DevOps في حياتنا اليومية. إذا كنا فضوليين إلى حد ما ، فسنجد أنها حركة تنظيمية ثقافية مدعومة بمجموعة من الأدوات التي تسهل وتبسط التسليم المستمر للبرامج.
تركز هذه الأدوات على تسهيل كل عملية من العمليات التي تعد جزءًا من نشر البرامج وتدفق التسليم ، والتي تغطي إنشاء الكود للنشر في البيئات التي يواجهها المستخدم النهائي.
وبالمثل ، في إطار عمل DevOps ، هناك نوعان من الممارسات الأساسية: التكامل المستمر والتسليم المستمر. هؤلاء مسؤولون عن تنظيم الإجراء في مراحل بناء المنتج وتسليمه إلى البيئات الإنتاجية ، على التوالي.
ومن الجدير بالذكر أن أبرز مصنعي البرمجيات وفرق التطوير السحابي كانوا مهتمين جدًا بتخصيص هذه العمليات لتوفير مزيد من الانسيابية لعملائهم من حيث أنشطة النشر والتسليم لمنتجاتهم النهائية.
أدت سهولة دمج منتجات الجهات الخارجية إلى جانب الخبرة التي تمتلكها هذه الأنظمة الأساسية لبناء منتجات مخصصة حسب الحاجة إلى مجموعات كاملة لممارسات DevOps مثل Azure DevOps المعروفة و Git CI / CD و Jenkins وغيرها.
ولكن ماذا عن خدمات أمازون ويب؟ لا يمكن ترك أكبر مزود خدمة سحابية اليوم ، لأنه يقدم مجموعة من الأدوات والخدمات التي يمكن أن تلبي جميع الاحتياجات فيما يتعلق بدورة حياة تطوير البرامج.
تم تصميم هذه الأدوات بحيث لا تعتمد على طرف ثالث لتحقيق العملية ، وأن تعدد استخداماتها وفصلها وتكلفتها هي ميزة DevOps على AWS. هذه الأدوات هي كما يلي:
AWS Cloud9 (بيئة التطوير)
Cloud9 هي بيئة تطوير متكاملة (IDE) قائمة على السحابة توفر تجربة غنية في بناء التعليمات البرمجية ، مما يسمح لكتابة التعليمات البرمجية وتنفيذها وتصحيحها باستخدام متصفح فقط. وبالمثل ، نظرًا لكوننا IDE قائم على السحابة من Amazon ، يمكننا أن نجد أنه يعمل على مثيل Amazon EC2 تحته. لا يوفر هذا المثال الموارد اللازمة لترجمة التعليمات البرمجية وتصحيحها.
من ناحية أخرى ، تسهل Cloud9 العمل التعاوني من خلال التعليمات البرمجية ، حيث يمكنك مشاركة بيئة التطوير الخاصة بك مع فريقك ومعرفة من ومتى وأين يتم إدخال رمز جديد في الوقت الفعلي. كما أنه يشتمل على دردشة حيث يمكن للفريق التواصل على الفور وحل أي أسئلة أو مخاوف.
مزايا سحابة AWS 9
لاستخدامه ، ما عليك سوى تمكين مثيل (يمكن أن يكون أمازون افتراضيًا) والاتصال عبر متصفح لبدء كتابة التعليمات البرمجية واختبارها. لذلك لا داعي للقلق بشأن الموارد وتهيئة بيئة التطوير وأقل من ذلك بكثير للحفاظ على IDE الخاص بك ، لأن Aws cloud9 هي المسؤولة عن القيام بذلك نيابة عنك.
بالإضافة إلى ذلك ، يعزز Aws Cloud9 العمل التعاوني من خلال مجموعة من الأدوات مثل تكوين البيئات المحددة مسبقًا والتحرير في الوقت الفعلي لزملائك في الفريق والدردشة المضمنة.
تكلفة AWS Cloud9
لا توجد رسوم إضافية على AWS Cloud9 ، طالما أنك تستخدم مثيل EC2 ، فأنت تدفع فقط مقابل موارد الحوسبة والتخزين (على سبيل المثال ، مثال EC2 واحد ، وحدة تخزين EBS واحدة) المستخدمة لتشغيل وتخزين التعليمات البرمجية الخاصة بك.
AWS CodeCommit (التحكم في الإصدار)
يمكن لخدمة التحكم في إصدار السحابة المستندة إلى GIT استضافة وإدارة أي رمز أو ملفات ثنائية أو مستندات. إنه يلغي الحاجة إلى إدارة نظامك ، لذلك لا داعي للقلق بشأن توسيع نطاق موارد التخزين.
بالإضافة إلى ذلك ، نظرًا لأنه نظام قائم على GIT ، فهو متوافق مع الوظائف الأساسية ويمكن أن يقترن بسلاسة بالأدوات القائمة على GIT.
متى تستخدم CodeCommit؟
لنفترض أنك بحاجة إلى توفير خادم التحكم في الإصدار لعدة فرق عمل. في هذه الحالة ، يمكنك الاستفادة الكاملة من هذه الخدمة لأنها تتيح مزايا مثل التوافر العالي والأمان وتتم إدارتها بشكل تكميلي.
من ناحية أخرى ، إذا كنت تحتاج فقط إلى تقديم الخدمة لعدد قليل من المشاريع ، يكون الربح ضئيلًا إذا كنت تستخدم هذا أو أي شيء آخر معروض في السوق.
ما هي تكلفة CodeCommit؟
تمنحنا الطبقة المجانية من Amazon حدًا لا يتجاوز 5 مستخدمين لديهم إمكانية الوصول إلى مستودعات غير محدودة ، و 10000 طلب GIT ، و 50 جيجابايت / شهر للتخزين. إذا تجاوزت أيًا من هذه القيود ، فستبدأ أمازون في تحصيل 1 دولار أمريكي شهريًا.
AWS CodeDeploy (النشر)
تسهل خدمة Amazon هذه إدارة وأتمتة تطبيقات متعددة استنادًا إلى خدمات مثل EC2 و AWS Fargate و Aws Lambda والخوادم المحلية. بمعنى آخر ، إنه يسرع إطلاق المكونات الجديدة لمنتج البرنامج.
بالإضافة إلى ذلك ، فإنه يوفر عمليات نشر جماعية تسهل التجزئة حسب البيئات. بالإضافة إلى ذلك ، فإن CodeDeploy لها صلة بأدوات مثل CodeCommit أو GitHub أو GitLab أو Jenkins أو Travis أو CodePipeLine ، لذا فهي تتكامل جيدًا معها.
مزايا استخدام AWS CodeDeploy
يمنحنا CodeDeploy ميزة كبيرة في إدارة عمليات نشر التطبيقات لأنه يسهل تكوين وقت التوقف عن العمل ، وتوسيع نطاق التطبيقات لزيادة توفر المنتج إلى أقصى حد.
بالإضافة إلى ذلك ، فإنه يتكامل بسهولة وبشفافية تقريبًا مع منتجات أمازون مثل EC2 أو ECS أو التطبيقات بدون خادم. يمكن أن يتكامل أيضًا مع سلاسل أدوات التسليم المستمر مثل AWS CodePipeline أو GitHub أو Jenkins.
AWS Code Build
تعمل خدمة التكامل المستمر المُدارة بالكامل على تجميع التعليمات البرمجية المصدر وتشغيل الاختبارات وإنتاج حزم برامج جاهزة للنشر. مع CodeBuild ، ليست هناك حاجة لتوفير وإدارة وتوسيع خوادم الإنشاء الخاصة بك. تتسلق CodeBuild باستمرار وتعالج العديد من البنيات في وقت واحد ، لذلك لا تنتظر الإنشاءات في قائمة انتظار.
يمكنك البدء بسرعة في استخدام بيئات البناء المعبأة مسبقًا أو إنشاء بيئات مخصصة تستخدم أدوات البناء الخاصة بك.
لماذا بناء أكواد AWS؟
تتمثل بعض المزايا الرئيسية لاستخدام هذه الخدمة في مرونتها وقابليتها للتوسع والتخصيص. ومع ذلك ، لديها برنامج البناء الخاص بها. يمكنه دمج أدوات إضافية ودمج ميزات مخصصة وخارجية ودعم أعباء عمل البناء العالية لإضافة المزيد من سعة الحوسبة والموارد حسب الحاجة.
يمكنك أتمتة مهام الإنشاء عن طريق إنشاء مهام سير عمل تلقائية يتم تشغيلها عندما يكون هناك تغيير في التعليمات البرمجية المصدر. بالإضافة إلى ذلك ، يمكنك تأمين عناصر البناء الخاص بك حيث يحتوي Code Build على تشفير للأجزاء والمحتوى.
ما تكلفة AWS Code Build؟
لا توجد تكاليف مسبقة لهذه الخدمة ؛ يتم محاسبتك فقط على موارد الحوسبة بناءً على المدة التي يستغرقها الإنشاء للتشغيل. يعتمد معدل الدقيقة على نوع المثيل المحدد للحوسبة.
AWS CodePipeline (تدفق العملية)
يقوم CodePipeline بأتمتة مراحل الإنشاء والاختبار والنشر لعملية النشر في كل مرة يتم فيها إجراء تغيير على الكود ، بناءً على نموذج النشر الذي تحدده.
يمكّنك من تقديم الميزات والتحديثات بسرعة وموثوقية. يمكنك بسهولة دمج AWS CodePipeline مع خدمات الجهات الخارجية ، مثل GitHub أو المكون الإضافي المخصص.
مزايا AWS CodePipeline
بالإضافة إلى عمليات التكامل الممكنة مع خدمات AWS مثل CodeCommit و ECR و S3 لاستخراج كود المصدر ، يسمح لك AWS CodePipeline بنشر تغييراتك مع CodeDeploy أو ECS عبر المثيلات أو حاويات Fargate.
يسمح لك بالتشغيل في العديد من مقاطع سير العمل المتوازية لتحسين أوقات النشر والتحكم في الوصول لإجراء تغييرات عبر IAM للمستخدمين أو الأدوار أو المستخدمين المتحدين.
يمكنك أيضًا معرفة حالة خط الأنابيب الخاص بك عن طريق تكوين تنبيهات SNS التي ستظهر كإخطارات وفقًا للأحداث التي يتم تنفيذها.
ما هي قيمة AWS CodePipeline؟
باستخدام AWS CodePipeline ، تدفع فقط مقابل ما تستخدمه. تبلغ تكلفة AWS CodePipeline 1.00 دولارًا أمريكيًا لكل خط أنابيب نشط شهريًا. تقدم لنا أمازون لأغراض الاختبار وخطوط الأنابيب الأخرى مجانًا لأول 30 يومًا من إنشائها.
باختصار ، قامت Amazon Web Services بعمل جيد للغاية لتزويد عملائها بجميع الأدوات اللازمة لعمليات التكامل والنشر المستمر.
إن إمكانية دمج جميع هذه الخدمات في منصة سحابية واحدة تجعلها خيارًا عمليًا ومفيدًا للغاية ، ونموذج التكلفة والعدد الكبير من الميزات المقدمة يقودنا إلى إعادة التفكير في كيفية دخول الشركات إلى عالم DevOps ، مع استخدام أدوات AWS كأساس لها عملياتها وانتشارها.
هل لديك أي أفكار حول هذا؟ أخبرنا أدناه في التعليقات أو انقل المناقشة إلى Twitter أو Facebook.