چالش Kubernetes (K8s) پیچیدگی آن همراه با فقدان مهارتهای داخلی برای تهیه و عیبیابی خوشههای Kubernetes در فضای ابری یا داخلی است. در حالی که پذیرش K8 به طور مداوم در حال رشد است، بسیاری از توسعه دهندگان و تیم های عملیاتی هنوز نسبتاً جدید در این فناوری هستند و باید اصطلاحات، گردش کار، ابزارها و موارد جدید را یاد بگیرند.
قطعات مجزای K8s به سطح وسیعی از تخصص نیاز دارند، حتی فقط در فرآیند راه اندازی. در نظر بگیرید که چرخش یک کلاستر K8s به دانش و پیکربندی چندین مؤلفه از پادها تا سرویسها نیاز دارد، به غیر از منابعی مانند etcd، سرورهای API، kubelet و kube-proxy.
سپس برنامهریزی، مقیاسبندی و شبکهسازی برای مبارزه وجود دارد. یک گام اشتباه می تواند به سرعت به مشکلات بی شماری در مقیاس پذیری، قابلیت اطمینان و حتی امنیت تبدیل شود.
علاوه بر این، خود اکوسیستم دائماً به سرعت در حال رشد و تکامل است. ابزارها و افزونه ها می توانند برای مبتدیان بسیار زیاد باشند و به سختی می توان با آنها همراه شد. آموزش و آموزش رسمی در اطراف آن لزوماً بخشی از پیشینه هر توسعه دهنده، از نظر آکادمیک یا حرفه ای نیست.
و ما نمی توانیم فراموش کنیم که این فناوری، با قطعات متحرک زیاد و فعل و انفعالات پیچیده، عیب یابی در هنگام بروز خرابی ها می تواند دشوار و زمان بر باشد. تشخیص علل خرابی ها مستلزم دانش فنی و تخصص عمیقی است که اغلب در درون چند مهندس با تجربه وجود دارد.
بیایید عمیقتر غواصی کنیم و راههای جدید و خلاقانهای را کشف کنیم که میتواند به غلبه بر مشکل آشکار شکاف مهارتها کمک کند.
تیم خود را با کمک ChatGPT ارتقا دهید
یادگیری و استفاده موثر Kubernetes چالش برانگیز است زیرا هیچ رویکردی برای همه افراد وجود ندارد. K8s بسیار قابل تنظیم است و بسته به نیازهای خاص برنامه یا زیرساخت شما، می تواند به روش های مختلف پیکربندی شود. اغلب دشوار است که آنچه را که از مستندات آموختهاید (و تعداد زیادی وجود دارد) و آموزش را در یک محیط موجود به کار ببرید، زیرا تیمها فاقد درک زمینهای و دید معماری خود هستند.
معماری فعلی چگونه است؟ چه پادهایی به یک فضای نام خاص گره خورده اند؟ سلامت گره ها چگونه است؟ پرسیدن سؤالات اساسی از محیط ما نیاز به سوئیچ کردن زمینه بین کنسول AWS، خط فرمان kubectl، فایل های پیکربندی Terraform و ابزارهای نظارت دارد.
اگر بتوانیم این سوالات را از ChatGPT بپرسیم چه می شود؟
بیایید به مثالی از استفاده از PromptOps ارائه شده توسط ChatGPT برای درک همه استقرارهای درون یک خوشه نگاه کنیم. PromptOps یک ابزار مشاوره رایگان Kubernetes ارائه می دهد که به کاربران امکان می دهد سؤالات خود را بپرسند و کمک فوری در قالب اسکریپت های BASH، مراجع اسناد و سایر منابع مفید دریافت کنند.
با ارائه داده های تکه تکه شده PromptOps از زیرساخت های خود از منابع مختلف، مانند Confluence، Notion، فایل های پیکربندی Terraform و موارد دیگر، انتظار داریم PromptOps بتواند به سرعت تمام اطلاعات را جمع آوری کند و به تجسم معماری کمک کند. به جای اجرای دستی دستورات kubectl برای بررسی استقرارها، از PromptOps در یک چت درخواست کردیم تا توضیح دهیم کدام استقرار در خوشه ما وجود دارد.
در اینجا پاسخ PromptOps است:
PromptOps > پیشنهاد می کنم این اسکریپت را برای پاسخ به سوال خود اجرا کنید.
PromptOps یک اسکریپت برای اجرا همراه با ارجاع به صفحه مفهومی که حاوی اطلاعاتی در مورد خوشه است، ارائه کرد.
پس از اجرای اسکریپت، PromptOps خروجی استقرارهای درون خوشه را ارائه کرد.
PromptOps همچنین یک نمودار بصری از همه استقرارها در خوشه ارائه کرد تا یادگیری را بسیار آسانتر کند.
پاسخ PromptOps مدیریت زیرساخت Kubernetes را ساده میکند و به همه اعضای تیم DevOps این امکان را میدهد تا از معماری کنونی سرعت بگیرند و با تغییرات هماهنگی کنند.
با بررسی خودکار حوادث در زمان صرفه جویی کنید
بیایید به عیبیابی مشکلات تولید نگاه کنیم و ببینیم که چگونه PromptOps میتواند به شناسایی علت اصلی خرابی در Kubernetes کمک کند. سنجهها و گزارشهای Kubernetes بینش مهمی را در همه سطوح از خوشه تا ظرف ارائه میدهند. آنها اطلاعاتی در مورد استفاده از منابع، وضعیت غلاف و گره، معیارهای مقیاس خودکار کلاستر، خطاهای شبکه، زمان اجرا کانتینر و موارد دیگر ارائه می دهند.
اما مشکل همه این معیارها این است که فوراً مفید نیستند. جریان گزارش یا نمودار متریک زمینه یا جهت لازم را ارائه نمی کند. ابزارهایی برای کمک وجود دارد، اما آنها اغلب کارها را پیچیدهتر میکنند، و نیاز به زمینهای در کل پشته فناوری دارند تا ببینند واقعاً چه اتفاقی افتاده یا چه کسی در هنگام بروز مشکلات چه کاری انجام داده است.
در CtrlStack، ما از PromptOps برای تجزیه و تحلیل نمودارهای علی، رویدادهای Kubernetes، معیارها و گزارشها استفاده کردهایم تا چالشهای عیبیابی دستی را کاهش دهیم. هدف این است که به تیمهای DevOps کمک کنیم تا با استفاده از PromptOps برای ایجاد خلاصه تجزیه و تحلیل ریشهای که علت را توضیح میدهد، به سرعت مشکلات Kubernetes را درک کنند. در این مثال، یک نمودار علّی از داشبورد تجزیه و تحلیل علت اصلی در CtrlStack برای عیبیابی و حل آن به شرح زیر به PromptOps وارد میشود.
در اینجا نمونهای از نمودار گاه به گاه داشبورد تحلیل علت ریشهای آورده شده است.
با این کار، از PromptOps خواستیم تا نمودار را توضیح دهد. در زیر پاسخ PromptOps آمده است:
PromptOps > در اینجا توضیح نمودار آمده است:
- این نمودار تجسمی از علت اصلی یک خطا در یک غلاف Kubernetes است. این خطا ناشی از تغییرات در تصویر غلاف است که مشابه تغییرات در Kubernetes است
pod_error
متریک خطا نیز مشابه نقاط عطف یافت شده در استkubernetes_uptime
وkubernetes_pod_mem_usage
متریک ها و تغییرات توپولوژی در node1.
- نمودار علت اصلی a را نشان می دهد
kubernetes_pod_error
تغییر دادن. سه بینش وجود دارد. اولین مورد این است که تصویر تغییر کرده است. دوم این است که نقاط عطف در معیارها وجود داردkubernetes_uptime
وkubernetes_pod_mem_usage
. مورد سوم این است که یک تغییر توپولوژی برای node1 وجود دارد.
پاسخ PromptOps همبستگی مفیدی از اطلاعات را در بین معیارهای استفاده از زمان و حافظه و همچنین تغییرات توپولوژی مرتبط ارائه میدهد. این بینش شامل بررسی رویدادهای تغییر Kubernetes، معیارها، استفاده از منابع و تغییرات توپولوژی بود. بر اساس این بررسی خودکار حادثه، توسعه دهندگان و اپراتورها باید زمینه کافی برای تعیین سریع مراحل بعدی برای رفع مشکل داشته باشند.
ترکیب ChatGPT با هوش تغییر برای از بین بردن شکاف مهارت ها
بر اساس مثالهای ارائهشده، واضح است که ChatGPT میتواند کمکهای ارزشمندی برای رفع شکاف مهارتهای Kubernetes ارائه دهد. ChatGPT بینش سریع و توضیحات واضحی را برای تیم های DevOps برای عیب یابی و رفع مشکلات تولید ارائه می دهد. این به اپراتورهای جوان و همچنین توسعه دهندگانی که تازه وارد Kubernetes شده اند، قدرت می دهد تا فناوری را یاد بگیرند و مسائل رایج را به طور مستقل حل کنند.
در حالی که پاسخهای ChatGPT میتواند درک سریع مشکل را ارائه دهد، به اطلاعات زمینهای خاص برای مسائل مختلف استقرار Kubernetes نیاز دارد. اینجاست که هوش تغییر وارد میشود. پلتفرمهای هوش تغییر نمودارهای علی را ارائه میکنند که ظرفیت منابع، تغییرات زیرساخت، تغییرات پیکربندی، نمودارهای تاریخچه معیارها و جدول زمانی رویداد را برای بهینهسازی مسیر تحلیل علت ریشهای به هم متصل میکنند.
یک رویکرد مبتنی بر ChatGPT برای یادگیری Kubernetes این پتانسیل را دارد که به طور قابل توجهی بهرهوری DevOps را بهبود بخشد و در عین حال اضافه بار شناختی را حذف کند. با ترکیب ChatGPT با هوش تغییر، تیم ها می توانند مهارت های Kubernetes خود را ارتقا دهند و قابلیت مشاهده بهتری به دست آورند.