طوال سنوات أبقينا على AWS Marketplace عدة صور AMI لـ Zabbix في الوقت نفسه: 4.2 و4.4 و6.0 و6.4 و7.0. كانت الفكرة بسيطة: لدى بعض الفرق تثبيتات لا تستطيع، بسبب التكاملات أو القوالب أو مجرد الحذر، الانتقال إلى إصدار رئيسي جديد، وأردنا أن تتوفر لها صورة مُصانة من الإصدار الذي تستخدمه.
لم يعد ذلك ممكنًا. من ذلك الكتالوج كله لم يبقَ على Marketplace سوى صورة Zabbix 7.0 LTS الخاصة بنا، وليس بقرار منا: فـ AWS Marketplace لا يقبل البقية. وإليك السبب.
القاعدة: لا شيء انتهى عمره الافتراضي
يراجع AWS Marketplace كل إصدار من صورة AMI قبل نشره. فإلى جانب التحقق من أن الصورة تُقلع وتستوفي المتطلبات التقنية، يفحصها بحثًا عن الثغرات والبرمجيات غير المدعومة. والسياسة واضحة: لا تُقبل المنتجات التي تستخدم نظام تشغيل أو برمجيات بلغت نهاية عمرها الافتراضي (end of life، EOL).
نصفا الجملة مهمان. لا يكفي أن يكون النظام الأساسي مدعومًا؛ فالبرمجيات داخل الصورة تُحتسب أيضًا. والمعيار ليس «هل طُبّقت الترقيعات» بل «هل ما زال مطوّروه يصونونه».
كيف تُطبَّق
عمليًا يأتي الفحص من طريقين:
- عند نشر إصدار جديد. يرصد فحص الصورة النظام أو البرمجيات المنتهية الدعم كمشكلة، فيُرفض الإصدار. لا يهم مدى سلامة الباقي: إعادة البناء لا تُزيل المشكلة.
- على منتج منشور بالفعل. يمكن لـ AWS أن تنقل المنتج إلى حالة Restricted: فلا يُعرض بعد ذلك على المشترين الجدد ولا يقبل إصدارات جديدة. يحتفظ المشتركون الحاليون بالوصول إلى نسخهم، لكن المنتج يُجمَّد.
الأمران مترابطان. فالمنتج المقيَّد لا يمكنه تلقي إصدار يُخرجه من تلك الحالة، وأي إصدار يُبنى على الأساس نفسه سيصطدم بالفحص نفسه.
جدولان زمنيان يجب أن يتطابقا
تعتمد صورة Zabbix على دورتي حياة في آن واحد، ويجب أن تكون كلتاهما ضمن فترة الدعم:
- دورة Zabbix. إصدارات standard (4.2 و4.4 و6.4…) لا تُصان إلا بضعة أشهر حتى صدور التالي. أما إصدارات LTS (6.0 و7.0…) فلها سنوات من الدعم، لكنها تنتهي أيضًا.
- دورة Ubuntu. لا ينشر كل إصدار من Zabbix حزمًا إلا لإصدارات Ubuntu التي كانت موجودة أثناء تطويره. الإصدار القديم من Zabbix لا يصل أبدًا إلى إصدارات Ubuntu الجديدة، فيبقى مرتبطًا بنظام سيخرج من الدعم عاجلًا أو آجلًا.
بهذين الجدولين، هذا وضع كل صورة من صورنا القديمة:
| AMI | Zabbix | Ubuntu | سبب الرفض |
|---|---|---|---|
| Zabbix 4.2 | standard، بلا صيانة منذ 2019 | 18.04، بلا دعم قياسي منذ 2023 | Zabbix والنظام منتهيا الدعم. لا توجد حزم 4.2 لأي Ubuntu بعد 18.04 |
| Zabbix 4.4 | standard، بلا صيانة | 18.04، بلا دعم قياسي منذ 2023 | Zabbix والنظام منتهيا الدعم. يصل 4.4 على الأكثر إلى Ubuntu 20.04، وهو بلا دعم أيضًا |
| Zabbix 6.0 | LTS | 20.04، بلا دعم قياسي منذ 2025 | النظام الأساسي منتهي الدعم |
| Zabbix 6.4 | standard، بلا صيانة | 22.04 | إصدار Zabbix نفسه منتهي الدعم |
الخلاصة غير مريحة لكنها واضحة: الخط الوحيد الذي يستوفي السياسة بصورة مستدامة هو أحدث إصدار LTS من Zabbix على إصدار Ubuntu LTS مدعوم. واليوم هذا هو Zabbix 7.0 على Ubuntu 24.04. والإبقاء على خطوط أكثر في Marketplace يعني صيانة منتجات ستسحبها AWS بمجرد انتهاء الجدول الزمني التالي.
الحالة التي كشفت الأمر: Zabbix 4.2
انتبهنا لذلك أثناء تحضير آخر إصدار من صورة Zabbix 4.2. أعاد فحص AWS ثلاث مشكلات: استخدام برمجيات منتهية العمر (Ubuntu 18.04) وثغرتين، CVE-2023-4863 في libwebp وCVE-2023-44487 في nghttp2.
ماذا لو طبّقنا الترقيعات؟
هذا أول سؤال، والجواب أنه لا يفيد. ترقيعات هاتين الثغرتين لـ Ubuntu 18.04 موجودة فقط في ESM، أي في Ubuntu Pro. وحتى لو طبّقناها لبقيت المشكلة الرئيسية: فالدعم الممتد المدفوع لا يجعل إصدارًا خرج من الدعم القياسي إصدارًا مدعومًا.
ماذا لو غيّرنا النظام؟
ولا هذا. المستودع الرسمي لـ Zabbix 4.2 لا ينشر حزمًا إلا حتى Ubuntu 18.04. جرّبنا أيضًا طريق Debian فانتهى إلى النقطة نفسها: آخر Debian فيه حزم 4.2 خارج الدعم، وعلى الإصدارات الحالية لا تُثبَّت الحزم ولا يُترجَم الكود دون إعادة كتابة نصف الواجهة. وحتى لو نجحنا، سيبقى Zabbix 4.2، وهو برمجية منتهية الدعم في حد ذاته.
المنطق نفسه، مع بعض الفروق، ينطبق على بقية الجدول. لهذا أزلنا صفحة Zabbix 4.2 ولا نُبقي على Marketplace إلا الإصدار 7.0.
ماذا يعني هذا لك
- إذا كانت لديك بالفعل نسخة بإصدار قديم، فستواصل العمل تمامًا كما كانت. لن يُطفأ شيء. لكن لن تصدر نسخ جديدة على Marketplace.
- إذا كان بإمكانك الترقية، فالمسار الموصى به هو صورة Zabbix 7.0 LTS الخاصة بنا على Ubuntu 24.04. تجد في صفحتها دليل الانتقال لنقل قاعدة البيانات دون فقدان السجل التاريخي.
- إذا كنت تحتاج إلى البقاء على إصدار أقدم، يمكننا إعداد إصدار مخصص لحساب AWS الخاص بك خارج Marketplace، مع التحجيم التلقائي نفسه وإشعارات SNS نفسها. راسل فريق الدعم وسندرس الأمر.
درس يتجاوز Zabbix
ما حدث لكتالوج Zabbix لدينا سيحدث عاجلًا أو آجلًا لأي صورة تعتمد على إصدار بعينه. لهذا تُثبّت صورنا كل مكوّن من المستودع الرسمي لمشروعه وتتبع خطوطًا مدعومة، ولهذا نراجع الجدول الزمني لكل منتج قبل أن تفعل AWS: فحين يقترب النظام أو البرمجيات من نهاية عمرها، يجب أن يكون الانتقال قد تم قبل أن يكشفه الفحص.



