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 مترادف نیستند

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

در پروژه واقعی

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

اصطلاحات فنی: اس‌ال‌او، اس‌ال‌آی، قابلیت مشاهده‌پذیری، دسترس‌پذیری بالا.