DevOps ترکیبی از دو کلمه است: توسعه (Development) و عملیات (Operations). این یک رویکرد مدرن است که در آن توسعه‌دهندگان نرم‌افزار و تیم‌های عملیات نرم‌افزار در کل چرخه حیات نرم‌افزار با هم همکاری می‌کنند.

  • قبل از DevOps، تحویل نرم‌افزار کند و دستی بود. تیم‌های جداگانه کدنویسی، راه‌اندازی سرور، آزمایش و استقرار را انجام می‌دادند که منجر به تاخیر و خطاهای مکرر به دلیل عدم اتوماسیون می‌شد.
  • با DevOps، این فرآیند سریع، خودکار و مشارکتی است. با استفاده از ابزارهایی مانند Git، Jenkins، Docker و Kubernetes، تیم‌ها می‌توانند به طور مداوم کد را بسازند، آزمایش کنند و مستقر کنند و امکان استقرار را در ساعت‌ها به جای روزها فراهم کنند.

مزایای DevOps عبارتند از:

  • انتشار سریع‌تر و مداوم نرم‌افزار.
  • کاهش خطاهای دستی از طریق اتوماسیون. نظارت داخلی، خرابی‌ها یا مشکلات را در حین تحویل یا در مرحله تولید تشخیص می‌دهد.
  • خودکارسازی تست در کل فرآیند تحویل نرم‌افزار.

فهرست مطالب

فصل اول: درک اصول DevOps

در این بخش، اصول اولیه DevOps و اصطلاحات ضروری برای یک مهندس DevOps را پوشش خواهیم داد.

دواپس (DevOps) چیست؟

پیش‌نیازهای DevOps

چرخه حیات DevOps

فصل دوم: لینوکس برای DevOps

لینوکس یکی از پرکاربردترین سیستم‌عامل‌ها برای سرورها و محیط ابری است. این بخش مفاهیم اصلی لینوکس، دستورات و ملزومات شبکه‌ای که هر مهندس DevOps باید بداند را معرفی می‌کند.

مقدمه‌ای بر سیستم‌عامل لینوکس

دستورات لینوکس در DevOps

پیکربندی و گزینه‌های امنیتی سرور SSH لینوکس

دستور SSH در لینوکس

مدیریت فایل در لینوکس

مجوزهای لینوکس

اطلاعات سیستم و مانیتورینگ در لینوکس

اضافه کردن یک فایروال لینوکس

فصل سوم: شبکه

شبکه جزء بسیار مهمی است زیرا به ما کمک می‌کند تا بدانیم سیستم‌ها چگونه ارتباط برقرار می‌کنند و چگونه می‌توانیم مشکلاتی را که در لایه‌های مختلف رخ می‌دهند، عیب‌یابی کنیم.

چگونه رابط‌های شبکه را در لینوکس فهرست کنیم؟

دستگاه‌های شبکه

دستور route در لینوکس

دستور ping در لینوکس

مدل OSI چیست

DNS چیست

فصل چهارم: طراحی سیستم

طراحی سیستم، نحوه ساختاربندی برنامه‌ها مانند میکروسرویس‌ها، متعادل‌سازی بار، پایگاه‌های داده و لایه‌های مقیاس‌بندی را تعریف می‌کند. یک سیستم با طراحی خوب، خودکارسازی استقرارها، مقیاس‌بندی مستقل سرویس‌ها و تضمین دسترسی‌پذیری بالا را برای تیم‌های DevOps آسان‌تر می‌کند. همچنین امکان نظارت بهتر، جداسازی خطا و بازیابی سریع‌تر در هنگام خرابی‌ها را فراهم می‌کند.

فصل پنجم: مدیریت کد منبع

مدیریت کد منبع یکی از جنبه‌های کلیدی DevOps است. گیت (Git) یکی از بهترین ابزارها برای کنترل نسخه کدهای منبع محسوب می‌شود.

مقدمه‌ای بر گیت (Git)

کنترل نسخه گیت چگونه کار می‌کند؟

دستورات مفید گیت و مفاهیم اولیه