531 subscribers
36 photos
5 videos
2 files
1.54K links
👑 DevOps Labdon

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

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
A Journey Through Kafkian SplitDNS in a Multitenant Kubernetes Offering

🟢 خلاصه مقاله:
** در یک محیط چندمستاجری Kubernetes، اتصال به Kafka می‌تواند پیچیده شود؛ هر مستاجر نیازها و مقصدهای متفاوتی دارد و تیم PaaS باید مدیریت ساده و پایدار باقی بماند. این مقاله توضیح می‌دهد چگونه تیم پلتفرم با تکیه بر DNS به‌جای کد سفارشی، الگوی split-DNS را برای Kafka پیاده‌سازی کرده است.

ایده اصلی این است: با استفاده از قالب‌های CoreDNS، نام‌های میزبان خاصِ broker درون کلاستر بازنویسی می‌شوند تا کلاینت‌ها همان‌جا به سرویس‌های درست برسند، بدون وابستگی به resolve شدن این نام‌ها در خارج از کلاستر. بدین‌ترتیب کنترل نام‌های قابل‌Override دست پلتفرم می‌ماند و تنظیمات کلاینت‌ها شکننده نمی‌شود.

برای واگذاری کنترل مقصد نهایی به مستاجران، از ExternalName استفاده شده است؛ هر مستاجر می‌تواند با تغییر مقدار ExternalName، نام‌های ثابت و درون‌کلاستری Kafka را به broker دلخواه—چه داخلی و چه بیرونی—اشاره دهد، بدون نیاز به بازسازی تصویر یا راه‌اندازی مجدد.

جمع‌بندی: این الگو با تکیه بر قابلیت‌های بومی Kubernetes، جداسازی مسئولیت‌ها، سادگی عملیاتی و مقیاس‌پذیری را فراهم می‌کند؛ البته با توجه به نکاتی مانند TTL و کش DNS، محدودسازی دامنه Override، مانیتورینگ خطاهای resolve و مستندسازی مسیر مهاجرت.

#Kubernetes #Kafka #DNS #CoreDNS #Multitenancy #ExternalName #PaaS #PlatformEngineering

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
Local DNS Server for Demos

🟢 خلاصه مقاله:
در این آموزش، به شما راهنمایی می‌کنیم چگونه یک سرور DNS محلی مخصوص محیط‌های نمایشی و آزمایشی راه‌اندازی کنید. این فرآیند به خصوص برای تیم‌هایی که نیاز دارند تا سامانه‌های مختلف را در قالب نمونه و آزمایشگاهی مدیریت کنند، بسیار مفید است. با استفاده از ابزارهای قدرتمند مانند dnsmasq و کانتینرهای Docker، می‌توانید به راحتی یک سرور DNS کارآمد و سفارشی بر روی سیستم خود ایجاد کنید که این امکان را می‌دهد تا به سرعت و به‌راحتی دامنه‌ها و آدرس‌های مورد نیاز را مدیریت و کنترل کنید.

در این راهنمای گام‌به‌گام، به تفصیل نحوه نصب و پیکربندی dnsmasq در محیط کانتینری Docker توضیح داده شده است. این روش نه تنها استفاده از منابع را بهینه می‌کند، بلکه امکان راه‌اندازی و مدیریت سریع سرور DNS در محیط‌های تست و توسعه را فراهم می‌آورد. بهره‌گیری از کانتینرهای Docker به شما این قابلیت را می‌دهد که بدون نیاز به تغییرات دائمی در سیستم‌عامل، سرور DNS خود را راه‌اندازی و پیکربندی کنید و در صورت نیاز به سادگی آن را خاموش یا مجدداً راه‌اندازی نمایید. در ادامه، تنظیمات مورد نیاز برای اختصاص دامنه‌ها و آدرس‌های آی‌پی خاص در سرور DNS محلی خود را نیز آموزش می‌دهیم تا بهترین بهره‌برداری را داشته باشید.

#سرورهای_محلی #DNS #دکر #تست

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
An 8-minute outage from a dead NLB and a JVM that cached DNS forever

🟢 خلاصه مقاله:
در این مطالعه موردی، رخدادی ثبت شده است که چگونه کش DNS در JVM، یکی از سرویس‌ها را به IPهای مرده یک AWS Network Load Balancer (NLB) محدود کرده و در نتیجه منجر به قطعی سرویس شد. این مشکل زمانی رخ داد که سرویس در حال مهاجرت بود و، به دلیل نگه‌داشتن طولانی‌مدت کش DNS، JVM نتوانست جایگزین‌های صحیح را پیدا کند و همچنان به IPهای قدیمی و غیرفعال ارجاع می‌داد. در نتیجه، سیستم برای حدود هشت دقیقه دچار اختلال شد که می‌توانست با تنظیم زمان زنده بودن (TTL) DNS به مدت ۳۰ ثانیه برطرف شود. با اصلاح این پارامتر، بک‌اپینگ بهتر و پایداری بیشتر در مقابل اینگونه مشکلات فراهم شد و سرویس‌ها بدون توقف در دسترس باقی ماندند.

در نهایت، این مطالعه نشان می‌دهد که نحوه مدیریت کش DNS در JVM و نحوه تنظیم TTL چقدر می‌تواند در جلوگیری از قطعی‌های غیرمنتظره نقش داشته باشد و اهمیت پیکربندی مناسب این فاکتورها در سیستم‌های توزیع‌شده و در حال مهاجرت را برجسته می‌کند.

#مدیریت_سیستم #DNS #خدمات_ابری #پایداری

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


👑 @DevOps_Labdon
🔵 عنوان مقاله
We Blamed CoreDNS for Weeks. The Real Culprit Was a Default We Never Questioned

🟢 خلاصه مقاله:
مدت‌ها ما یکی از مشکلات مربوط به DNS پادهای کوبرنتیز را به گردن CoreDNS می‌انداختیم، در حالی که در واقع علت اصلی مسئله چیزی بود که هرگز درباره‌اش تردید نکرده بودیم. این مشکل زمانی ظاهر می‌شد که درخواست‌های DNS در خوشه‌های Kubernetes دچار اختلال می‌شدند و حل این مشکل دشوار به نظر می‌رسید.

در مقاله‌ای که منتشر شده است، توضیح داده شده است که بسیاری از خطاهای موقت در حل نام‌های دامنه در محیط‌های کوبرنتیز، ناشی از تنظیمات پیش‌فرض ndots:5 است. این تنظیم بر نحوه جستجو و ترتیب پرس و جوهای DNS تاثیر می‌گذارد، و در برخی موارد، باعث بروز مشکلات در ریزپرس و پاسخ‌های ناقص می‌شود. علاوه بر آن، مشکل دیگری که در این حوزه مطرح شده است، مرتبط با مشکل سیستم‌عامل لینوکس و عملکرد قسمت کانتریک (conntrack) است که می‌تواند ارتباطات شبکه‌ای را دچار اختلال کند.

در راه‌حل‌هایی که این مقاله مطرح می‌کند، پیشنهاد شده است که تنظیمات ndots را کاهش داده و به ndots:2 تغییر دهید، و در کنار آن، از گزینه single-request-reopen برای کاهش ترافیک و بهبود پاسخ‌دهی DNS بهره ببرید. این تغییرات موجب می‌شوند تا درخواست‌های DNS سریع‌تر و دقیق‌تر پاسخ دهند و مشکلاتی مانند خطاهای مکرر در حل نام‌های دامنه کاهش یابد. در نتیجه، مشکلات موقت و مزاحم در عملکرد شبکه خوشه‌های Kubernetes، به میزان قابل توجهی کاهش می‌یابد و سیستم پایدارتر کار می‌کند.

در مجموع، این مقاله نشان می‌دهد که گاهی مشکلاتی که به نظر می‌رسید مربوط به نرم‌افزارهای اصلی مانند CoreDNS است، در اصل ناشی از تنظیمات نادرست یا پیش‌فرض‌هایی است که کمتر مورد توجه قرار می‌گیرند. با اصلاح این تنظیمات، می‌توان عملکرد DNS در Kubernetes را به طور قابل ملاحظه‌ای بهبود بخشید و از سردرگمی‌های بی‌پایان جلوگیری کرد.

Kubernetes #DNS #Linuz #پیکربندی

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


👑 @DevOps_Labdon