Kubernetes ConfigMaps و Secrets: آنها چه هستند و چه زمانی از آنها استفاده کنیم؟

نقض داده ها تقریباً همیشه ناشی از خطای انسانی است، بنابراین امنیت همیشه با پیکربندی کانتینر کارآمد شروع می شود. Kubernetes ConfigMaps و Secrets دو شی کلیدی هستند که می توانند به شما کمک کنند تا داده های پیکربندی را به صورت ایمن ذخیره کنید.
برای آشنایی با نحوه عملکرد ConfigMaps و Secrets، و اینکه آیا آنها با CAST AI تعامل دارند و چه معنایی برای امنیت پیکربندی کلی شما دارد، ادامه دهید.
Kubernetes ConfigMaps چیست؟
ConfigMap یک شی API است که داده های پیکربندی را برای اشیاء دیگر ذخیره می کند. این به شما امکان می دهد پیکربندی خاص محیط را از تصاویر کانتینر جدا کنید، بنابراین جابجایی برنامه های خود آسان تر می شود.
منبع ConfigMap API داده های پیکربندی را به صورت جفت کلید-مقدار ذخیره می کند. این اطلاعات را می توان در پادها مصرف کرد یا تنظیمات مربوط به سایر اجزای سیستم مانند کنترلرها را فراهم کرد.
Kubernetes ConfigMaps عمدتاً برای پیکربندی تنظیمات کانتینرهایی که در یک pod در فضای نام یکسان اجرا می شوند استفاده می شود. شما می توانید مشخصات pod را بنویسید که به یک ConfigMap اشاره می کند و کانتینرهای آن pod را بر اساس داده های ConfigMap آن پیکربندی می کند.
شی ConfigMap باید قبل از اینکه به آن در مشخصات پاد ارجاع دهید وجود داشته باشد، در غیر این صورت پاد شروع نمی شود.
چرا از Kubernetes ConfigMaps استفاده کنیم؟
بسیاری از برنامهها به دادههای پیکربندی مورد استفاده در زمان اولیه یا زمان اجرا متکی هستند. این فرآیند اغلب به تنظیم مقادیر اختصاص داده شده به پارامترهای پیکربندی نیاز دارد – و Kubernetes از ConfigMaps برای تزریق پادهای برنامه با داده های پیکربندی استفاده می کند.
جدا نگه داشتن داده های پیکربندی از کد برنامه شما یکی از بخش های اساسی متدولوژی برنامه دوازده عاملی است.1. این به شما امکان می دهد به راحتی پیکربندی را بسته به محیط (توسعه، تولید، آزمایش) تغییر دهید و به صورت پویا تغییرات را در زمان اجرا اعمال کنید.
یک ConfigMap همچنین محرمانه یا رمزگذاری را ارائه نمی دهد. اگر دادههایی که میخواهید در ConfigMap ذخیره کنید محرمانه هستند، Kubernetes Secrets برای این کار بسیار مناسبتر خواهد بود.
اسرار Kubernetes چیست؟
مشابه ConfigMaps، Kubernetes Secrets اشیاء API هستند که به طور خاص برای ذخیره داده های محرمانه ساخته شده اند.
Kubernetes Secrets حاوی مقادیر کمی از داده های حساس مانند رمزهای عبور، نشانه ها یا کلیدها است. این نوع اطلاعات ممکن است در مشخصات غلاف یا تصویر ظرف قرار داده شود. با این حال، به لطف یک Secret، می توانید داده های محرمانه خود را جدا از کد برنامه خود نگه دارید.
شما می توانید یک Secret مستقل از غلافی که از آن استفاده می کند ایجاد کنید. این توانایی خطر قرار گرفتن داده ها در فرآیند ایجاد و ویرایش پادهای شما را کاهش می دهد.
بسته به نوع داده ای که می خواهید خصوصی نگه دارید، انواع مختلفی از Secrets وجود دارد که می توانید انتخاب کنید. پرکاربردترین نوع آن است مات برای مدیریت داده های دلخواه تعریف شده توسط کاربر. برای احراز هویت اولیه، انتخاب رایج این است پایه-معتبر.
ConfigMaps و Secrets در مقابل CAST AI
اگر میخواهید توصیههای نظارت بر هزینه و بهینهسازی CAST AI را دریافت کنید، اتصال خوشه خود یک مرحله ضروری است. همین اقدام اسکن آسیب پذیری امنیتی و بررسی بهترین عملکرد را باز می کند.
این به نصب یک عامل فقط خواندنی نیاز دارد که گاهی اوقات سؤالاتی را در مورد اینکه چگونه ممکن است بر امنیت پیکربندی شما تأثیر بگذارد ایجاد می کند – بنابراین آنچه باید بدانید در اینجا آمده است.
اول از همه، می توانید کدهای عامل را در گیت هاب قبل از اجرای آن بررسی کنید.
اسکریپت a اجرا می شود کوبکتل دستوری که بر خوشه ای که به CAST AI متصل می کنید تأثیر می گذارد، اما هرگز به هیچ یک از داده های پیکربندی شما، از جمله ConfigMaps و Secrets، برخورد نمی کند.
هنگام اتصال خوشه برای اولین بار، می توانید انتظار داشته باشید که عامل عناصر زیر را ایجاد کند:
- فضای نام/کاستای-عامل
- حساب سرویس/کاستای-عامل
- clusterrole.rbac.authorization.k8s.io/castai-agent
- clusterrolebinding.rbac.authorization.k8s.io/castai-agent
- role.rbac.authorization.k8s.io/castai-agent
- rolebinding.rbac.authorization.k8s.io/castai-agent
- مخفی/کاستای-عامل
- configmap/castai-agent-autoscaler
- deployment.apps/castai-agent
پس از نصب، عامل متادیتا را در مورد بارهای کاری، نامها، پادها و گرههای شما میکشد تا کارایی خوشه شما را تعیین کند. ClusterRole عامل فقط اجازه دریافت، فهرست کردن و تماشای منابع محدود را دارد.
علاوه بر این، عامل فقط خواندنی نمی تواند پیکربندی شما را تغییر دهد و هیچ خطری برای خرابی ایجاد نمی کند. استفاده از CPU، حافظه و شبکه آن حداقل است و معمولاً کمتر از خطای گرد کردن محاسبه است.
هنگامی که تصمیم به حذف آن از کلاستر خود گرفتید، می توانید این کار را با یک دستور در ترمینال انجام دهید:
kubectl delete namespace castai-agent
امنیت پیکربندی Kubernetes را افزایش دهید
همانطور که گفته شد، اتصال خوشه خود به CAST AI به شما امکان می دهد به دو مجموعه هدف مجزا دست یابید.
آنچه ممکن است در ابتدا شما را به این پلتفرم آورده باشد، ایده های قدرتمند بهینه سازی هزینه و عملکرد برای خوشه شما است. کاربران CAST AI معمولاً حدود 65٪ از قبض Kubernetes معمولی خود صرفه جویی می کنند.
اما جدای از آن، این پلتفرم همچنین به شما امکان می دهد تا به طور خودکار امنیت پیکربندی خوشه خود را بررسی و بهبود دهید.
گزارش امنیتی CAST AI خوشه شما را برای آسیبپذیریهای احتمالی اسکن میکند، وضعیت آن را با بهترین شیوههای صنعت مقایسه میکند، و راههایی برای ایمن سازی بهینه آن پیشنهاد میکند. شما می توانید مستندات آن را در اینجا بیابید.
میتوانید از خوشه نمایشی CAST AI برای بررسی گزارش امنیتی بدون اتصال خوشه خود استفاده کنید. ثبت نام کنید و در صفحه اصلی در دسترس خواهد بود.
به تو
Kubernetes ConfigMaps و Secrets خطر افشای دادههای خوشهای را با جدا کردن کد برنامه و پیکربندیها کاهش میدهند.
در حالی که ConfigMaps برای ذخیره جزئیات پیکربندی غیر حساس در جفت های کلید-مقدار کافی است، برای داده های حساس Secrets بهتر عمل می کند، زیرا امکان رمزگذاری و محدودیت دسترسی را فراهم می کند. فعال کردن RBAC به شما امکان میدهد بیشتر افرادی را که میتوانند Secrets و ConfigMaps شما را بازیابی کنند محدود کنید و احتمال تغییرات پیکربندی غیرمجاز را کاهش دهید.
با افزودن گزارش امنیتی CAST AI به استراتژی، میتوانید به سرعت آسیبپذیریهای احتمالی را در پیکربندیهای خود شناسایی کنید و وضعیت خود را مطابق با استانداردهای صنعت بررسی کنید.
اکنون خوشه خود را اسکن کنید و نحوه انجام آن را بیابید پیکربندی خود را به بهترین نحو ایمن کنید
گزارش امنیت خوشه خود را در 5 دقیقه دریافت کنید، بدون نیاز به کارت اعتباری.
شروع کنید