DevOps Labdon
480 subscribers
24 photos
4 videos
2 files
768 links
👑 DevOps Labdon

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

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
Terraform & Ansible: Unifying infrastructure provisioning and configuration management (3 minute read)

🟢 خلاصه مقاله:
این یکپارچگی جدید با معرفی Terraform actions، همکاری Terraform و Ansible را عمیق‌تر می‌کند و یک مسیر یکپارچه از تامین زیرساخت تا پیکربندی و عملیات Day 2+ فراهم می‌کند. Terraform می‌تواند مستقیماً گردش‌های کاری Ansible را پس از ایجاد زیرساخت اجرا کند و با اشتراک موجودی یکسان (inventory) و خروجی‌های Terraform، از ناسازگاری و اسکریپت‌های سفارشی جلوگیری کند. نتیجه، خودکارسازی روان‌تر و کاهش اصطکاک عملیاتی به‌ویژه در محیط‌های هیبرید و چندابری است؛ ضمن اینکه کارهای مداوم مانند نصب وصله‌ها، اعمال انطباق، استقرار برنامه و رفع drift نیز به‌صورت منظم و قابل تکرار انجام می‌شوند.

#Terraform #Ansible #InfrastructureAsCode #DevOps #Automation #MultiCloud #ConfigurationManagement #Day2Operations

🟣لینک مقاله:
https://www.hashicorp.com/en/blog/terraform-ansible-unifying-infrastructure-provisioning-configuration-management?utm_source=tldrdevops


👑 @DevOps_Labdon
🔵 عنوان مقاله
Why keep your index set lean (8 minute read)

🟢 خلاصه مقاله:
** ایندکس‌های اضافی در Postgres هزینه پنهان اما جدی دارند: نوشتن‌ها را کند می‌کنند چون هر INSERT/UPDATE باید همه آن‌ها را به‌روزرسانی کند، زمان برنامه‌ریزی را بالا می‌برند و به‌خاطر رقابت برای cache می‌توانند خواندن‌ها را هم کند کنند. علاوه بر اتلاف فضای دیسک، کار autovacuum بیشتر می‌شود و WAL بیشتری تولید می‌شود که هزینه‌های نگهداری و پشتیبان‌گیری را بالا می‌برد. راهکار این است که ایندکس‌های بلااستفاده یا تکراری حذف و ایندکس‌های متورم بازسازی شوند، و با پایش منظم، مجموعه‌ای کم‌حجم و کارآمد از ایندکس‌ها حفظ شود.

#Postgres #Indexing #DatabasePerformance #WAL #Autovacuum #SQL #DBA #DevOps

🟣لینک مقاله:
https://postgres.ai/blog/20251110-postgres-marathon-2-013-why-keep-your-index-set-lean?utm_source=tldrdevops


👑 @DevOps_Labdon
🔵 عنوان مقاله
topolvm: capacity-aware CSI

🟢 خلاصه مقاله:
TopoLVM یک درایور CSI برای Kubernetes است که با استفاده از LVM روی Linux، دیسک‌های محلی هر نود را به PersistentVolumeهای پویا و قابل اطمینان تبدیل می‌کند. ویژگی اصلی آن «آگاه از ظرفیت» بودن است؛ یعنی ظرفیت آزاد واقعی هر نود را می‌شناسد و آن را به Scheduler اعلام می‌کند تا Podهایی که PVC دارند فقط روی نودهایی زمان‌بندی شوند که واقعا توان تامین آن حجم را دارند. این رویکرد از حلقه‌های شکست در زمان‌بندی و خطاهای دیرهنگام Provisioning جلوگیری می‌کند.

TopoLVM معمولا شامل یک Controller، یک Node Plugin و مولفه سبک lvmd روی هر نود است. StorageClassها می‌توانند به Volume Groupها یا Device Classهای متفاوت نگاشت شوند تا لایه‌های کارایی مختلف ارائه شود. پشتیبانی از حجم‌های فایل‌سیستمی و Block، توسعه حجم (در صورت پشتیبانی Kubernetes)، و تنظیمات Thin/Thick provisioning در LVM فراهم است. در کلاسترهایی که Storage Capacity Tracking را پشتیبانی می‌کنند، اطلاعات ظرفیت از طریق اشیای StorageCapacity در دسترس Scheduler قرار می‌گیرد.

این راه‌حل برای سناریوهای ذخیره‌سازی محلی با کارایی بالا و نیاز به Locality مناسب است؛ مانند محیط‌های Bare Metal و Edge. از آن‌جا که Volumeها محلی‌اند، تاب‌آوری معمولا از طریق تکرار در سطح اپلیکیشن تامین می‌شود. در مقایسه با درایورهای ذخیره‌سازی شبکه‌ای، TopoLVM بر ظرفیت قابل پیش‌بینی روی نود، Provisioning سریع و کنترل مستقیم عملیاتی با LVM تمرکز دارد.

#Kubernetes #CSI #TopoLVM #LVM #Storage #PersistentVolume #CapacityAware #DevOps

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
Most Cloud-Native Roles are Software Engineers

🟢 خلاصه مقاله:
این مقاله بازار کار cloud-native در سال ۲۰۲۵ را بررسی می‌کند و نشان می‌دهد که حدود ۴۷٪ از موقعیت‌های مرتبط با Kubernetes به عنوان Software Engineer آگهی می‌شوند؛ در حالی‌که نقش‌های DevOps، Platform، DevSecOps و SRE سهم کمتری دارند. این روند بیانگر استخدامِ مهندس‌محور و حرکت به‌سمت shift-left است: از توسعه‌دهندگان انتظار می‌رود علاوه بر توسعه، با Kubernetes و بخشی از زیرساخت، امنیت و تحویل نیز درگیر باشند. برای متقاضیان، تسلط بر Kubernetes همراه با مهارت‌های CI/CD، IaC، observability و اصول امنیت ضروری‌تر شده است و در عین حال همکاری نزدیک با تیم‌های DevOps/Platform/SRE همچنان اهمیت دارد.

#CloudNative #Kubernetes #SoftwareEngineering #DevOps #SRE #DevSecOps #PlatformEngineering #TechJobs2025

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


👑 @DevOps_Labdon
1
🔵 عنوان مقاله
Inside Duolingo's FinOps Journey: Turning Cloud Spend into Engineering Insight (3 minute read)

🟢 خلاصه مقاله:
خلاصه‌ای از مسیر FinOps در Duolingo نشان می‌دهد که این شرکت با وارد کردن آگاهی مالی به جریان کاری مهندسی، هزینه‌های ابری را به بینشی عملی برای توسعه‌دهندگان تبدیل کرده است. با نمایش بلادرنگِ اثر مالی تغییرات در کنار متریک‌های عملیاتی، استفاده از تگ‌گذاری و مالکیت منابع، هشدارهای خودکار و گاردریل‌های بودجه، و حتی مقایسه «cost diff» در CI/CD، تیم‌ها می‌توانند پیش از استقرار، پیامدهای هزینه‌ای انتخاب‌های معماری و کد را بسنجند. این رویکرد فرهنگ سازمان را به سمتی برده که «کارایی» هم‌سطح «عملکرد» و «پایداری» به‌عنوان یک معیار اصلی کیفیت دیده می‌شود و تصمیم‌گیری‌ها—از برنامه‌ریزی ظرفیت تا آزمایش و بازطراحی—با زبانی مشترک میان مهندسی و مالی انجام می‌گیرد. نتیجه، کاهش اتلاف، پیش‌بینی‌پذیری بهتر و سیستم‌هایی سریع، پایدار و آگاه از هزینه است.

#FinOps #CloudCost #Duolingo #CostOptimization #DevOps #EngineeringExcellence #CloudOps #SoftwareQuality

🟣لینک مقاله:
https://www.infoq.com/news/2025/10/duolingo-finops-engineering/?utm_source=tldrdevops


👑 @DevOps_Labdon
🔵 عنوان مقاله
How We Rebuilt Our Vault Architecture with Raft, Snapshots, and DR

🟢 خلاصه مقاله:
ما معماری Vault را با تکیه بر سه رکن Raft، Snapshots و DR بازطراحی کردیم تا پیچیدگی عملیاتی را کاهش دهیم، وابستگی‌های بیرونی را حذف کنیم و تاب‌آوری را افزایش دهیم. با مهاجرت به ذخیره‌سازی یکپارچه مبتنی بر Raft، کلاستر ساده‌تر و قابل‌اعتمادتر شد و مسیر مهاجرت با محیط staging، تمرین‌های بازیابی، معیارهای rollback و پایش لحظه‌ای کنترل شد. Snapshots به‌طور خودکار زمان‌بندی و رمزنگاری شدند، در فضای ذخیره‌سازی ایمن نگهداری و با تمرین‌های دوره‌ای بازیابی راستی‌آزمایی شدند تا RPO شفاف و بازیابی قابل پیش‌بینی باشد. برای DR یک کلاستر ثانویه در دامنه خرابی جدا راه‌اندازی و با تکرار DR، برنامه failover با RTO مشخص و مانیتورینگ تأخیر تکرار، سلامت Raft و تازگی Snapshotها پیاده‌سازی شد. با امنیت لایه‌به‌لایه، least-privilege برای مقصد پشتیبان، مستندسازی و خودکارسازی بررسی‌ها، به عملیات پایدارتر و بازیابی سریع‌تر رسیدیم و اطمینان به سکوی مدیریت اسرار افزایش یافت.

#Vault #Raft #DisasterRecovery #Snapshots #DevOps #SRE #HighAvailability #Infrastructure

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
How to Prevent Failures with Kubernetes Topology Spread Constraints

🟢 خلاصه مقاله:
این مقاله نشان می‌دهد چرا استفاده از Pod Topology Spread Constraints در زمان rolling updates می‌تواند باعث توزیع ناعادلانه پادها شود و در پایان استقرار، یک یا چند ناحیه بیش‌ازحد شلوغ بماند. علت این است که Scheduler در هنگام جای‌گذاری پادهای جدید، پادهای قدیمی و جدید را با هم در نظر می‌گیرد؛ بنابراین پادهای تازه را به نواحی «فعلاً» کم‌تراکم می‌فرستد، اما با حذف تدریجی پادهای قدیمی، همان نواحی از نسخه جدید اشباع می‌شوند.

راه‌حل پیشنهادی استفاده از matchLabelKeys (برای نمونه با کلید pod-template-hash) است تا Scheduler هر نسل از پادها را فقط نسبت به هم‌نسل‌های خودش پخش کند. بدین ترتیب هر ReplicaSet به‌طور مستقل متعادل می‌شود و چون نسل قبلی نیز از قبل متعادل بوده، مجموع پادها در طول و پس از rollout یکنواخت باقی می‌ماند.

برای اجرای درست، از پشتیبانی Kubernetes v1.25+ نسبت به matchLabelKeys مطمئن شوید، topologyKey مناسب (مثلاً topology.kubernetes.io/zone) و maxSkew معقول انتخاب کنید و سیاست whenUnsatisfiable را بسته به نیاز سخت‌گیرانه (DoNotSchedule) یا منعطف (ScheduleAnyway) تنظیم کنید.

#Kubernetes #PodTopologySpreadConstraints #TopologySpread #RollingUpdates #DevOps #SRE #HighAvailability #matchLabelKeys

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
Deploying a .NET Weather Forecast App to AKS Using GitHub Actions and Argo CD

🟢 خلاصه مقاله:
**این آموزش نشان می‌دهد چگونه یک اپلیکیشن ساده .NET برای پیش‌بینی وضعیت هوا را با بهره‌گیری از GitHub Actions و Argo CD روی AKS مستقر کنید. GitHub Actions وظیفه ساخت و انتشار ایمیج کانتینر در رجیستری (مثل Azure Container Registry یا Docker Hub) را بر عهده دارد و Argo CD با رویکرد GitOps وضعیت مطلوب تعریف‌شده در مخزن را با خوشه AKS همگام می‌کند.

گام‌ها شامل آماده‌سازی خوشه AKS، رجیستری، و یک مخزن GitHub با کد و مانیفست‌های Kubernetes یا Helm است. سپس با یک Dockerfile اپلیکیشن .NET را کانتینری می‌کنید و یک Workflow در GitHub Actions می‌سازید که با هر تغییر کد، ایمیج را می‌سازد، تگ می‌زند و به رجیستری Push می‌کند. Argo CD در خوشه نصب و طوری پیکربندی می‌شود که مسیر مانیفست‌ها/چارت را از مخزن دنبال کرده و با سیاست همگام‌سازی دلخواه (دستی یا خودکار) تغییرات را اعمال کند.

در این جریان، هر Commit باعث ساخت ایمیج جدید و Push می‌شود و Argo CD تغییر وضعیت مطلوب را تشخیص داده و نسخه جدید را روی AKS مستقر می‌کند. آموزش به نکاتی مثل جداسازی محیط‌ها، RBAC و Namespace، انتشار سرویس از طریق Service/Ingress و پایش و Rollback نیز اشاره دارد تا استقرارها ایمن و قابل تکرار باشند.

#AKS #ArgoCD #GitHubActions #DotNet #Kubernetes #GitOps #Azure #DevOps

🟣لینک مقاله:
https://ku.bz/yj4-3B2y-


👑 @DevOps_Labdon
🔵 عنوان مقاله
k8s-libsonnet: Kubernetes library

🟢 خلاصه مقاله:
**k8s-libsonnet یک کتابخانه برای ساده‌سازی تولید و نگه‌داری پیکربندی‌های Kubernetes است که با الگوی DRY، اجزای قابل‌استفاده‌مجدد و پیش‌فرض‌های امن را ارائه می‌دهد. این رویکرد باعث کاهش تکرار، یکنواختی میان سرویس‌ها و سهولت اعمال تغییرات در محیط‌های مختلف می‌شود. در عمل، اجزا را وارد کرده و پارامتری می‌کنید، خروجی YAML/JSON می‌گیرید، سپس با ابزارهای مرسوم آن را اعتبارسنجی و Deploy می‌کنید. این راهکار با جریان‌های GitOps و CI/CD هم‌خوان است و می‌تواند در کنار ابزارهایی مانند Helm یا Kustomize به‌عنوان جایگزین یا مکمل، مدیریت پیکربندی را شفاف و مقیاس‌پذیر کند.

#Kubernetes #Jsonnet #k8s #GitOps #DevOps #InfrastructureAsCode #PlatformEngineering

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
gRPC Load Balancing Test Suite for Kubernetes & Istio

🟢 خلاصه مقاله:
این کار یک مجموعه آزمون متمرکز را معرفی می‌کند که برای ارزیابی و تقویت Load Balancing در gRPC روی Kubernetes و Istio طراحی شده است. این مجموعه با تولید الگوهای ترافیکی کنترل‌شده و پوشش‌دادن سناریوهای واقعی مانند نوسان پادها، خرابی‌ها، تغییر توپولوژی و مقایسه حالتِ بدون مش (Kubernetes Service) و با مش (Istio)، توزیع درخواست‌ها، تأخیر p50 تا p99.9، نرخ خطا و زمان بازیابی را اندازه‌گیری می‌کند. سیاست‌های رایج مانند round-robin، pick-first، weighted و locality-aware و همچنین سلامت‌سنجی، مدیریت outlier و backoff ارزیابی می‌شوند تا پیکربندی کلاینت و سیاست‌های مش بهینه شوند. با ادغام در Prometheus، Grafana و OpenTelemetry، نتایج به‌صورت قابل تکرار در خوشه‌ها و CI قابل پایش است. در نهایت، راهنمای عملی برای انتخاب سیاست مناسب، تنظیم connection pool، timeout و retry، و درک اثر mTLS و سیاست‌های Istio ارائه می‌شود و یک چک‌لیست آمادگی gRPC به کاهش ریسک و بهبود پایداری در مقیاس کمک می‌کند.

#gRPC #Kubernetes #Istio #LoadBalancing #ServiceMesh #PerformanceTesting #DevOps

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
How Kubernetes Pod Priority and Preemption Work

🟢 خلاصه مقاله:
Kubernetes با استفاده از PriorityClass برای هر Pod اولویت تعیین می‌کند و kube-scheduler ابتدا Pods با اولویت بالاتر را زمان‌بندی می‌کند. اگر منابع کافی پیدا نشود، مکانیزم Preemption فعال می‌شود: scheduler روی یک Node کاندید بررسی می‌کند که با حذف Podهای کم‌اولویت‌تر (و بدون نقض PodDisruptionBudget) آیا می‌توان جا باز کرد یا نه. Pods با اولویت برابر یا بالاتر هرگز قربانی نمی‌شوند، و با PreemptionPolicy: Never می‌توان از ایجاد Preemption توسط یک Pod جلوگیری کرد. علاوه بر زمان‌بندی، در وضعیت کمبود منبع روی Node، kubelet در صورت نیاز معمولاً Podهای کم‌اولویت را زودتر Evict می‌کند تا سرویس‌های مهم پایدار بمانند. برای بهره‌گیری امن، چند PriorityClass مشخص (مثلاً system-critical، high، standard، batch) تعریف کنید، همراه با requests/limits مناسب، PDB برای حفاظت سرویس‌های حیاتی، و ResourceQuota؛ و رفتار Preemption را در محیط staging آزمایش کنید.

#Kubernetes #Pod #PriorityClass #Preemption #Scheduler #CloudNative #DevOps #SRE

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
k8sgpt: Kubernetes analyzer

🟢 خلاصه مقاله:
k8sgpt یک ابزار متن‌باز برای تحلیل خوشه‌های Kubernetes است که با اسکن منابع و رویدادها، خطاها و پیکربندی‌های نادرست را شناسایی کرده و آن‌ها را به زبان ساده توضیح می‌دهد. این ابزار با تمرکز بر تشخیص و تریاژ، دلایل احتمالی مشکل و مراحل پیشنهادی رفع را ارائه می‌کند و زمان رفع اختلال را کاهش می‌دهد. k8sgpt برای تیم‌های SRE، مهندسان پلتفرم و توسعه‌دهندگان مفید است و پیچیدگی Kubernetes را در عملیات روزمره و مدیریت رخدادها قابل‌فهم‌تر می‌کند. کد و مستندات آن در GitHub در دسترس است.

#Kubernetes #k8sgpt #DevOps #SRE #AIOps #Troubleshooting #OpenSource #CloudNative

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
Deploying a .NET Weather Forecast App to AKS Using GitHub Actions and Argo CD

🟢 خلاصه مقاله:
در این آموزش، به نحوه استقرار برنامه پیش‌بینی هواشناسی مبتنی بر .NET بر روی سرویس AKS (Azure Kubernetes Service) پرداخته شده است. ابتدا با استفاده از GitHub Actions، روند ساخت و بارگذاری کانتینر صورت می‌گیرد. GitHub Actions به عنوان یک ابزار قدرتمند برای اتوماسیون عملیات‌های CI/CD، فرآیند ساخت تصاویر داکر و ارسال آن‌ها به مخزن را به صورت خودکار انجام می‌دهد. این کار باعث صرفه‌جویی در زمان و کاهش خطاهای انسانی می‌شود و تیم توسعه را قادر می‌سازد تا به سرعت نسخه‌های جدید برنامه را منتشر کند.

در مرحله بعد، برای مدیریت استقرار و همگام‌سازی برنامه‌ها، از آرجو سی‌دی (Argo CD) استفاده می‌شود. این ابزار متن‌باز به صورت مستمر وضعیت کلاستر Kubernetes را زیر نظر دارد و در صورت تغییرات، به صورت خودکار برنامه‌ها را به‌روزرسانی می‌کند. ترکیب GitHub Actions و Argo CD، یک فرآیند CI/CD قدرتمند و کارآمد فراهم می‌آورد که امکان مدیریت آسان‌تر و سریع‌تر استقرار برنامه‌ها در فضای ابری را فراهم می‌سازد.

در نتیجه، این روش امکان راه‌اندازی سریع و مطمئن برنامه‌های کاربردی بر روی AKS را فراهم می‌کند، به ویژه برای پروژه‌هایی که نیازمند بروزرسانی‌های مداوم و مدیریت آسان هستند. با استفاده از این استراتژی، توسعه‌دهندگان می‌توانند بر روی بهبود ویژگی‌های نرم‌افزار تمرکز کنند در حالی که فرآیند استقرار به صورت خودکار و بهینه انجام می‌شود.

#کابردی #استقرار_خودکار #AzureKubernetes #DevOps

🟣لینک مقاله:
https://ku.bz/yj4-3B2y-


👑 @DevOps_Labdon