هذا دليل خطوة بخطوة حول كيفية أن تصبح مهندس DevOps، مع روابط لموارد التعلم ذات الصلة.
إذا كنت تريد معرفة المزيد عن DevOps، فتأكد من الاشتراك في النشرة الإخبارية الخاصة بي .
إذا وجدت هذا المستودع مفيدًا، فكر في دعمي على Patreon:
الغرض من خريطة الطريق هذه هو إعطائك فكرة عن المناظر الطبيعية. سترشدك خريطة الطريق إذا كنت في حيرة من أمرك بشأن ما يجب أن تتعلمه بعد ذلك، بدلاً من تشجيعك على اختيار ما هو رائج وعصري. يجب أن تنمي بعض الفهم لسبب كون إحدى الأدوات أكثر ملاءمة لبعض الحالات من الأخرى، وتذكر أن الضجيج والعصرية لا يعني دائمًا أنها الأنسب للوظيفة.
إذا أعجبك هذا المشروع أو كنت تستخدمه لتتعلم الحل الخاص بك أو تبدأه، فيرجى إعطائه نجمة. شكرًا!
تحميل نسخة PDF.
مصادر تعليمية لمهندسي DevOps (معظمها مجاني)
1. الجهاز الهضمي
2. تعلم لغة برمجة واحدة
3. تعلم Linux والبرمجة النصية
4. تعلم الشبكات والأمن
5. تعلم إدارة الخادم
6. تعلم الحاويات
7. تعلم تنسيق الحاوية
8. تعلم البنية التحتية كرمز
9. تعلم CI/CD
10. تعلم المراقبة وإمكانية الملاحظة
11. تعرف على مزود سحابي واحد
12. تعلم ممارسات هندسة البرمجيات
موارد إضافية
أدوات
كتب
سيتم الاحتفاظ بجميع مواردك (ملفاتك) في مستودع GIT. هذه الملفات هي رمز التطبيق ولكنها أيضًا بنية تحتية كرمز .
Git هي أداة مجانية تستخدم لإدارة التعليمات البرمجية المصدر. يتم استخدام Git لتتبع التغييرات في التعليمات البرمجية المصدر، مما يتيح للعديد من المطورين العمل معًا على التطوير غير الخطي.
منصتي Git الأكثر شهرة هما GitLab و GitHub .
هنا تحتاج إلى تعلم أوامر Git، مثل git clone والتفرع والدمج وكيفية التعاون في مشروع باستخدام طلبات السحب.
موارد:
كتاب برو جيت مجاني
تعلم Git بواسطة Atlassian مجانًا
تعلم Git المتفرعة مجانا
تعلم Git وGitHub على CodeAcademy مجانًا
Git Command Explorer مجاني
بوابة الغمر مجانا
مرجع Git المرئي مجانًا
كمهندس، يوصى بمعرفة لغة برمجة واحدة على الأقل يمكنك استخدامها لكتابة البرامج النصية للأتمتة .
بعض لغات البرمجة الشائعة لـ DevOps-es هي Python وGo وJavaScript .
بايثون هي لغة متعددة النماذج. كونها لغة مفسرة، يتم تنفيذ التعليمات البرمجية بمجرد كتابتها، ويسمح بناء الجملة بكتابة التعليمات البرمجية بطرق مختلفة. يُنصح كثيرًا باستخدام لغة بايثون باعتبارها اللغة الأولى التي يجب على المبرمجين الجدد تعلمها، نظرًا لتركيزها على سهولة القراءة والاتساق وسهولة الاستخدام.
تحتاج هنا إلى تعلم المفاهيم الأساسية للغات البرمجة، مثل بناء الجملة، وif/else، والحلقات، وهياكل البيانات، وما إلى ذلك.
موارد:
أتمتة الأشياء المملة باستخدام كتاب بايثون مجانًا
دورة بايثون المكثفة مجانية
البرنامج التعليمي الحديث لجافا سكريبت مجانًا
دورة مكثفة لجافا سكريبت للمبتدئين مجانًا
جافا سكريبت البليغة، الطبعة الثالثة، كتاب مارجين هافربيك المجاني
اذهب بالمثال مجانًا
يعمل نظام التشغيل كجسر بين مستخدم الكمبيوتر وأجهزته. وتتمثل وظيفتها في توفير الإعداد الذي يمكن للمستخدم من خلاله تشغيل البرامج بسهولة وفعالية.
نظرًا لأن معظم الخوادم تستخدم نظام التشغيل Linux ، فأنت بحاجة إلى أن تشعر بالراحة مع Linux وواجهة سطر الأوامر (CLI) الخاصة به.
إحدى التوزيعات السهلة البدء هي Ubuntu .
بالإضافة إلى ذلك، تحتاج إلى معرفة البرمجة النصية لأتمتة المهام للتطوير والعمليات.
هنا يمكنك تعلم اللغات الخاصة بنظام التشغيل، مثل Bash أو Powershell ، أو اللغات المستقلة مثل Python أو Go.
موارد:
نظام التشغيل - نظرة عامة مجانية
دروس البرمجة النصية المجانية لـ Shell
برنامج Powershell التعليمي للمبتدئين: تعلم البرمجة النصية لـ Powershell مجانًا
دليل مرجعي باش مجاني
الدليل النهائي: البدء باستخدام Ubuntu مجانًا
دليل FreeBSD مجاني
كتيب أوامر لينكس مجاني
بروتوكول الشبكة عبارة عن مجموعة ثابتة من القواعد التي تحدد كيفية نقل البيانات بين الأجهزة المختلفة في نفس الشبكة. بشكل أساسي، فهو يسمح للأجهزة المتصلة بالتواصل مع بعضها البعض، بغض النظر عن أي اختلافات في عملياتها الداخلية أو بنيتها أو تصميمها.
ستحتاج هنا إلى معرفة كيفية عمل الشبكة، وكيفية تكوين جدران الحماية ، وفهم كيفية عمل DNS ، ونموذج OSI ، وعناوين IP، والمنافذ، وما إلى ذلك.
موارد:
شرح نموذج OSI مجانًا
شبكات الكمبيوتر: نهج من أعلى إلى أسفل كتاب محتوى الفيديو فيديو
دورة TCP/IP وأساسيات الشبكات لمحترفي تكنولوجيا المعلومات (Pluralsight).
DevSecOps: تأمين رئيسي لـ CI/CD | دورة DevOps Pipeline Udemy
التدريب العملي على الأمان في DevOps: ضمان الأمان المستمر والنشر والتسليم باستخدام كتاب DevSecOps
تأمين DevOps: الأمن في كتاب السحابة
تتضمن إدارة الخادم جميع عمليات مراقبة البنية التحتية وصيانتها المطلوبة لكي تعمل الخوادم بشكل موثوق وبمستويات الأداء المثالية. الأهداف الأساسية لاستراتيجية إدارة الخادم الفعالة هي:
يمكنك تقليل حالات تباطؤ الخادم ووقت توقفه عن العمل مع زيادة الموثوقية إلى الحد الأقصى.
بناء بيئات خادم آمنة.
قم بتوسيع نطاق الخوادم والعمليات ذات الصلة لتلبية احتياجات المؤسسة بمرور الوقت.
ستحتاج هنا إلى معرفة ما هو الوكلاء الأمامي والخلفي ، وخوادم التخزين المؤقت ، وكيفية تشغيل خوادم الويب ، مثل Nginx، أو Apache، أو IIS.
موارد:
ما هو الوكيل العكسي؟ حر
خادم ذاكرة التخزين المؤقت مجاني
الوكيل العكسي مقابل الوكيل الأمامي: الاختلافات مجانية
ما هو موازنة التحميل؟ حر
ما هو جدار الحماية؟ حر
دليل NGINX مجاني
تعلم خادم أباتشي مجانا
تعلم IIS مجانًا
الحاوية هي وحدة قياسية من البرامج التي تقوم بتجميع التعليمات البرمجية وجميع تبعياتها، بحيث يعمل التطبيق بسرعة وبشكل موثوق من بيئة حوسبة إلى أخرى.
تعد Docker تقنية الحاويات الأكثر شيوعًا اليوم. صورة حاوية Docker عبارة عن حزمة برامج خفيفة الوزن ومستقلة وقابلة للتنفيذ تتضمن كل ما هو مطلوب لتشغيل التطبيق: التعليمات البرمجية ووقت التشغيل وأدوات النظام ومكتبات النظام والإعدادات. تحتاج هنا إلى معرفة كيفية تشغيل الحاويات، وDocker Networking، ووحدات التخزين، وDockerfiles، وتشغيل حاويات متعددة باستخدام Docker-Compose.
موارد:
ما هي الحاويات؟ حر
حاويات التعلم من الأسفل إلى الأعلى مجانًا
برنامج Docker التعليمي للمبتدئين من TechWorld مع Nana مجانًا
إتقان Docker: مع Kubernetes + Swarm من دورة Docker Captain Udemy
ما هي شبكة الخدمة؟ حر
DevOps مع Kubernetes مجانًا
تعمل عملية تنسيق الحاويات على أتمتة عملية نشر الحاويات وإدارتها وتوسيع نطاقها وربطها بالشبكات.
يمكن استخدام تنسيق الحاويات في أي بيئة تستخدم فيها الحاويات. يمكن أن يساعدك على نشر نفس التطبيق عبر بيئات مختلفة دون الحاجة إلى إعادة تصميمه. وتسهل الخدمات الصغيرة الموجودة في الحاويات تنسيق الخدمات، بما في ذلك التخزين والشبكات والأمان.
تحتاج هنا إلى معرفة كيفية عمل Kubernetes ، وكيفية إدارة مجموعة Kubernetes ونشر التطبيقات عليها.
موارد:
دورة تدريبية مكثفة حول Kubernetes للمبتدئين من TechWorld مع Nana مجانًا
كتاب تمهيدي: كيف أصبح نظام Kubernetes، وما هو، ولماذا يجب أن تهتم به ؟
مدير Kubernetes معتمد (CKA) مع دورة Udemy لاختبارات الممارسة
تعلم Kubernetes - من المبتدئين إلى المتقدمين من خلال دورة KodeKloud
افهم متى تستخدم خدمات المجموعة أو المداخل أو بوابات API المجانية
افهم المشكلات التي تحلها شبكة الخدمة (استخدم التجريد smi-spec.io مجانًا
تعرف على كيفية أتمتة TLS وDNS مجانًا
كتاب Kubernetes قيد التشغيل
مسار التعلم Kubernetes - 50 يومًا من الصفر إلى البطل من Microsoft مجانًا
يُشار إليه أحيانًا باسم IaC ، وهو يشير إلى التقنيات والأدوات المستخدمة لتحديد البنية التحتية، عادةً بلغة ترميزية مثل YAML أو JSON. تسمح البنية التحتية كرمز للمهندسين بأتمتة إعداد البيئة وتفكيكها. يعمل على تسريع النشر والتخلص من المخاطر من خلال توفير بيئات النسخ الذهبية عند الطلب.
Terraform هي أداة توفير البنية التحتية الأكثر شيوعًا، ولكن هناك أدوات أخرى مثل Ansible وChef وPuppet وVagrant.
هنا تحتاج إلى معرفة كيفية توفير البنية التحتية وإدارة التكوين .
موارد:
واجهات المستخدم الرسومية، وCLI، وواجهات برمجة التطبيقات: تعلم المصطلحات الأساسية للبنية التحتية كرمز مجانًا
دروس Terraform الرسمية المجانية
دليل شامل لTerraform مجانا
أتمتة وثائق Terraform مثل المحترفين! حر
كتابة وحدات Terraform القابلة لإعادة الاستخدام مجانًا
ما هو إستيو؟ حر
نظرة عامة على الدمية مجانًا
دورات الدمى مجانية ومدفوعة
البدء مع Ansible مجانًا
تعلم أساسيات Ansible
ابدأ مع Red Hat Ansible مجانًا ومدفوع
إتقان دورة Ansible Udemy
تعلم الشيف مجانا
يعد التكامل المستمر / النشر المستمر (CI/CD) طريقة لتقديم التطبيقات للعملاء بشكل متكرر عن طريق إدخال الأتمتة في مراحل تطوير التطبيق. يعد CI/CD حلاً للمشكلات التي قد يسببها دمج التعليمات البرمجية الجديدة لفرق التطوير والعمليات.
يقدم CI/CD أتمتة مستمرة ومراقبة مستمرة طوال دورة حياة التطبيقات، بدءًا من مراحل التكامل والاختبار وحتى التسليم والنشر. غالبًا ما يُشار إلى هذه الممارسات المتصلة باسم " خط أنابيب CI/CD " ويتم دعمها من قبل فرق التطوير والعمليات.
هناك مراحل مختلفة لمسار CI/CD، مثل: البناء والاختبار والنشر ، ولكن يمكن أن يكون هناك المزيد من الأنشطة المضمنة:
التحقق من الكود من التحكم في الإصدار وبنائه
وجود بوابات لأنواع مختلفة من الموافقات
إدارة متغيرات البيئة
إعادة تشغيل الخدمات
تنفيذ الاختبارات
وأكثر...
تحتاج هنا إلى معرفة كيفية إعداد خادم CI/CD، ودمج التعليمات البرمجية وتشغيل خطوط الأنابيب تلقائيًا، وإنشاء أدوات إدارة الحزم.
بعض أدوات CI/CD الشائعة هي Jenkins وTeamCity وCircleCI وBamboo وGitLab وAzure DevOps.
موارد:
التكامل المستمر مجانا
خط أنابيب CI/CD: مقدمة لطيفة مجانًا
تعلم GitLab من خلال البرامج التعليمية المجانية
ابدأ باستخدام GitLab CI/CD مجانًا
جينكينز، من الصفر إلى البطل: انضم إلى دورة DevOps Jenkins Master Udemy
تعلم إجراءات GitHub مجانًا
بناء جملة سير العمل لإجراءات GitHub مجانًا
تعلم Azure DevOps مجانًا
أوراق غش GitLab مجانية
تستلزم المراقبة الإشراف على عملية التطوير بأكملها بدءًا من التخطيط والتطوير والتكامل والاختبار والنشر والعمليات. يتضمن عرضًا كاملاً وفي الوقت الفعلي لحالة التطبيقات والخدمات والبنية التحتية في بيئة الإنتاج.
وهذا مهم بشكل خاص عندما يكون برنامجنا قيد الإنتاج ، ونحتاج إلى تتبع جميع أنواع المشكلات في بنيتنا التحتية وتطبيقاتنا.
الأداتان الأكثر شعبية هما بروميثيوس وجرافانا .
هنا تحتاج إلى معرفة كيفية إعداد المراقبة وتصور البيانات.
موارد:
ما هي إمكانية الملاحظة؟ دليل المبتدئين الشامل مجاني
كيف وأسباب وماذا يتم مراقبة الخدمات الصغيرة مجانًا
مراقبة DevOps مجانًا
تطبيق تقنيات المراقبة الأساسية مقابل تقنيات المراقبة المتقدمة مجانًا
تعلم بروميثيوس مجانا
تعلم جرافانا مجانا
مكدس مرن مجاني
يوفر موفرو السحابة طبقة من واجهات برمجة التطبيقات لتجريد البنية التحتية وتوفيرها بناءً على حدود الأمان والفوترة. تعمل السحابة على خوادم في مراكز البيانات، لكن التجريدات تعطي بذكاء مظهر التفاعل مع "منصة" واحدة أو تطبيق كبير. لقد كانت القدرة على توفير الموارد وتكوينها وتأمينها بسرعة مع موفري الخدمات السحابية أمرًا أساسيًا للنجاح الهائل والتعقيد الذي حققته DevOps الحديثة.
أشهر موفري الخدمات السحابية في السوق هم AWS و Azure ، بالإضافة إلى Google Cloud .
هنا تحتاج إلى معرفة كيفية إدارة المستخدمين والإدارة والشبكات والخوادم الافتراضية وما إلى ذلك.
موارد:
اختبار AZ-900: أساسيات Microsoft Azure مجانًا
دورة شهادة أساسيات Microsoft Azure (AZ-900) مجانًا
AZ-900 | دورة كاملة لأساسيات Microsoft Azure، واختبارات تدريبية مجانية، وموقع ويب وأدلة دراسية مجانية
ممارس سحابي معتمد من AWS - 2022 Udemy
مطور AWS بواسطة مسار التعلم Cloud Guru
باعتبارك مهندس DevOps، من المحتمل أن تعمل ضمن فريق مع مطورين آخرين في عالم Agile، مثل Scrum . لذلك، من المهم جدًا معرفة الأجزاء المختلفة لـ SDLC ، بالإضافة إلى الأدوات المستخدمة هناك.
بالإضافة إلى ذلك، سيكون من الجيد معرفة كيفية عمل اختبار الأتمتة ، حيث ستحتاج إلى إعداده بطريقة CI/CD.
هنا تحتاج إلى معرفة ما هو Scrum ، وجميع مراحل SDLC ، وكيفية عمل اختبار الأتمتة ، وما إلى ذلك.
موارد:
ما هو سكروم؟ حر
طرق للتعرف على سكروم مجانًا
مراحل ونماذج دورة حياة تطوير البرمجيات (SDLC) مجانًا
دليل المبتدئين إلى Agile في Jira: وصف الدورة مجانًا
تعلم SAFe مجانًا
تعلم اختبار الأتمتة مجانًا
GitLab - دليل المبتدئين إلى DevOps مجانًا
نماذج SDLC الشائعة مجانية
تتبع العمل : ** لوحات Asana وMonday وJira وTrello وAzure.
التحكم في كود المصدر : Git وGithub وGitLab وBitBucket وAzure DevOps.
CI/CD : Jenkins، Team City، Github Actions، Travis CI، Bamboo، Circle CI، Azure Pipelines، Octopus Deploy، Harness، CloudBees CodeShip.
تحليل كود المصدر : SonarQube، Veracode.
إدارة القطع الأثرية : Artifactory، Docker Container Register، npm، Yarn، NuGet.
إدارة التكوين : Terraform، Ansible، Puppet، Chef.
تنسيق الحاويات : Docker، وKubernetes، وRed Hat OpenShift.
المراقبة : بروميثيوس، جرافانا، سبلانك، دايناتريس، كيبانا.
دليل DevOps: كيفية إنشاء مرونة وموثوقية وأمان على مستوى عالمي في المنظمات التكنولوجية ، جين كيم، باتريك ديبوا، جون ويليس، جيز همبل
يقدم الكتاب تطوير المنتجات، وضمان الجودة، وعمليات تكنولوجيا المعلومات، وأمن المعلومات. إنها قراءة رائعة لأولئك الجدد في DevOps أو الذين يرغبون في معرفة المزيد حول كيفية عمل المكونات المختلفة لـ DevOps معًا.
تسريع: علم البرمجيات الهزيلة وDevOps: بناء وتوسيع نطاق منظمات التكنولوجيا عالية الأداء ، نيكول فورسغرين، جيز همبل، جين كيم
يقدم هذا الكتاب كلاً من النتائج والعلم وراء قياس أداء تسليم البرامج. إنها أداة رائعة لترويج DevOps للإدارة العليا.
التسليم المستمر: إصدارات برامج موثوقة من خلال أتمتة البناء والاختبار والنشر ، جيز همبل، ديفيد فارلي
يقدم إدارة البنية الآلية وترحيل البيانات. تم إنشاء العديد من مفاهيم خطوط أنابيب النشر التي أصبحت قياسية منذ ذلك الحين في هذا الكتاب. يتم تناول التكوين كرمز، وأتمتة البناء والنشر، وتقنيات الاختبار الفعالة ببعض التفاصيل الفنية. كتابه الفني في الغالب.
طبولوجيات الفريق: تنظيم فرق الأعمال والتكنولوجيا لتحقيق التدفق السريع ، ماثيو سكيلتون، مانويل بايس
يتحدث الكتاب عن كيفية تنظيم الفرق بطريقة تمكن من التدفق السريع للقيمة للعملاء. وهو يوفر مجموعة من أربعة طبولوجيا أساسية للفريق: الفرق المتوافقة مع الدفق، والفرق التمكينية، وفرق الأنظمة الفرعية المعقدة، وفرق النظام الأساسي، والتي يمكن دمجها وتكييفها لتناسب السياقات التنظيمية المختلفة.
عمليات تطوير فعالة: بناء ثقافة التعاون والتقارب واستخدام الأدوات على نطاق واسع ، جينيفر ديفيس، رين دانيلز
يقدم الكتاب طرقًا فعالة لتحسين التنسيق بين الفريق. فهو يوضح كيفية كسر صوامع المعلومات ومراقبة العلاقات وإصلاح سوء الفهم الذي ينشأ بين الفرق في مؤسستك وداخلها.
مشروع فينيكس: رواية عن تكنولوجيا المعلومات، وعمليات التطوير، ومساعدة أعمالك على تحقيق النجاح ، جين كيم، كيفن بير، جورج سبافورد
إنها رواية كلاسيكية عن الفعالية والاتصالات. يشبه العمل في مجال تكنولوجيا المعلومات عمل مصنع التصنيع، ويجب إنشاء نظام لتبسيط سير العمل. واحدة من أفضل الكتب هناك.
هندسة موثوقية الموقع ، بيتسي باير، كريس جونز، جينيفر بيتوف، نيال ريتشارد ميرفي
يشرح هذا الكتاب دورة الحياة الكاملة لتطوير Google ونشره ومراقبته وكيفية إدارة أكبر أنظمة البرامج في العالم (المعروفة أيضًا باسم SRE). يجب على أي شخص يعتبر نفسه في نهاية "Ops" من جانب DevOps أو يريد معرفة كيفية تقوية الروابط بين فرق Dev وOps المختلفة أن يقرأ SRE.
يمكننا حتى تقديم خريطة الطريق هذه على شكل برجر :).
إذا كنت تعتقد أن خارطة الطريق يمكن تحسينها، فيرجى فتح تقرير علاقات عامة يتضمن أي تحديثات وإرسال أي مشكلات. وسأواصل أيضًا تحسين هذا الأمر، لذا قد ترغب في تمييز هذا المستودع بنجمة لزيارته مرة أخرى.
افتح طلب سحب مع التحسينات
مناقشة الأفكار في القضايا
انشر الكلمة
الدكتور ميلان ميلانوفيتش - CTO في 3MD.
رومانو روث - رئيس DevOps في Zühlke.