SLA مخفف Service Level Agreement و به معنی توافقنامه سطح خدمت است. اسالای معمولاً سندی میان ارائهدهنده و مشتری است که تعهدهای خدمت و نحوه محاسبه آنها را تعیین میکند. برای مثال سرویس میزبانی میتواند درباره دسترسپذیری ماهانه، زمان پاسخ پشتیبانی و اعتبار جبرانی توافق کند.
SLA باید چه چیزی را روشن کند؟
| بخش | سوال لازم |
|---|---|
| دامنه خدمت | کدام API، منطقه یا قابلیت شامل توافق است؟ |
| سطح تعهد | درصد دسترسپذیری یا زمان پاسخ مورد انتظار چیست؟ |
| بازه محاسبه | ماه تقویمی، ۳۰ روز غلتان یا دوره دیگر؟ |
| استثناها | آیا نگهداری برنامهریزیشده و اختلال خارج از کنترل مستثناست؟ |
| منبع اندازهگیری | داده ارائهدهنده یا مانیتور بیرونی؟ |
| پیامد نقض | اعتبار سرویس، فرایند درخواست جبران یا توافق دیگر؟ |
نمونه محاسبه دسترسپذیری
فرض کنید توافق نمونه، دسترسپذیری ۹۹٫۹ درصد در ماه ۳۰ روزه باشد. کل ماه ۴۳۲۰۰ دقیقه است و ۰٫۱ درصد آن حدود ۴۳٫۲ دقیقه میشود. این عدد فقط مثال ریاضی است. تعریف دقیق قطعی، درخواستهای واجد شرایط و استثناهای قراردادی ممکن است نتیجه نهایی را تغییر دهند.
minutes = 30 * 24 * 60
allowed_minutes = minutes * (1 - 0.999)
print(round(allowed_minutes, 1)) # 43.2
SLA و SLO و SLI مترادف نیستند
اسالآی داده واقعی اندازهگیری است. اسالاو هدف داخلی یا عملیاتی تیم برای آن داده است. اسالای توافق رسمی است و ممکن است سطح تعهد آن کمتر از هدف داخلی باشد تا تیم پیش از نقض قرارداد امکان اصلاح مشکل را داشته باشد.
در پروژه واقعی
درصد آپتایم بدون تعریف روش اندازهگیری، مبهم است. تعهد قراردادی باید مشخص کند مانیتورینگ از کجا انجام میشود و گزارش اختلاف چگونه رسیدگی خواهد شد.
اصطلاحات فنی: اسالاو، اسالآی، قابلیت مشاهدهپذیری، دسترسپذیری بالا.