این جمله را زیاد میشنویم: «سرورمان RAID دارد، پس دادهها امن است.» این برداشت، یکی از گرانترین سوءتفاهمهای حوزهٔ زیرساخت است — چون تا روزی که به آن نیاز پیدا کنید، هیچ نشانهای از اشتباه بودنش نمیبینید.
خلاصه: RAID در برابر خرابی سختافزار دیسک محافظت میکند. در برابر پاکشدن، رمزگذاریشدن یا خرابشدن خودِ داده، هیچ کاری نمیکند — و اتفاقاً همینها شایعترند.
RAID چه چیزی را حل میکند
RAID داده را روی چند دیسک پخش میکند تا اگر یکی (یا در بعضی پیکربندیها دوتا) خراب شد، سرویس بدون توقف ادامه پیدا کند. این ارزش واقعی دارد: دیسکها خراب میشوند، و بدون RAID هر خرابی یعنی قطعی.
ولی RAID یک آینه است. هر کاری با داده بکنید، بیدرنگ روی همهٔ دیسکها اعمال میشود.
آنچه RAID حل نمیکند
- حذف تصادفی. کاربری پوشهای را پاک میکند. RAID با وفاداری کامل، آن را از روی همهٔ دیسکها پاک میکند.
- باجافزار. فایلها رمزگذاری میشوند. RAID نسخهٔ رمزگذاریشده را روی همهٔ دیسکها نگه میدارد.
- خرابی منطقی داده. پایگاه دادهای که بهخاطر یک باگ ناسازگار شده، روی RAID هم به همان اندازه ناسازگار است.
- خرابی کنترلر. کنترلر RAID خودش یک نقطهٔ شکست است و خرابیاش میتواند کل آرایه را ناخوانا کند.
- حادثهٔ فیزیکی. آتش، سرقت یا آبگرفتگی، همهٔ دیسکهای داخل یک سرور را با هم میبرد.
قاعدهٔ ۳-۲-۱
قاعدهای قدیمی که هنوز بهترین نقطهٔ شروع است:
- ۳ نسخه از داده داشته باشید (نسخهٔ اصلی و دو پشتیبان)
- روی ۲ رسانهٔ متفاوت
- که ۱ نسخهاش خارج از محل باشد
امروز معمولاً یک شرط چهارم هم اضافه میشود: یک نسخه باید آفلاین یا تغییرناپذیر باشد. باجافزارهای امروزی اول دنبال سرور پشتیبان میگردند؛ پشتیبانی که همیشه به شبکه وصل است، به همان اندازهٔ دادهی اصلی در معرض است.
پشتیبانی که آزمون نشده، پشتیبان نیست
این مهمترین بخش است و بیشتر از همه نادیده گرفته میشود. سازمانهایی دیدهایم که ماهها پشتیبانگیری موفق در گزارشها داشتهاند و روز حادثه فهمیدهاند نسخهها قابل بازیابی نیستند — بهخاطر پیکربندی اشتباه، فضای پر، یا فایلی که از دامنهٔ پشتیبانگیری جا افتاده بود.
آزمون بازیابی باید دورهای و واقعی باشد: یک فایل، یک پایگاه داده، و گاهی کل یک ماشین را در محیط جدا بازیابی کنید و ببینید بالا میآید. تا وقتی این کار را نکردهاید، پشتیبانگیریتان یک فرض است، نه یک واقعیت.
دو عددی که باید بدانید
پیش از انتخاب هر راهکاری، این دو را با کسبوکار مشخص کنید:
- RPO — چقدر داده میتوانید از دست بدهید؟ اگر پاسخ «یک ساعت» است، پشتیبانگیری شبانه کافی نیست.
- RTO — چقدر میتوانید سرویس نداشته باشید؟ این عدد تعیین میکند نسخهٔ پشتیبان کجا و به چه شکل نگهداری شود.
بیشتر تصمیمهای اشتباه در این حوزه از اینجا میآید که این دو عدد هرگز پرسیده نشدهاند و راهکار بر اساس بودجه انتخاب شده، نه بر اساس نیاز.