sre

مسئولیت های SRE چیست و جایگاه آن در تیم کجاست؟

SRE

مقدمه

توسعه نرم افزار روز به رو در حال سریعتر و پیچیده تر شدن است، و این موضوع تیم های عملیاتی را بیش از هر زمان دیگری ناامید می کند. بنابراین، DevOps به منظور مقابله با این گردش کار، محبوبیت خود را بدست آورد و باعث کاهش عدم هماهنگی و کمبودها در این میان شد. در حالی که ایجاد فرهنگ DevOps به تیم ها کمک کرده است تا همکاری بهتری داشته باشند و سریعتر نرم افزار را ارائه دهند، اما تیم های DevOps لزوماً کسی را به طور خاص برای توسعه سیستم هایی که قابلیت اطمینان و عملکرد سایت را افزایش می دهند، اختصاص نمی دهد. اینجاست که یک مهندس قابلیت اطمینان سایت (SRE) وارد تصویر می شود.

s1

مفهوم SRE در ابتدا توسط مهندس گوگل، Ben Treynor، بوجود آمد. سپس ، اندکی پس از اجرایی شدن SRE، آنها کتاب الکترونیکی محبوب SRE خود را منتشر کردند.این امر کمک کرد تا این موضوع به سرعت در صنعت IT شناخته شود. مهندسین قابلیت اطمینان سایت در چهارراه عملیات و توسعه نرم افزار قرار می گیرند. اصولاً تیم های SRE از مهندسان نرم افزار تشکیل شده اند که دانش عملیاتی و شبکه ای نیز دارند و برای بهبود قابلیت اطمینان سیستم خود ، خدماتی را ارائه می دهند. 

پس بیایید ابتدا نقش ها و مسئولیت های اصلی یک مهندس قابلیت اطمینان سایت را تعریف کنیم و نشان دهیم که چگونه SRE می تواند مقاومت افراد ، فرآیندها و فناوری شما را به شدت بهبود بخشد.

مهندسی قابلیت اطمینان سایت (SRE) چیست؟

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

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

s2

مهندسی قابلیت اطمینان سایت راهی است که می تواند شکاف بین توسعه دهندگان و عملیات را حتی در فرهنگ DevOps پر کند. موضوع این نیست که SRE در برابر DevOps باشد، بلکه باید SRE در کنار DevOps باشد. SRE به نوعی مانند یک حالت فعال تر از QA می باشد. مهندسین قابلیت اطمینان سایت به طور تمام وقت به دنبال ایجاد نرم افزار و راه حل هایی اختصاص داده می شوند که قابلیت اطمینان سیستم ها و سرویس ها را در محیط عملیات بهبود می بخشد، مشکلات را حل می کند، به حوادث پاسخ می دهد و معمولاً مسئولیت های مواقع اضطراری را بر عهده می گیرد.

 

s3

 

نقش ها و مسئولیت های مرسوم برای یک مهندس قابلیت اطمینان سایت

پیاده سازی تیم SRE هم به نفع تیم های عملیات و هم تیم های توسعه نرم افزار است. SRE نه تنها می تواند قابلیت اطمینان عمیق تری برای سیستم ها و سرویس ها در محیط عملیات ایجاد کند، بلکه به تیم های عملیات ، پشتیبانی و توسعه کمک می کند تا زمان کمتری را برای پشتیبانی آن ها صرف کنند و به آنها فرصت بیشتری برای ساخت ویژگی ها و خدمات جدید می دهد.

در ادامه به چند نمونه از نقش ها و مسئولیت های مرسوم یک مهندس SRE اشاره کرده ایم.

s4

  • ارائه سرویس هایی برای کمک به تیم های عملیات و توسعه

تیم های sre مسئول این  هستند تا به صورت فعال سرویس هایی را ارائه کنند تا به تیم های عملیات و توسعه کمک کند تا در کارشان بهبود حاصل شود. این سرویس ها می تواند از یک سری تنظیمات ساده گرفته تا مانیتورینگ و حتی تغییرات در کد در محیط عملیات باشد.

s5

  • رفع مشکلات نرم افزار

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

s6

  • بهینه سازی فرآیندها

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

s7

  • مشارکت در تمامی مراحل کارها

تیم های SRE مانند تمامی تیم های دیگر درگیر محیط های استیج و عملیات می شوند. آنها در کار با تیم توسعه نرم افزار ، پشتیبانی و عملیات مشارکت می کنند و این به این معنی است که با گذشت زمان مقدار زیادی دانش به دست می آورند. مهندسان قابلیت اطمینان سایت می توانند این دانش را در هر قسمت از کار استفاده کرده و آن را با دیگر تیم ها نیز به اشتراک بگذارند.

 

s8

 

SRE در کجای تیم شما قرار می گیرد؟

نقش ها و مسئولیت های مهندسی قابلیت اطمینان سایت برای بهبود مستمر افراد ، فرآیندها و فناوری در هر سازمانی بسیار مهم است. این مهم نیست که آیا تیم شما قبلاً یک فرهنگ کامل DevOps را در پیش گرفته است یا هنوز در تلاش برای انتقال هستید ، SRE مزایای بی شماری برای سرعت گرفتن و قابلیت اطمینان ارائه می دهد. SRE درست در تقاطع عملیات، پشتیبانی و توسعه قرار می گیرد. SRE به عنوان ترکیبی کامل از مهارت ها برای تقویت روابط بین عملیات و توسعه دهندگان عمل می کند، که منجر به کوتاه تر شدن بازخورد حلقه ها ، همکاری بهتر و نرم افزار قابل اطمینان تر می شود.

0 دیدگاه در “مسئولیت های SRE چیست و جایگاه آن در تیم کجاست؟افزودن → خودتان

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *