DevOps Labdon
402 subscribers
21 photos
1 video
1 file
580 links
👑 DevOps Labdon

حمایت مالی:
https://www.coffeete.ir/mrbardia72

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
yamllint – YAML Linter for Syntax and Style Enforcement

🟢 خلاصه مقاله:
یام‌لینت ابزاری برای بررسی YAML است که با تحلیل نحوی، ساختاری و سبک نوشتار، خطاهایی مانند کلیدهای تکراری، تورفتگی نادرست، طول بیش از حد خطوط و فاصله‌های اضافی انتهای خطوط را پیدا می‌کند. این ابزار قابل پیکربندی است و می‌توان قوانین آن را مطابق استاندارد تیم تغییر داد یا غیرفعال کرد. yamllint به‌خوبی با گردش‌کار توسعه، از خط فرمان تا pre-commit و CI، ادغام می‌شود و با ارائه پیام‌های واضحِ خط‌به‌خط، رفع سریع خطا و حفظ یکنواختی و خوانایی فایل‌های YAML را ممکن می‌سازد.

🟣لینک مقاله:
https://ku.bz/v55DPnF4Z


👑 @DevOps_Labdon
🤝1
Forwarded from Gopher Job
🟢 اگر کارفرما یا کارجو هستی

و دنبال نیرو یا موقعیت شغلی توی حوزه‌های زیر هستی، به من پیام بده 👇

⚔️ DevOps Engineer
⚔️ Site Reliability Engineer (SRE)
⚔️ Linux SysAdmin
⚔️ Cloud Engineer (AWS/GCP/Azure)
⚔️ Infrastructure Engineer
⚔️ Security Engineer (DevSecOps/Linux)
⚔️ Automation Engineer
⚔️ Platform Engineer
⚔️ Software Security
⚔️ Software QA
⚔️ Backend
⚔️ AI Engineer / Machine Learning
⚔️ Database Engineer / DBA

📩 همین الان پیام بده و استارت بزن! تا هم بتونی نیروی خوب پیدا کنی و یا یتونی یه موقعیت شغلی مناسب پیدا کنی

به من پیام بده آگهی یا رزومه ات رو قرار بدم اینجا

@mrbardia72
🔵 عنوان مقاله
How to easily migrate ingress to gateway API

🟢 خلاصه مقاله:
مهاجرت از اینگرس به Gateway API در کوبرنتیز با یک برنامه‌ریزی مرحله‌ای ساده و کم‌ریسک است. ابتدا همه اینگرس‌ها را فهرست کنید: میزبان‌ها، مسیرها، TLS، سرویس‌های پشت و هرannotation وابسته به کنترلر. سپس کنترلر و GatewayClass مناسب را انتخاب کنید. پیکربندی را به مفاهیم جدید نگاشت دهید: Gateway برای شنونده‌ها و TLS، و HTTPRoute برای قوانین مسیریابی، میزبان‌ها، تطبیق مسیر/هدر و وزن‌دهی ترافیک. برای منابع بین‌نام‌فضایی از ReferenceGrant و RBAC مناسب استفاده کنید. راهبرد مهاجرت امن: اجرای موازی Gateway با اینگرس، تست در محیط staging، مشاهده وضعیت و لاگ‌ها، و برش تدریجی ترافیک یا تغییر مرحله‌ای DNS؛ مسیر بازگشت را تا پایان اعتبارسنجی نگه دارید. مراقب عدم تطابقannotationها، تنظیمات TLS، زمان‌بندی‌ها/بازیابی‌ها، بازنویسی آدرس، سشن چسبنده و نیازهای خاصی مثل WebSocket یا IP واقعی کاربر باشید. پس از مهاجرت، API شفاف‌تر، قابلیت حمل بالاتر، سیاست‌گذاری غنی‌تر و تفکیک مسئولیت بهتر بین تیم پلتفرم (Gateway/GatewayClass) و تیم‌های اپلیکیشن (HTTPRoute) به دست می‌آید.

🟣لینک مقاله:
https://ku.bz/NCl2NKfS_


👑 @DevOps_Labdon
2
🔵 عنوان مقاله
External Secrets Operator: Sync Cloud Secrets into Kubernetes

🟢 خلاصه مقاله:
خلاصه‌ای از External Secrets Operator (ESO): ابزاری برای همگام‌سازی محرمانه‌ها از سرویس‌های مدیریت رازِ ابری (مثل AWS، GCP، Azure و Vault) به داخل Kubernetes است. با تعریف منابع سفارشی (ExternalSecret و SecretStore/ClusterSecretStore)، ESO به‌صورت دوره‌ای مقادیر را از منبع بیرونی می‌خواند و آن‌ها را به صورت Secret بومی Kubernetes تولید یا به‌روزرسانی می‌کند؛ سپس برنامه‌ها می‌توانند این مقادیر را به‌عنوان متغیر محیطی یا حجم‌دادن استفاده کنند. ESO فقط خواندن را انجام می‌دهد، از الگوها و سیاست‌های ایجاد/به‌روزرسانی پشتیبانی می‌کند و با GitOps سازگار است تا پیکربندی در گیت بماند و مقادیر محرمانه در سرویس‌های امن ذخیره شوند. نتیجه: کاهش پراکندگی رازها، اجرای اصل حداقل دسترسی با IAM، و ساده‌سازی امنیت و عملیات در کلاستر.

🟣لینک مقاله:
https://ku.bz/PCSkhjRtN


👑 @DevOps_Labdon
🔥1
🔵 عنوان مقاله
Frameworks for serving machine learning models on Kubernetes

🟢 خلاصه مقاله:
** این مقاله نگاهی جامع به چارچوب‌های سروینگ مدل‌های یادگیری ماشین روی کوبرنتیز دارد و چارچوب‌هایی مانند KServe و Seldon Core را به‌عنوان گزینه‌های عمومی، در کنار راهکارهای تخصصی‌تر مانند NVIDIA Triton، BentoML/Yatai، Ray Serve، TorchServe و MLServer مرور می‌کند. معیارهای انتخاب شامل اهداف تأخیر و توان عملیاتی، پشتیبانی از REST/gRPC، نیازهای سخت‌افزاری و GPU، سروینگ چندمدلی، الگوهای مسیریابی (کاناری، شدو، A/B)، چندمستاجری و یکپارچگی با CI/CD، رجیستری و پایش است. الگوهای استقرار رایج شامل به‌روزرسانی کاناری و آبی/سبز، شدو برای اعتبارسنجی نسخه‌ها، سروینگ آنلاین پشت درگاه ورودی و استنتاج دسته‌ای با CronJob یا پایپ‌لاین‌هاست. برای تولید، به مقیاس‌پذیری (HPA/KEDA/Knative)، زمان‌بندی GPU، مشاهده‌پذیری (Prometheus/Grafana/OpenTelemetry) و پایش کیفیت/رانش مدل، و همچنین امنیت و حاکمیت (mTLS، RBAC، سیاست‌های شبکه) توجه می‌شود. نتیجه اینکه اکوسیستم کوبرنتیز امکان انتخاب چارچوب‌های بومی و منعطف را فراهم می‌کند تا توازن میان کارایی، قابلیت اتکا و هزینه در سروینگ مدل‌ها برقرار شود.

🟣لینک مقاله:
https://ku.bz/0SkgVw7Fz


👑 @DevOps_Labdon
1
🔵 عنوان مقاله
Kubernetes Services: A Deep Dive with Examples

🟢 خلاصه مقاله:
خلاصه‌ای از مفاهیم سرویس در کوبرنتیز ارائه می‌شود که نقش آن‌ها را در شبکه‌سازی کلاستر و دسترسی پایدار به پادهای پویا توضیح می‌دهد. سرویس‌ها با نام DNS ثابت و یک IP مجازی، ترافیک را میان پادهای دارای لیبل مشترک توزیع می‌کنند. نوع ClusterIP برای دسترسی صرفاً داخلی استفاده می‌شود؛ NodePort پورت ثابتی روی همه نودها باز می‌کند و برای تست یا درگاه ورودی ساده کاربرد دارد؛ LoadBalancer در کلود یک لودبالانسر مدیریت‌شده ایجاد می‌کند و مناسب درگاه‌های عمومی تولیدی است؛ ExternalName فقط یک نام DNS بیرونی را برمی‌گرداند و ترافیک را پروکسی نمی‌کند؛ و Headless بدون IP مجازی، IP پادها را مستقیماً از طریق DNS برمی‌گرداند و برای بارهای Stateful و کشف نقطه‌به‌نقطه مفید است. مقاله با مثال‌های عملی نشان می‌دهد کِی و چگونه از هر نوع استفاده کنید.

🟣لینک مقاله:
https://ku.bz/T1qMr1yS7


👑 @DevOps_Labdon
🔵 عنوان مقاله
Orchestrating a Greener Cloud: Carbon-Aware Kubernetes Scheduling with Liqo and Karmada

🟢 خلاصه مقاله:
این مقاله نشان می‌دهد چگونه می‌توان با ترکیب Karmada و Liqo زمان‌بندی آگاه از کربن را در کلاسترهای چندگانه کوبرنتیز پیاده‌سازی کرد. Karmada با سیاست‌های چندکلاستری، جای‌گذاری و مقیاس‌پذیری را مدیریت می‌کند و Liqo امکان همتا‌سازی و جابه‌جایی شفاف بارهای کاری بین کلاسترها را فراهم می‌سازد. یک سرویس «اطلاعات کربن» شدت کربن لحظه‌ای و پیش‌بینی‌شده هر منطقه را دریافت کرده و آن را به برچسب‌ها/وزن‌های کلاستر تبدیل می‌کند تا زمان‌بندی به نفع کلاسترهای کم‌کربن انجام شود، در حالی‌که قیود تاخیر، انطباق داده و دسترس‌پذیری رعایت می‌گردد. برای کارهای قابل‌تأخیر (مانند پردازش‌های دسته‌ای، CI و آموزش ML) اجرا به بازه‌های کم‌کربن منتقل می‌شود؛ خدمات Stateless نیز می‌توانند میان مناطق پخش شده و به سمت مناطق سبزتر متمایل شوند. ملاحظات کلیدی شامل بودجه‌های SLO، اقامت‌گاه داده، هزینه ترافیک، و مشاهده‌پذیری برای برآورد کاهش انتشار است. این رویکرد، بدون نیاز به بازنویسی برنامه‌ها، با استفاده از سیاست‌های Karmada و تحرک‌پذیری Liqo، راهی عملی برای کاهش ردپای کربن ابر از طریق جای‌گذاری آگاه از مکان و زمان ارائه می‌دهد.

🟣لینک مقاله:
https://ku.bz/mpF1QKq6Z


👑 @DevOps_Labdon
Forwarded from Bardia & Erfan
ارتباط IPv6 از سمت زیرساخت کشور دچار اختلال و قطعی شده است.
🔵 عنوان مقاله
When “Anti-Patterns” Become Best Practice: Lessons from Migrating a Global Pub/Sub Empire to Kubernetes

🟢 خلاصه مقاله:
این مطالعه موردی مهاجرت یک سامانه جهانی pub/sub به Amazon EKS را شرح می‌دهد؛ جایی که ابزارهای استاندارد در مقیاس کلان پاسخ‌گو نبودند و تیم برای برآورده‌کردن نیازهای سخت‌گیرانه تأخیر، توان عملیاتی و دسترس‌پذیری به راهکارهای سفارشی روی آورد. آن‌ها یک سیستم IPAM بسیار سریع در C++ ساختند و با کنترلرها و سیاست‌های ویژه، استقرار آگاه از توپولوژی و ظرفیت تضمین‌شده را پیاده کردند. برخی «ضدالگوها» در Kubernetes—مثل استفاده از hostNetwork، IPهای ثابت، پین‌کردن پادها به نود/زون، به‌کارگیری DaemonSet برای بروکرها و دورزدن سرویس‌مش در مسیر داغ—در این زمینه به بهترین روش تبدیل شدند، چون با گاردریل‌های قوی، مشاهده‌پذیری، آزمون آشوب و امکان بازگشت کنترل شدند. جمع‌بندی: بنچمارک‌محور تصمیم بگیرید، محدودیت‌های پلتفرم را الزام طراحی بدانید، مسیر بحرانی را در مالکیت خود بگیرید وقتی ابزارهای آماده کم می‌آورند، و فقط جایی سفارشی‌سازی کنید که عملکرد/مسیر داده ایجاب می‌کند؛ مهاجرت مرحله‌ای و قابل بازگشت، راه رسیدن به SLOها در مقیاس جهانی بود.

🟣لینک مقاله:
https://ku.bz/RrkTp7zGP


👑 @DevOps_Labdon
🤝1
🔵 عنوان مقاله
How We Cut Our Azure Cloud Costs by 3×

🟢 خلاصه مقاله:
**این مطالعه موردی نشان می‌دهد چگونه هزینه ماهانه Azure از ۲۵هزار یورو به ۸هزار یورو کاهش یافت: با بهینه‌سازی Kubernetes و ماشین‌های مجازی و ساخت یک اپراتور Go که با پایش طول صف تماس‌های خروجی، دیپلویمنت‌های کم‌مصرف را تا صفر replica مقیاس می‌دهد و هنگام رشد صف به‌سرعت آن‌ها را بازمی‌گرداند. این ترکیب با حذف ظرفیت بیکار و حفظ کارایی، بیشترین سهم را در کاهش ۳برابری هزینه‌ها داشت.

🟣لینک مقاله:
https://ku.bz/ZbclYbPC6


👑 @DevOps_Labdon
امنیت در Docker: چیزی که اغلب فراموش می‌کنیم!

*  از rootless containers استفاده کنید: اجرای اپلیکیشن با کاربر non-root ریسک نفوذ رو خیلی کم می‌کنه.
* از Base image سبک و امن استفاده کنید: مثلاً alpine یا distroless. imageهای بزرگ‌تر مثل ubuntu اغلب پکیج‌های غیرضروری دارن که سطح حمله رو زیاد می‌کنن.
* حتما وDependencyها رو pin کنید: همیشه نسخه دقیق کتابخونه‌ها رو مشخص کنید تا از تغییرات ناخواسته جلوگیری بشه.
* از .dockerignore استفاده کنید: فایل‌های حساس (مثل .env یا کلیدها) هرگز نباید داخل image قرار بگیرن.
* به‌روز نگه داشتن imageها: آسیب‌پذیری‌ها خیلی سریع پیدا می‌شن، پس آپدیت مرتب imageها ضروریه.
بارها پیش میاد که به خاطر استفاده از یک base image قدیمی، vulnerability جدی توی اسکن امنیتی پیدا میشه. فقط با عوض کردن base image به نسخه‌ی جدیدتر و سبک‌تر، هم امنیت بیشتر میشه، هم حجم image کاهش پیدا میکنه.

نکات تکمیلی امنیت در Docker
1. استفاده از Healthcheck
- توی Dockerfile با HEALTHCHECK وضعیت سرویس رو بررسی کنید که باعث می‌شه container ناسالم زودتر شناسایی و جایگزین بشن.
2. حداقل کردن Surface Attack با distroless images
- این imageها فقط باینری نهایی رو دارن (بدون package manager یا shell).
- دسترسی مهاجم به شدت محدود می‌شه.
3.فعال کردن User namespace remapping
- باعث می‌شه کاربر root داخل container، روی سیستم میزبان واقعاً root نباشه.
4. استفاده از Read-Only Filesystem
- container رو با --read-only بالا بیارید تا کسی نتونه فایل‌های سیستمی داخلش رو تغییر بده.
5. مدیریت Secretها به‌درستی
- هرگز secrets رو داخل image نذارید.
- از ابزارهایی مثل Docker secrets، HashiCorp Vault یا AWS/GCP Secret Manager استفاده کنید.
‏6. Scan امنیتی منظم
- ابزارهایی مثل Trivy, Grype یا Docker Scout رو برای اسکن image استفاده کنید.
- این ابزارها آسیب‌پذیری‌های شناخته‌شده (CVE) رو شناسایی می‌کنن.
7. محدود کردن Resourceها
- با --cpus و --memory منابع container رو محدود کنید تا جلوی حملات DoS یا مصرف بی‌رویه گرفته بشه.
8. استفاده از شبکه‌های ایزوله
- کانتینرهایی که لازم نیست با اینترنت یا کانتینرهای دیگه در ارتباط باشن رو توی یک شبکه‌ی جداگانه نگه دارید.
9. امضای دیجیتال و اعتبارسنجی Imageها
- با Docker Content Trust (DCT) یا cosign امضا و اعتبارسنجی کنید که image تغییر نکرده باشه.
10. بروزرسانی مرتب Docker Engine و Runtime
- چون آسیب‌پذیری‌ها فقط توی imageها نیستن، بلکه خود daemon و runtime هم می‌تونه مشکل امنیتی داشته باشه.


*امنیت در Docker فقط به Dockerfile محدود نیست؛ از انتخاب base image شروع می‌شه، به مدیریت secret و network می‌رسه و حتی شامل CI/CD pipeline هم می‌شه*

<Somaye Omidi/>
🔵 عنوان مقاله
Kubernetes Is Powerful, But Not Secure (at least not by default)

🟢 خلاصه مقاله:
کوبرنتیز قدرتمند است اما به‌صورت پیش‌فرض امن نیست. به‌طور معمول میان پادها هیچ ایزولیشن شبکه‌ای اعمال نمی‌شود و ارتباطات داخلی «باز» است، که کار را ساده می‌کند اما دامنه آسیب را هم بزرگ می‌گذارد. راهکار کلیدی، Network Policy است: با تعریف قواعد ورود و خروج بر اساس برچسب، نام‌فضا و پورت، فقط جریان‌های ضروری را مجاز کنید. یک الگوی امن، «منع پیش‌فرض» و سپس افزودن اجازه‌های حداقلی برای مسیرهای لازم (مانند وب به API، API به پایگاه‌داده، DNS و سلامت‌سنجی‌ها) است. توجه کنید اجرای این سیاست‌ها به CNI سازگار نیاز دارد. در کنار این‌ها، RBAC کم‌اختیار، کنترل‌های پذیرش و امنیت پاد، و مدیریت امن اسرار را اضافه کنید تا به دفاع چندلایه برسید.

🟣لینک مقاله:
https://ku.bz/qQx7GKrp1


👑 @DevOps_Labdon
🔵 عنوان مقاله
Kubernetes Prometheus Analyzer: CLI for Resource Optimization

🟢 خلاصه مقاله:
این ابزار خط فرمان با اتصال به Prometheus، میزان استفاده زنده CPU و حافظه را برای بارهای کاری Kubernetes جمع‌آوری می‌کند و بر اساس الگوهای واقعی مصرف، پیشنهادهای درست‌سایزکردن ارائه می‌دهد. خروجی آن بارهای کاری پرمصرف یا کم‌مصرف را شناسایی کرده و برای کاهش هدررفت یا افزایش پایداری، تنظیم درخواست‌ها و محدودیت‌های منابع را توصیه می‌کند. نتیجه، بهینه‌سازی هزینه و بهبود عملکرد با تکیه بر داده‌های واقعی است.

🟣لینک مقاله:
https://ku.bz/ltjM5TbVl


👑 @DevOps_Labdon
🔵 عنوان مقاله
KRO: A new generation tool to manage Kubernetes manifests and deployment

🟢 خلاصه مقاله:
** این آموزش ابزار KRO را معرفی می‌کند؛ ابزاری نسل‌جدید برای مدیریت مانیفست‌ها و استقرار در کوبرنتیز که با تعریف «گراف منابع» (Resource Graph Definition) وابستگی‌ها و ترتیب اعمال منابع را به‌صورت deklarative مشخص می‌کند. سپس با ایجاد «نمونه‌های Application» همان گراف را به محیط‌های واقعی متصل می‌کند و کنترلر KRO وضعیت مطلوب را به‌ترتیب صحیح اعمال، پایش و در صورت نیاز به‌روزرسانی یا رول‌بک می‌کند. در این راهنما نصب KRO، تعریف یک گراف منابع، ایجاد و اعمال Application، مشاهده وضعیت آشتی (reconciliation) و اجرای تغییرات تکرارشونده آموزش داده می‌شود تا استقرارهای چندمنبعی ساده‌تر، منسجم‌تر و قابل اعتمادتر شوند.

🟣لینک مقاله:
https://ku.bz/wrHrx4lFq


👑 @DevOps_Labdon
👌1
آیا یک توسعه‌دهنده فرانت‌اند به Docker نیاز داره؟
داکر (Docker) یک پلتفرم متن‌باز برای ایجاد و اجرای نرم‌افزارها در قالب کانتینره، کانتینرها بسته‌های سبکی هستند که شامل کد برنامه، کتابخانه‌ها، ابزارهای سیستم‌عامل و تنظیمات لازم برای اجرای برنامه‌اند فکرکنید یه ظرف استاندارد برای حمل‌ کالا دارید... دقیقاً مثل کانتینرهای کشتی که همه اجزای یک بار را یکجا حمل می‌کنن، کانتینر داکر هم همه اجزای نرم‌افزار را یکجا بسته‌بندی می‌کنه تا در هر محیطی قابل اجرا باشه، داکر در سال ۲۰۱۳ توسط سالومون هایکس معرفی شد تا مشکل ناسازگاری محیط توسعه و استقرار را حل کنه
با داشتن بزار Node Package Manager که بیشتر با اسم npm میشناسیمش بازم به داکر نیاز داریم ؟
اینا در دو دسته کاملاً متفاوت هستن npm ابزار مدیریت بسته‌های کتابخانه‌هاست یعنی وظیفه‌ی نصب و به‌روزرسانی کتابخانه‌هاییه که توی پروژه‌ی تعریف شده
داکر مربوط به محیط اجرای نرم‌افزاره
برگردیم به سوال اصلی :آیا یک توسعه‌دهنده فرانت‌اند به Docker نیاز داره؟
یادگیری داکر برای یک توسعه‌دهنده فرانت‌اند در شروع مسیر ضروری نیست؛ اما با تجربه کاری و نیاز به همکاری با تیم بک‌اند، آشنایی حداقلی با آن خوبه
حتی خود مستندات Next.js هم اشاره کرده‌ برای استقرار در محیط‌های واقعی (مثلاً کانتینر یا Kubernetes) میشه از داکر استفاده کرد، اما در توسعه local روی Mac/Windows معمولاً از حالت معمولا (npm run dev) استفاده میشه تا کارایی بهتری داشته باشیم

<Mohsen Zarei/>
🔵 عنوان مقاله
Getting Started with Falco Security Tool on GKE

🟢 خلاصه مقاله:
این آموزش نحوه راه‌اندازی و پیکربندی Falco روی GKE را برای امنیت زمان اجرا نشان می‌دهد: نصب عامل‌های Falco در خوشه، آزمایش قوانین پیش‌فرض با شبیه‌سازی رفتارهای مشکوک، اتصال رویدادها به Google Cloud Monitoring برای ساخت هشدارهای قابل اقدام، و افزودن قوانین سفارشی برای متناسب‌سازی تشخیص‌ها با نیازهای کلاستر. نتیجه، یک لایه تشخیص زمان اجرا روی GKE با هشداردهی یکپارچه و قابلیت تنظیم برای کاهش خطاهای مثبت کاذب است.

🟣لینک مقاله:
https://ku.bz/zFRVy94dl


👑 @DevOps_Labdon
🔵 عنوان مقاله
Key Learnings from Creating Multi-Tenant GKE Clusters on Google Cloud with Thousands of Publicly Addressable Services

🟢 خلاصه مقاله:
ساخت خوشه‌های چندمستاجری GKE با هزاران سرویس عمومی نیازمند چند اصل کلیدی است: جداسازی سفت‌وسخت با Namespaces، RBAC، Pod Security Admission و سهمیه‌های منابع؛ یکپارچه‌سازی ترافیک با چند لودبالانسر لایه‌۷ از طریق Ingress یا Gateway API و استفاده از NEG برای سلامت‌سنجی بهتر؛ برنامه‌ریزی سخاوتمندانه IP در VPC بومی، خودکارسازی DNS و مدیریت گواهی‌های TLS (ترجیحاً مدیریت‌شده و در صورت امکان wildcard) و پایش سهمیه‌ها. برای مقیاس‌پذیری و پایداری، از خوشه‌های منطقه‌ای چندزون، ارتقای مرحله‌ای، قابلیت‌های خودمقیاس‌دهی گره/پاد و تحویل تدریجی (کاناری/آبی-سبز) استفاده کنید و پیچیدگی پیکربندی را محدود نگه دارید. امنیت لایه‌ای با Workload Identity، سیاست‌های OPA، مدیریت اسرار با KMS/Secrets Manager، WAF/DDoS با Cloud Armor و در صورت نیاز mTLS/مش سرویس ضروری است. مشاهده‌پذیری باید چندمستاجری باشد با برچسب‌گذاری استاندارد، SLO و هشدارهای روشن و کنترل کاردینالیتی. در نهایت، با ادغام ورودی‌ها، بهینه‌سازی اندازه نودها، بهره‌گیری از منابع ارزان برای بارهای Stateless و مدیریت پیش‌دستانه سهمیه‌های GCP، هزینه‌ها و ریسک‌ها مهار می‌شود. نتیجه، سکویی مقاوم و اقتصادی است که می‌تواند هزاران نقطه عمومی را با ایمنی و سرعت میزبانی کند.

🟣لینک مقاله:
https://ku.bz/NKGbf-hHv


👑 @DevOps_Labdon
Forwarded from Gopher Job
Companies using Go.xlsx
12.1 KB
📂 یه فایل فوق‌العاده آماده کردیم براتون!

🔹 لیست ۶۴ شرکت بزرگ دنیا که از Golang استفاده می‌کنن
🔹 همراه با موقعیت‌های شغلی فعال Golang توی همین شرکت‌ها

اگه دنبال فرصت‌های شغلی توی حوزه Backend، DevOps یا Software Engineering هستی، این فایل می‌تونه یه نقطه شروع عالی باشه.

📌 همین الان فایل رو بردار و شرکت‌ها + موقعیت‌ها رو ببین

@gopher_job
🍾1
🔵 عنوان مقاله
kubechecks: App Updates

🟢 خلاصه مقاله:
**این مطلب به‌روزرسانی‌های اخیر برنامه kubechecks را اعلام می‌کند و بر بهبودهای کلی در پایداری، کارایی و سهولت استفاده تأکید دارد. از کاربران خواسته شده به آخرین نسخه ارتقا دهند و برای جزئیات کامل تغییرات، یادداشت‌های انتشار را ببینند. همچنین از بازخورد کاربران استقبال می‌شود و اشاره شده که به‌روزرسانی‌های تدریجی با تمرکز بر کیفیت ادامه خواهند داشت.

🟣لینک مقاله:
https://ku.bz/q9XwPkcRJ


👑 @DevOps_Labdon
ابزار ‏LocalStack چیست و چرا برای توسعه‌دهندگان و مهندسان زیرساخت مفید است؟

ابزار ‏LocalStack یک پلتفرم متن‌باز برای شبیه‌سازی سرویس‌های AWS روی ماشین لوکال یا Docker است. این ابزار امکان توسعه و تست زیرساخت‌های ابری را بدون نیاز به اتصال به AWS واقعی و پرداخت هزینه فراهم می‌کند.

‏ویژگی‌های کلیدی:
‏- دارای APIهای استاندارد AWS: می‌توانید مستقیماً از AWS CLI، SDK یا Terraform استفاده کنید.
‏- شبیه‌سازی سرویس‌های مهم:
نسخه رایگان: S3، DynamoDB، Lambda، API Gateway، SNS/SQS، CloudFormation، IAM، Kinesis، CloudWatch Logs، Step Functions
نسخه Pro: سرویس‌های پیشرفته‌تر مانند Athena، Glue و EventBridge
‏- محیط تست واقعی: امکان تمرین با Terraform/CloudFormation، تست Lambda، S3، SQS و یکپارچه‌سازی با CI/CD pipeline بدون نیاز به اکانت AWS.
‏- صرفه‌جویی در هزینه: اجرای همه‌چیز به‌صورت لوکال، بدون هزینه تا زمان دیپلوی واقعی.

‏محدودیت‌ها:
‏- سرویس‌هایی مانند AWS WAF مستقیماً شبیه‌سازی نمی‌شوند، اما سرویس‌های مرتبط مثل S3، Lambda و EventBridge قابل تست هستند.

‏چرا LocalStack ارزشمند است؟
‏- تست سناریوهای پیچیده و Unit Testing برای Lambda، S3، SQS و غیره
‏- شبیه‌سازی محیط‌های Production در لوکال
‏- توسعه و دیباگ زیرساخت بدون وابستگی به اینترنت یا اکانت AWS
‏- یکپارچگی با CI/CD برای تست کدهای زیرساختی

در نهایت ‏LocalStack ابزاری قدرتمند برای توسعه و تست زیرساخت‌های AWS بدون هزینه‌های اضافی است.


<Mahdi Shahi/>
🚀 رفع خطای `docker-compose` در Python 3.12

اگر روی سیستم‌تون Python نسخه‌ی 3.12 نصب باشه، ممکنه هنگام اجرای دستور docker-compose با خطای زیر مواجه بشید:

ModuleNotFoundError: No module named 'distutils'


از نسخه‌ی 3.12 به بعد، ماژول distutils از پایتون حذف شده و نسخه‌ی قدیمی docker-compose (که به Python وابسته بود) دیگه کار نمی‌کنه.

راه‌حل‌ها:

1️⃣ استفاده از دستور جدید Docker Compose (داخلی در داکر):

```bash
docker compose up -d
```

⚠️ به فاصله بین `docker` و `compose` دقت کنید.

2️⃣ نصب نسخه‌ی جدید Go-based `docker-compose` (بدون وابستگی به Python):


sudo curl -L "https://github.com/docker/compose/releases/download/v2.27.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose


🔎 سپس تست کنید:

docker-compose version


📦 بعد از این مراحل، بدون هیچ خطایی می‌تونید پروژه‌هاتون رو بالا بیارید 🚀