اگه کلاسترت شلوغ شده، وقتشه Kor رو بندازی وسط
پاکسازی خودکار منابع اضافی در Kubernetes با Kor
اگه مدتیه با کوبرنتیز کارمیکنی، احتمالاً کلی resource بیمصرف ته کلاسترت جا خوش کردن. از ConfigMapهای قدیمی گرفته تا PVCهایی که هیچ پادی دیگه ازشون استفاده نمیکنه. این چیزا کمکم کلاستر رو شلوغ و کند میکنن و حتی باعث هزینههای اضافه هم میشن.
اینجاست که Kor به دادت میرسه:
Kor یه ابزار متنبازه که کمک میکنه منابع (Orphaned Resources) رو توی کلاستر پیدا کنی و اگه خواستی حذفشون کنی.
از ConfigMap و Secret گرفته تا Deployment، Service، PVC، RoleBinding و حتی NetworkPolicy رو چک میکنه و هرچی بلااستفادهست، برات لیست میکنه.
نصب از طریق کامند زیر :
و برای اجرا فقط کافیه اینو بزنی:
Kor خروجی مرتب و واضحی بهت میده، مثلاً میگه کدوم Secret هیچ پادی ازش استفاده نمیکنه یا کدوم Service endpoint نداره.
میتونی خروجی رو توی فرمتهای مختلف مثل table، json یا yaml بگیری تا راحتتر توی CI/CD یا مانیتورینگ ازش استفاده کنی.
توصیه:
میتونی Kor رو بهصورت CronJob ران کنی تا خودش بهصورت خودکار هر هفته یه گزارش پاکسازی از کلاستر برات بیاره.
پاکسازی خودکار منابع اضافی در Kubernetes با Kor
اگه مدتیه با کوبرنتیز کارمیکنی، احتمالاً کلی resource بیمصرف ته کلاسترت جا خوش کردن. از ConfigMapهای قدیمی گرفته تا PVCهایی که هیچ پادی دیگه ازشون استفاده نمیکنه. این چیزا کمکم کلاستر رو شلوغ و کند میکنن و حتی باعث هزینههای اضافه هم میشن.
اینجاست که Kor به دادت میرسه:
github.com/yonahd/kor
Kor یه ابزار متنبازه که کمک میکنه منابع (Orphaned Resources) رو توی کلاستر پیدا کنی و اگه خواستی حذفشون کنی.
از ConfigMap و Secret گرفته تا Deployment، Service، PVC، RoleBinding و حتی NetworkPolicy رو چک میکنه و هرچی بلااستفادهست، برات لیست میکنه.
نصب از طریق کامند زیر :
go install github.com/yonahd/kor@latest
و برای اجرا فقط کافیه اینو بزنی:
kor --namespace default
Kor خروجی مرتب و واضحی بهت میده، مثلاً میگه کدوم Secret هیچ پادی ازش استفاده نمیکنه یا کدوم Service endpoint نداره.
میتونی خروجی رو توی فرمتهای مختلف مثل table، json یا yaml بگیری تا راحتتر توی CI/CD یا مانیتورینگ ازش استفاده کنی.
توصیه:
میتونی Kor رو بهصورت CronJob ران کنی تا خودش بهصورت خودکار هر هفته یه گزارش پاکسازی از کلاستر برات بیاره.
فقط حواست باشه: قبل از حذف منابع، حتماً خروجی رو چک کن. بعضی resourceها ممکنه ظاهراً بیمصرف باشن ولی درواقع یه اپ دیگه بهش وابستهست. بهتره اول Kor رو توی محیط تست ران کنی تا مطمئن شی چیزی رو اشتباهی پاک نمیکنی.
#DevOps
#kubernetes
#byteforge
@byteforge_chan 🛸
GitHub
GitHub - yonahd/kor: A Golang Tool to discover unused Kubernetes Resources
A Golang Tool to discover unused Kubernetes Resources - GitHub - yonahd/kor: A Golang Tool to discover unused Kubernetes Resources
👌3
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
🔶 جادی با 25 سال سابقه کد زدن و فعالیت توی کامیونیتی برنامه نویسی فارسی، دیروز گفت به عنوان جونیور (تازه کار) استخدام شده است.
@TheRaymondDev
@TheRaymondDev
🔥15😁3🥰1
یک pipeline واحد برای همه چیز در Kubernetes!
Fatih Koç توی این پست نشون میده چطور با OpenTelemetry میتونیم لاگ، متریک و تراس رو در یک مسیر جمع کنیم و از alert تا root cause فقط چند ثانیه فاصله بگیریم.
اگر با observability و incident response سر و کار داری، این مقاله رو از دست نده 👇
https://fatihkoc.net/posts/opentelemetry-kubernetes-pipeline
Fatih Koç توی این پست نشون میده چطور با OpenTelemetry میتونیم لاگ، متریک و تراس رو در یک مسیر جمع کنیم و از alert تا root cause فقط چند ثانیه فاصله بگیریم.
اگر با observability و incident response سر و کار داری، این مقاله رو از دست نده 👇
🔗 Building a Unified OpenTelemetry Pipeline in Kubernetes
#DevOps
#kubernetes
#byteforge
@byteforge_chan 🛸
https://fatihkoc.net/posts/opentelemetry-kubernetes-pipeline
Fatih Koç
Building a Unified OpenTelemetry Pipeline in Kubernetes
Deploy OpenTelemetry Collector in Kubernetes to unify metrics, logs, and traces with correlation, smart sampling, and insights for faster incident resolution.
❤2👏1
میخوام ی سری رشته مطالب اموزشی جدید بذارم که محتوای کوتاهی از نظر تعداد کاراکتر دارند ولی حق مطلب رو ادا میکنند .
البته مطالب اصلی که کاملتر هستند همچنان بی تغیر باقی میمانند و ادامه دار هستند .
البته مطالب اصلی که کاملتر هستند همچنان بی تغیر باقی میمانند و ادامه دار هستند .
❤🔥5😐2👍1
Byteforge / بایــت فورج 🛸
میخوام ی سری رشته مطالب اموزشی جدید بذارم که محتوای کوتاهی از نظر تعداد کاراکتر دارند ولی حق مطلب رو ادا میکنند . البته مطالب اصلی که کاملتر هستند همچنان بی تغیر باقی میمانند و ادامه دار هستند .
کلاستر چیست؟
کلاستر cluster یعنی مجموعهای از چند سرور که بهصورت هماهنگ به هم متصلان و مثل یه سیستم یکپارچه کار میکنن
هدف از ساخت کلاستر اینه که بارِ پردازش بین سرورها تقسیم بشه تا سرعت و کارایی بالا بره، و اگه یکی از سرورها از کار افتاد، بقیه بدون توقف کار رو ادامه بدن
بهخلاصه، کلاستر باعث میشه سیستم پایدارتر، سریعتر و قابلاعتمادتر بشه.
#DevOps
#cluster
#byteforge
@byteforge_chan 🛸
❤6👌2😐1
کدوم منبع در کوبرنتیز تضمین میکنه همیشه تعداد مشخصی از Podها در حال اجرا باشن؟
Anonymous Quiz
24%
Service
35%
ConfigMap
33%
Deployment
8%
Secret
👌2
چطور یه زبان برنامه نویسی رو برنامه نویسی کردن تا یه برنامه رو برنامه نویسی کنه که بتونه برنامه هارو برنامه نویسی کنه ؟
#byteforge
@byteforge_chan 🛸
😁8👍2
در سیستمهای توزیعشده، Latency معمولاً به چه عاملی اشاره دارد؟
Anonymous Quiz
8%
زمان موردنیاز برای انتقال کامل یک حجم مشخص از داده بین دو سرویس
57%
تاخیر بین آغاز ارسال درخواست از سرویس مبدأ تا دریافت اولین بایت پاسخ از سرویس مقصد
22%
تفاوت زمانی بین ارسال و تأیید نهایی یک بسته در سطح TCP handshake
12%
میانگین زمانی که CPU برای پردازش هر درخواست صرف میکند
👏2
پایش ترافیک بینزون در Kubernetes با kubezonnet
اگه خوشههات روی چند تا zone مختلف اجرا میشن، احتمالاً بخشی از هزینه یا کندی شبکهت از ترافیکی میاد که بین این zoneها رد و بدل میشه ترافیکی که معمولاً کسی حواسش بهش نیست.
اینجا kubezonnet بهدرد میخوره. یه ابزار متنباز از تیم Polar Signals که با eBPF کار میکنه و ترافیک بینزون رو بدون هیچ تغییری در سرویسها رصد میکنه. دادههاش مستقیماً به Prometheus فرستاده میشن، پس راحت میتونی تو Grafana یا هر ابزار مانیتورینگی که داری، وضعیت رو ببینی.
به کمک kubezonnet میفهمی دقیقاً کدوم پادها یا workloadها باعث ترافیک بین zoneها هستن، و این یعنی میتونی منابع رو بهتر جابهجا کنی، latency رو پایین بیاری و هزینهها رو کنترل کنی.
پروژه هنوز تازهست، ولی دقیقاً اون دیدی رو میده که معمولاً تو مانیتورینگ شبکه گم میکنیم: دید واقعی از ارتباط بین zoneها.
مخزن پروژه روی گیتهاب در دسترسه:
اگه خوشههات روی چند تا zone مختلف اجرا میشن، احتمالاً بخشی از هزینه یا کندی شبکهت از ترافیکی میاد که بین این zoneها رد و بدل میشه ترافیکی که معمولاً کسی حواسش بهش نیست.
اینجا kubezonnet بهدرد میخوره. یه ابزار متنباز از تیم Polar Signals که با eBPF کار میکنه و ترافیک بینزون رو بدون هیچ تغییری در سرویسها رصد میکنه. دادههاش مستقیماً به Prometheus فرستاده میشن، پس راحت میتونی تو Grafana یا هر ابزار مانیتورینگی که داری، وضعیت رو ببینی.
به کمک kubezonnet میفهمی دقیقاً کدوم پادها یا workloadها باعث ترافیک بین zoneها هستن، و این یعنی میتونی منابع رو بهتر جابهجا کنی، latency رو پایین بیاری و هزینهها رو کنترل کنی.
پروژه هنوز تازهست، ولی دقیقاً اون دیدی رو میده که معمولاً تو مانیتورینگ شبکه گم میکنیم: دید واقعی از ارتباط بین zoneها.
مخزن پروژه روی گیتهاب در دسترسه:
https://github.com/polarsignals/kubezonnet
#DevOps
#kubernetes
#byteforge
@byteforge_chan 🛸
GitHub
GitHub - polarsignals/kubezonnet: Monitor cross-zone network traffic in Kubernetes.
Monitor cross-zone network traffic in Kubernetes. Contribute to polarsignals/kubezonnet development by creating an account on GitHub.
🔥2
خواستم به اطلاع برسونم
همونطور که مدتیه کپشن کانال رو تغیر دادم
مطالبی که اینجا روش کار میشه و انتشار داده میشه کاملا مربوط به حوزه DevOps & DevSecOps
و cloud engineering هستش
همونطور که مدتیه کپشن کانال رو تغیر دادم
مطالبی که اینجا روش کار میشه و انتشار داده میشه کاملا مربوط به حوزه DevOps & DevSecOps
و cloud engineering هستش
🔥9
Byteforge / بایــت فورج 🛸
خواستم به اطلاع برسونم همونطور که مدتیه کپشن کانال رو تغیر دادم مطالبی که اینجا روش کار میشه و انتشار داده میشه کاملا مربوط به حوزه DevOps & DevSecOps و cloud engineering هستش
کانال رو به دوستان علاقه مند به این حوزه معرفی کنید
یه حمایت کوچیک باعث میشه با انگیزه بیشتری روی مطالب کار بشه ❤️🫡
یه حمایت کوچیک باعث میشه با انگیزه بیشتری روی مطالب کار بشه ❤️🫡
❤6🫡2
k3k تولد کلاستر درون کلاستر
اگه تاحالا خواستی برای هر تیم یا پروژه یه محیط Kubernetes جدا بسازی، ولی نخواستی درگیر ساخت و نگهداری چندتا کلاستر واقعی بشی، k3k دقیقاً همون چیزیه که دنبالش بودی.
k3k یه پروژه از تیم Rancherـه که اجازه میده کلاسترهای K3s ایزوله و سبک رو مستقیماً داخل یه کلاستر Kubernetes موجود بسازی.
یعنی هر کلاستر مجازی یه کنترلپلین مستقل (K3s) داره، با kube-apiserver و etcd خودش، اما همشون روی نودهای همون کلاستر میزبان اجرا میشن و از منابعش share میکنن
در عمل یعنی چی؟
یعنی برای هر تیم یا feature میتونی یه کلاستر مستقل بسازی بدون نیاز به VM یا سرور جدید.
هر کلاستر virtual، تنظیمات، RBAC و حتی نسخه خودش از Kubernetes رو میتونه داشته باشه، ولی مدیریت کلش از همون میزبان انجام میشه.
ساخت محیط dev یا sandbox جدا برای هر تیم
تست نسخههای مختلف از اپ یا operatorها
اجرای multi-tenant با جداسازی منطقی
کاهش هزینه زیرساخت نسبت به داشتن چند کلاستر فیزیکی
البته هنوز تو فاز experimentalـه، پس برای محیط production باید با احتیاط استفادهش کرد مخصوصاً از نظر persistence و networking.
ولی برای آزمایش، توسعه و مدیریت چند محیط همزمان، واقعاً یه ایدهی تمیز و آیندهداره.
اگه تاحالا خواستی برای هر تیم یا پروژه یه محیط Kubernetes جدا بسازی، ولی نخواستی درگیر ساخت و نگهداری چندتا کلاستر واقعی بشی، k3k دقیقاً همون چیزیه که دنبالش بودی.
k3k یه پروژه از تیم Rancherـه که اجازه میده کلاسترهای K3s ایزوله و سبک رو مستقیماً داخل یه کلاستر Kubernetes موجود بسازی.
یعنی هر کلاستر مجازی یه کنترلپلین مستقل (K3s) داره، با kube-apiserver و etcd خودش، اما همشون روی نودهای همون کلاستر میزبان اجرا میشن و از منابعش share میکنن
در عمل یعنی چی؟
یعنی برای هر تیم یا feature میتونی یه کلاستر مستقل بسازی بدون نیاز به VM یا سرور جدید.
هر کلاستر virtual، تنظیمات، RBAC و حتی نسخه خودش از Kubernetes رو میتونه داشته باشه، ولی مدیریت کلش از همون میزبان انجام میشه.
ساخت محیط dev یا sandbox جدا برای هر تیم
تست نسخههای مختلف از اپ یا operatorها
اجرای multi-tenant با جداسازی منطقی
کاهش هزینه زیرساخت نسبت به داشتن چند کلاستر فیزیکی
البته هنوز تو فاز experimentalـه، پس برای محیط production باید با احتیاط استفادهش کرد مخصوصاً از نظر persistence و networking.
ولی برای آزمایش، توسعه و مدیریت چند محیط همزمان، واقعاً یه ایدهی تمیز و آیندهداره.
لینک پروژه:
github.com/rancher/k3k
#DevOps
#cluster
#kubernetes
#byteforge
@byteforge_chan 🛸
GitHub
GitHub - rancher/k3k: Kubernetes in Kubernetes
Kubernetes in Kubernetes. Contribute to rancher/k3k development by creating an account on GitHub.
❤🔥3
🔥7😁2🌚1
Byteforge / بایــت فورج 🛸
https://youtu.be/6GQRb4fGvtk?si=6CXmQZFF1LfJDHWv
کورس فشرده DevOps از ماش همدانی
کورس زبانش انگلیسی هستش برای دوستانی که زبان انگلیسی متوسطی هم دارن قابل درکه تلفظ کلمات رسمی و ساده هستش و با لهجه های هندی عجیب و غریب سر و کله نمیزنید 👌
کورس زبانش انگلیسی هستش برای دوستانی که زبان انگلیسی متوسطی هم دارن قابل درکه تلفظ کلمات رسمی و ساده هستش و با لهجه های هندی عجیب و غریب سر و کله نمیزنید 👌
🔥5❤1👍1
Byteforge / بایــت فورج 🛸
کورس فشرده DevOps از ماش همدانی کورس زبانش انگلیسی هستش برای دوستانی که زبان انگلیسی متوسطی هم دارن قابل درکه تلفظ کلمات رسمی و ساده هستش و با لهجه های هندی عجیب و غریب سر و کله نمیزنید 👌
البته اینم اضافه کنم که این کورس 4 ساعته جزئیات فنی نداره زیاد و بیشتر رودمپ و مسیر DevOps رو باز میکنه و با جزئیات بخش های مختلف رو بررسی میکنه
❤2👍1
Terraform
از چه رویکردی برای تعریف زیرساخت استفاده میکند؟
از چه رویکردی برای تعریف زیرساخت استفاده میکند؟
Anonymous Quiz
13%
Imperative
27%
Interactive
40%
Declarative
20%
Procedural
🔥2👏1
اینهمه میگیم کوبرنتیز کوبرنتیز خوبه فلانه بیساره 🤔
اصلا چی هست این کوبرنتیز ؟؟
به ساده ترین روش الان با مثال توضیحاتش رو میذارم برای دوستان جدید که تازه اضافه شدن به کانال و اشنایی ندارن وعلاقه مند هستن
اصلا چی هست این کوبرنتیز ؟؟
به ساده ترین روش الان با مثال توضیحاتش رو میذارم برای دوستان جدید که تازه اضافه شدن به کانال و اشنایی ندارن وعلاقه مند هستن
⚡1❤1🤷♂1
Byteforge / بایــت فورج 🛸
اینهمه میگیم کوبرنتیز کوبرنتیز خوبه فلانه بیساره 🤔 اصلا چی هست این کوبرنتیز ؟؟ به ساده ترین روش الان با مثال توضیحاتش رو میذارم برای دوستان جدید که تازه اضافه شدن به کانال و اشنایی ندارن وعلاقه مند هستن
فرض کن یه رستوران بزرگ داری
توی آشپزخونهات کلی آشپز (Container) داری، هرکدوم یه بخش خاص از غذا رو درست میکنن
Kubernetes مثل مدیر رستورانه. خودش تصمیم میگیره چند تا آشپز لازم داری، کی یکی اضافه بشه یا اگه یکی خسته شد یا رفت، یکی دیگه جاش بیاد. اگه یه آشپز مریض شد یا سوختگی گرفت ( یعنی یه کانتینر کرش کرد)، Kubernetes سریع یه آشپز جدید (Pod جدید) جای اون میفرسته تا کار متوقف نشه.
اگه jاتفاقی مشتریها زیاد شدن (یعنی ترافیک زیاد شد)، Kubernetes خودش میگه
اگه شب شد و مشتریا رفتن، میگه
تازه Kubernetes حتی بلده اگه برق یه آشپزخونه رفت (یعنی یه Node از کار افتاد)، آشپزها رو بفرسته تو یه آشپزخونه دیگه که هنوز برق داره (یعنی تو یه Node سالم).
توی آشپزخونهات کلی آشپز (Container) داری، هرکدوم یه بخش خاص از غذا رو درست میکنن
Kubernetes مثل مدیر رستورانه. خودش تصمیم میگیره چند تا آشپز لازم داری، کی یکی اضافه بشه یا اگه یکی خسته شد یا رفت، یکی دیگه جاش بیاد. اگه یه آشپز مریض شد یا سوختگی گرفت ( یعنی یه کانتینر کرش کرد)، Kubernetes سریع یه آشپز جدید (Pod جدید) جای اون میفرسته تا کار متوقف نشه.
اگه jاتفاقی مشتریها زیاد شدن (یعنی ترافیک زیاد شد)، Kubernetes خودش میگه
«خب بچهها! باید آشپزخونهمون رو بزرگتر کنیم!»
و چند تا آشپز (Pod) دیگه اضافه میکنه.
اگه شب شد و مشتریا رفتن، میگه
«اوکی، الان لازم نیست ۱۰ تا آشپز کار کنن، ۳ تا کافیه.»
و خودش بقیه رو میفرسته خونه تا منابع هدر نره.
تازه Kubernetes حتی بلده اگه برق یه آشپزخونه رفت (یعنی یه Node از کار افتاد)، آشپزها رو بفرسته تو یه آشپزخونه دیگه که هنوز برق داره (یعنی تو یه Node سالم).
#DevOps
#cluster
#kubernetes
#byteforge
@byteforge_chan 🛸
❤🔥7
Byteforge / بایــت فورج 🛸
فرض کن یه رستوران بزرگ داری توی آشپزخونهات کلی آشپز (Container) داری، هرکدوم یه بخش خاص از غذا رو درست میکنن Kubernetes مثل مدیر رستورانه. خودش تصمیم میگیره چند تا آشپز لازم داری، کی یکی اضافه بشه یا اگه یکی خسته شد یا رفت، یکی دیگه جاش بیاد. اگه یه آشپز…
از این ساده تر نمیتونم توضیح بدمش لذت ببرید 😁❤️
حمایت یادتون نره رفقا ❤️
حمایت یادتون نره رفقا ❤️
❤8🔥1
❤🔥7🔥1