I’m weak at CI/CD

من بداية السنة الميلادية احتجت اسوي مجموعة تعديلات على بعض التطبيقات asp.net (core) وفي هذي الفترة القصيرة كانت عملية النشر للتعديلات مقرفة وتاخذ وقت, فكنت انقل ملفات واكواد عملية البناء build للسيرفر واعمل اعادة تشغيل للتطبيق 🤷🏻‍♂️

في عملية التطوير والتكامل المستمر CI/CD بمجرد عمل commit لاي تعديل لبرانش البرودكشن او release فالمفروض يكون عندك اتمتة بحيث تصير عملية الـ build بشكل تلقائي وفي حال نجاحها يتم نقل المخرجات بشكل تلقائي ايضاً CD لمكان عمل التطبيق بدون اي مجهود اضافي من المستخدم.

وانا ما فكرت من قبل اسوي اتمتة كاملة لهذي الفكرة, بعد الي صار معي في هالفتره قلت ابدأ اعمل حاجة بسيطة من خلال visual studio و دوكر بدون ادوات مخصصة لعمليات CI/CD لأني اصلا مشغل التطبيق على حاوية فبيكون اختيار جيد لي كبداية 🙄

Continue reading

من Google cloud إلى Digital Ocean وفتح المنافذ في راوتر 5G

قبل 3 سنوات نقلت هذه المدونة من استضافة مشتركة بسيطة إلى Google cloud platform -نختصرها gcp- , وكان الهدف الرئيس من النقل هو تجربة وتعلم خدمات السحابة بشكل فعلي وفي بيئة عمل production وكمان استفيد من مساحة تخزين اكبر و نقل بيانات اكبر وسعر اقل.

داخل السحابة الخيارات كثيرة لبناء المدونة منها التطبيقات او الحاويات (managed apps/contianers) وعملها بسيط وبتكون شبه جاهزة, لكن قررت ابني كل شي من الصفر باستخدام جهاز افتراضي VM من خلال Compute Engine في gcp.

اخترت اصغر خطة f1-micro وكانت تكلفتها الشهرية تقريباً 7 دولار مع 10GB وبدون احتساب نقل البيانات outbound traffic حيث تسعيرته متغيرة حسب الاستخدام.

ثبت قواعد البيانات والسيرفر والمدونة ونقلت كل البيانات, ومن ذاك الوقت حتى قبل اسبوعين كان كل شي على gcp يعمل بسلاسة, باستثناء مشكلة بسيطة وهي بعض ادوات قوقل الخاصة باقياس الاداء والمراقبة وبعض ملفات التحديثات تاخذ مساحة كبيرة بعد التحديثات واحتاج احذفها يدويا, حتى لو عملت ترقية للمساحة ارجع لنفس النتيجة بعد فترة, لكن كنت احلها بتنفيذ امر بسيط كل فترة وبس.

Continue reading

من .Net Framework إلى .Net Core:كيف قللت التكلفة بنسبة 98%

في 2016 اطلقت مايكروسوفت إطار عمل جديد مبني من الصفر بإسم .net core (دوت نيت كور) والهدف منه تحويل إطار العمل الاساسي .net framwork (دوت نيت فريمورك) لبيئة مفتوحة المصدر, متوافقة وداعمة لمختلف الانظمة, خفيفة وقابلة للنقل بسهولة.

خلال السنة الماضية تم اطلاق النسخة الاحدث من إطار العمل الجديد بإسم .net 5 (دوت نيت 5) والتخلص من كلمة core وسيكون اطار العمل هذا هو الاساس الذي يتم تطويره واضافة خصائص جديدة له, وسيتم ايقاف تطوير .net framwork عند الاصدار 4.8 مع دعم تحديثات الامان فقط.

هذا الفرق بين النسختين بشكل عام, لكن ايش علاقة تقليل التكاليف؟ نذكر بعض تفاصيل النسختين بشكل سريع 💨🏃🏻‍♂️

Continue reading

سيرفر جديد ونظام جديد بس هذي المرة Custom Build

👀
في احد هنا

سنتين ونص من اخر تدوينه وكانت خاصة بأيش؟ خاصة بالسنولوجي سيرفر و الي خدمني لأكثر من 5 سنوات ومازال، كان الوحيد والفريد من نوعه في حياتي وكان اساسي في استخدامات كثيرة والان احيل للتقاعد كسيرفر اساسي وصار الملاذ الاخير وقت المشاكل offline-onsite-last-resort-backup وحل مكانه R1Land والي بأتكلم عنه بعدين.

السيرفر القديم عبارة عن صندوق صغير يشيل 4 هاردسكات وغير قابل للترقية (باستثناء الرام) او اضافة كروت توسعه مع معالج entry-level بأربع انويه باستهلاك طاقة كلي 30-40 واط! بصراحة كان مدخل ممتاز لعالم الـ NAS ونظام تشغيل السنولوجي DSM كان خادمني بشكل كامل ومميز (كنت اظن) رغم السعر المرتفع بالنسبة للمواصفات, في موديلات بسعر معقول لكن حدها تكون nas فقط لاغير.

شغلت السيرفر القديم بثلاث هاردسكات فقط وكان في درج مشبوك مباشرة في الكهرباء وعلى كثر انقطاع الكهرباء ظل صامد ومعروف ان الهاردسكات حساسة جداً جداً لانقطاع الكهرباء المفاجيء, بعد 3 سنوات ونص تقريبا فللت الهاردسكات الثلاث وفي نفس الوقت طلع لي اول bad sector ⚡️ والي كان خلفه العشرات منهم , اضفت الهاردسك الرابع وكانت هذي لحظة الحقيقة تم اضافة الهاردسك وبدأت عملية إعادة بناء المصفوفة لأربع هاردسكات, تعتبر هذي العملية قوية/خطيرة على الهاردسكات وتشغلة بكامل طاقته وتأثر على الحياة الافتراضية له لكنها ضرورية حتى تعمل توسعة بالهاردسك الجديد ومع اخذ البادسكتورز بالحسبان………. TLDR تم الامر بنجاح, تم بدون مشاكل تقريباً.

في نص 2019 جاتني هذي الرسالة والمشكلة مو في قرب انتهاء المساحة المشكلة اني ماعاد اقدر اوسع نهائياً (REMEMBER! only 4 HDD) و من وقتها بديت التفكير في التوسعة, الخدمات الجديدة الي ممكن استخدمها و الأهم من كل ذا كيف اتجنب حالة مثل كذا في المستقبل.

Continue reading

تثبيت rtorrent على سيرفر synology باستتخدام docker

قبل فترة شرحت طريقة تركيب برنامج rtorrent وواجهة rutorrent بشكل يدوي وبطريقة كانت نوعاً ما متعبة وتحتاج فهم لسطر الاوامر خصوصاً عند التعطل احيانا مع التحديثات, بالرغم من وجود ملف تثبيت مباشر من خلال الاستور مقدم من مستودعات Synocommunity إلا انني واجهت ايضاً بعض المشاكل والتي قد تختلف من مستخدم لآخر ولصعوبة توضيح حلها بطريقة واضحة لذلك لم اتطرق لها.

تكلمت كثير عن حاويات لينكس هنا و هنا وانها تقنية رائعة في مجال dev-ops او حتى للمستخدم العادي, و من قبل سنة تقريباً بدأت استخدام docker بشكل مباشر على اي جهاز وفي اي مشروع اعمل عليه حتى لو مجرد تشغيل قاعدة بيانات لتفادي التثبيت وعوار الراس :)

دوكر منصة سطر اوامر بالكامل ولكن شركة synology وفرت GUI لعملائها في نظام تشغيلها وصار استخدامه سهل لاي شخص, الان بشرح طريقة انشاء حاوية تحتوي على برنامج التورنت الشهير rtorrent كذلك يحتوي على واجهة ويب rutorrent و معظم الاضافات المهمة مثل اضافة auto-dl وبطريقة بسيطة وبدون اي اوامر في الطرفية.

Continue reading

أول تجربة شراء من امازون: سيرفر Synology

من زمان كان ودي اجرب اطلب من امازون ماكان في شي يستاهل صراحة بس ودي اجرب وكل مرة اتراجع لان الي بطلبه اشياء خفيفة وتكلفة الشحن و الاشتراك بشركة شحن اغلى من السلعة نفسها  (_2 , وقبل فترة جاء شحن امازون الدولي وتعرفت عليه وقريت تجارب اعضاء واقتنعت فيه و جاء اليوم الي فكرت اخذ فيه سيرفر NAS منزلي من شركة Synology وتوكلت على الله وطلبت من امازن بشحن مباشر بدون صندوق بريد ولا اي شي وتم الامر بسلاسه ولله الحمد.

الجهاز عبارة عن سيرفر تخزين منزلي مرتبط بالشبكة Network attached storage فكرت اخذه لعدة اسباب اولها اتخلص من قروشة الهاردسكات الخارجية الي رابطها في لوحة التبريد وفي اللابتوب و اسوي ستريم للملفات في البيت لاسلكي من اي جهاز, وان شاء الله استفيد منه في تجارب الشبكات والسيرفرات.

Synology DS415Plus

هذا موديل الجهاز الي شريته بالاضافة انه جهاز NAS متكامل الا ان شركة سنولجي مسوية شغل جدا حلو ومميزات الجهاز ماتنحصر وهنا صفحة الجهاز وكل معلوماته.

 

وفي ميزة مهمة بما ان النظام مبني على لينُكس عنده كمية “ويب ابلكيشن” كبيرة شي جبار وسورسات كثيرة تقدر تنزل منها تطبيقات رسمية وغير رسمية وطبعاً ما انسى حبيبنا التورنت نزلت عليه rTorrent وثبتت واجهة RuTorrent تعبتني كثير لكن سويتة في النهاية وشغال معاي فل الفل وراح اعمل شرح لتثبيته على السنولجي ان شاء الله لان كل الشروحات الموجودة ناقصة وكم شخص طلب طريقة تركيبة عليه. تشويقة سريعة (_34

rutorrent

حل مشكلة فيروس تويتر والرسائل المزعجة

فيروسات توتير والرسائل المزعجة

عودة بعد غياب (_8  , انتشر في الآونة الأخيرة مشكلة لدى مستخدمي تويتر اُطلق عليها [فيروس] وهي رسائل [Direct messages] مزعجة تصل للمستخدم وتُرسل من حسابه دون علمه, كذلك في بعض الأحيان تعمل إلغاء متابعة من الحساب ومتابعة حسابات أخرى.

كيف تعمل ؟

عندما نريد استخدام تويتر في الهواتف نستخدم بعض التطبيقات مثل [Tweetbot] او تطبيق [Tweetdeck] أو  توصيل حساب تويتر بالفيس بوك و غيرها تأتينا رسالة للموافقة على التحكم في حسابك من خلال التطبيق مثال, تكون المشكلة عند استخدام تطبيق غير رسمي يتصل بحسابك ويتحكم به بإلغاء المتابعة أو إرسال رسائل مزعجة لمتابعيك (_2 , مثل هذه الرسالة المنتشرة حالياً [get free 100 follower].تابع الحل داخل التدوينة

Continue reading