تصبح Kubernetes جيدي مع سير العمل الفريد

الأمر كله يتعلق بالإنتاجية.

في السنوات القليلة الماضية هنا في FairFly ، كنا نعمل مع Kubernetes ، وهي أداة رائعة لتنسيق الحاويات تساعدنا في إدارة جميع خدماتنا وعمليات النشر.

Kubernetes هو نظام مفتوح المصدر لأتمتة نشر وتوسيع وإدارة التطبيقات الحاوية التي تم تصميمها في الأصل بواسطة Google (المصدر: ويكيبيديا)

في هذا المنشور ، أود أن أعرض كيف تمكنا من الحصول على إتقان وإدارة جميع أصول kubernetes الخاصة بنا بكفاءة باستخدام أداة رائعة تسمى تدفقات عمل Alfred والتي نستخدمها ونهتم بها على نطاق واسع هنا في FairFly. هذا ، وشغفنا بالإنتاجية والكفاءة ، قاد فريق البحث والتطوير لدينا إلى عصر أسرع وأكثر إنتاجية.

من هذه النقطة ، سأفترض أنك على دراية بالتكنولوجيا ولديك بعض الخبرة المتوسطة.

في العصور المظلمة ... كان هناك kubectl فقط

يمنحك Kubernetes أداة CLI لطيفة باسم: kubectl

Kubectl - واجهة سطر أوامر لتشغيل الأوامر ضد مجموعات Kubernetes (من صفحة نظرة عامة على kubernetes.io kubectl)

وجدنا أنفسنا نقوم بمهام يومية مختلفة باستخدام kubectl ، بطريقة غير منتجة ؛ يتضمن عرض السجلات ، أو "التنفيذ" ، أو مشاهدة عملية تهيئة النشر ، أو حذف الأصول ، أو مجرد زيارة لوحة معلومات Kubernetes.

علاوة على ذلك ، يحتوي kubectl على الإكمال التلقائي ولكن بطئه الفائق ، البحث ليس جيدًا بما فيه الكفاية ولا يوفر معلومات كافية عن السياق مثل عدد القرون النشطة للنشر؟ ما هو وضعه؟ إلخ

على سبيل المثال ، من أجل إحضار السجلات ، تتطلب سجلات أوامر kubectl كوسيطة. الآن يتعين علينا العثور على اسم pod الذي نريده إما عن طريق كتابة $ kubectl للحصول على pods أو باستخدام الإكمال التلقائي.

هذه العملية بطيئة جدًا لذا اضطررت إلى إيجاد طريقة لجعل هذه العملية أكثر فاعلية (هل ذكرت أننا نزوات إنتاجية؟) ، لذلك بدأت في استخدام الملصقات التي ساعدتني في العثور على مجموعة فرعية من الموارد بشكل أسرع قليلاً ، لكن حتى هذا لم يكن 'بسرعة كافية. حتى التصفح عبر سجل bash (CTRL + R) لم يلبي احتياجات الكفاءة.

ثم ضربني!

تقديم ألفريد سير العمل.

بالنسبة لأولئك الذين ليسوا على دراية بألفريد ، يا رفاق تفتقدون.
Alfred (البدائل التي يمكنك التحقق منها: Wox ، Hain) هي عداء مهام في Mac OS يعمل على توسيع ما يمكن أن يفعله Spotlight بشكل كبير ، لنكن أكثر إنتاجية من خلال الإجراءات المخصصة ، على سبيل المثال ، التطبيقات المفتوحة وتشغيل البرامج النصية واستخدام معظم ميزات نظام التشغيل كما تريد أن تكون أسرع من أي وقت مضى! والأهم من ذلك ، يتيح لك تصميم مهام سير العمل المخصصة بالكامل.

مثال بسيط لقائمة مهام العمل - www.alfredapp.com

Kubernetes ألفريد سير العمل

قررت بناء سير عمل مخصص لجعل السحر يحدث
(قم بتنزيله هنا) من خلال بناء مجموعة من الأوامر التي تلتف kubectl وتوفر إمكانات البحث والبحث التي فاتناها بشدة. تتضمن هذه الأوامر العمليات اليومية الأكثر شيوعًا مثل سجلات المخلفات ، والتنفيذ في حاويات وما إلى ذلك.

الخطوة 1 - الإعداد السريع

ksetenv - سيتم فتح قائمة ل
- عنوان URL الخاص بلوحة القيادة (يجب!)
- مسار kubectl المحلي الخاص بك
(الافتراضي: / البيرة / المحلية / بن / kubectl)

  • قم بتثبيت kubetail (must!) - نص Bash لتصفية سجلات Kubernetes من عدة قرون في نفس الوقت. ($ الشراب تثبيت kubetail)

الخطوة 2 - استخدام القوة

قائمة الأوامر المتاحة.kl (سجلات)

kl - الحصول على سجلات الموارد.
كانساس - الوصول إلى أي جراب قذيفة.
كيلوواط - مشاهدة ووصف الموارد.
kr - إزالة الأصول بسرعة. لا تقلق ، فلن يؤدي إلى إزالة أي شيء ، سيتعين عليك الاحتفاظ SHIFT + ⏎ للتنفيذ.
kre - إزالة القرون التي تم إخلاؤها.
kd - الذهاب إلى لوحة القيادة.
kds - استكشاف الأصول الخاصة بك في لوحة القيادة.

المكافأة: أيقونات مراقب DataDog

نحن نراقب أصولنا باستخدام DataDog ، حيث يستغرق جلب مقاييس مثل الذاكرة / وحدة المعالجة المركزية بعض الوقت ، تحتاج إلى الانتقال إلى DataDog → Metrics → Explorer ، في قسم Graph ، اختر جميع المقاييس التي ترغب في عرضها ، ثم اختر من مواردك Over Over. انه محبط.
لهذا الاستخدام المحدد ، قمت بإنشاء أمر kdm Alfred ، حيث تختار المورد الخاص بك من القائمة واحصل على ملخص فوري في DataDog.

KDM

استكشف مقاييس الأصول في DataDog.

خاتمة

كما رأيت على الأرجح ، نحن في Fairfly نوع من النزوات الإنتاجية! نحن نستخدم سير عمل Alfred المخصص لكل شيء إلى حد كبير ونسعى باستمرار لتحسين وجعل العمل الجماعي والبنية التحتية لدينا أفضل وأسرع. آمل أن تجد الوقت المناسب لاستخدام سير العمل هذا ، فقد أنشأنا مربع الأدوات هذا لك - إنه مجاني.
لا تتردد في الاتصال للحصول على أي تعليقات واقتراحات سير العمل وأكثر من ذلك على eldar@fairfly.com.