پیاده سازی Datadog برای Kubernetes – DEV Community
در این مرحله، نظارت و مشاهده چیزی است که برای همه در دسترس است. با ابزارها، پلتفرمها و ارائهدهندگان ابری مختلف که دارای ابزارهای نظارت و قابلیت مشاهده داخلی هستند، دیگر واقعاً بهانهای برای عدم اجرای نظارت و قابلیت مشاهده مناسب وجود ندارد.
با این حال، این سوال پیش می آید – با همه گزینه ها، کدام یک را باید انتخاب کنید؟
در این پست وبلاگ، با یکی از گزینههای «تجاری»، Datadog آشنا میشوید.
Datadog چیست؟
قبل از صحبت در مورد Datadog، اجازه دهید آنچه را که مانیتورینگ و مشاهده پذیری هستند، بررسی کنیم.
مانیتورینگ نحوه نگاه و مشاهده داده ها است.
مشاهده پذیری انجام یک عمل با آن داده است.
برای مثال، نظارت به این صورت است که بتوانید به نمودارها و نمودارها در زمان واقعی یا قبل نگاه کنید تا ببینید در یک محیط چه اتفاقی می افتد. این توانایی را به شما می دهد که بگویید “به آن نگاه کنید – CPU در حال ضربه زدن به 99٪ است”. مشاهده پذیری آن داده ها را می گیرد و کاری در مورد آن انجام می دهد. “CPU 99٪ است، ما باید اتوماسیون را در محل قرار دهیم تا به طور خودکار این خوشه را با توجه به محدودیت منابع، مقیاس کنیم.”
معمولاً این موضوع را می بینید که به صورت زیر تقسیم شده است:
- نظارت بر
- سیاههها
- آثار
- معیارهای
- APM
مانیتورینگ نمودارها / تصاویر است. مشاهده پذیری همه چیز دیگری در لیست است.
به طور معمول، برای انجام این کار به چندین ابزار نیاز دارید. Grafana یک ابزار نظارت و Prometheus ابزاری برای جمع آوری معیارها است. این بدان معناست که شما به ابزارهایی برای ردیابی، ورود به سیستم و APM نیاز دارید. با این کار، شما به مجموعه ای از 4-5 ابزار مختلف فقط برای نظارت و مشاهده نگاه می کنید. با این حال، ابزارهایی وجود دارند که همه موارد استفاده را در یک پلتفرم ترکیب میکنند. یکی از این پلتفرم ها Datadog است.
Datadog به شما این امکان را می دهد که تمام نظارت و مشاهده خود را در یک مکان انجام دهید.
قیمت گذاری
در ابتدای این پست وبلاگ، ممکن است متوجه بیت گزینه “تشکیلات” شده باشید. اگرچه این یک استاندارد صنعتی خاص نیست، معمولاً ابزارها/پلتفرمها را میبینید که به دو دسته تقسیم میشوند:
- شرکت (پرداخت و پشتیبانی شده)
- خانگی (متن باز)
با همه راه حل های سازمانی، هزینه ای وجود خواهد داشت. با منبع باز، هزینه “قیمت” وجود نخواهد داشت، اما همچنان هزینه وجود دارد. اگر راه حل سازمانی را دنبال می کنید، در حال پرداخت پول فروشنده هستید. اگر به مسیر داخلی بروید، به مهندسان پول می دهید تا آن را برای شما مدیریت کنند. در هر صورت، شما پول می پردازید. در آن مرحله واقعاً یک ترجیح شخصی است. هیچ پاسخ درست یا غلطی وجود ندارد
قیمت گذاری Datadog به دو بخش تقسیم می شود:
- قیمت گذاری برای خود داده داگ
- قیمت برای جایی که دادهها را اجرا میکنید.
قیمت گذاری Datadogs بسیار ساده است. 15.00 دلار آمریکا برای هر گره. ورود سیاهههای مربوط از $0.10 سنت USD. این البته بسته به محیط شما می تواند گران باشد.
جایی که همه چیز از نظر درک نحوه قیمت گذاری آن دشوار است، جایی است که شما در حال اجرا هستید و چقدر داده مصرف می کنید. به عنوان مثال، درک تعداد گره های شما ساده است، اما آیا می دانید چند گیگابایت گزارش در حال تولید است؟ چند معیار در حال تصویب است؟ اینجاست که باید ابزاری مانند این را آزمایش و خطا کنید تا ببینید اگر آن داده ها را ندارید هزینه های واقعی شما چقدر خواهد بود.
همچنین هزینه اجرای نمایندگان نیز وجود دارد. برای مثال، ادغام Datadogs AWS – از آنجایی که دادهها را از Datadog به نمونه AWS شما به عقب و جلو میفرستد، هزینههایی متحمل میشود. باز هم، همه چیز بستگی به مقدار داده ای دارد که به عقب و جلو می رود.
در اینجا می توانید اطلاعات بیشتری در مورد قیمت گذاری Datadog کسب کنید: https://www.datadoghq.com/pricing/
عوامل Datadog (گره و کلاستر)
هنگام استفاده از Datadog برای Kubernetes، دو نوع عامل وجود خواهد داشت – عامل های خوشه ای و عامل های گره.
عامل خوشه داده ها را برای سلامت کلی و عملکرد خود خوشه جمع آوری می کند. عوامل گره روی هر گره کارگر اجرا میشوند و دادههای مربوط به گرههای کارگر را جمعآوری میکنند. به عنوان مثال، اگر ده (10) گره کارگر در خوشه خود داشته باشید، ده عامل گره و یک عامل خوشه وجود خواهد داشت.
در بخش بعدی، نحوه نصب عوامل Datadog را در Kubernetes خواهید آموخت.
نصب Datadog در Kubernetes
هنگامی که برای اولین بار برای Datadog ثبت نام می کنید، گزینه ای برای شروع نصب بر روی هر پلتفرمی که می خواهید دارید. یکی از گزینه ها Kubernetes است.
مشکل این است که دستورالعمل های نصب به درستی کار نمی کنند. در اصل فقط به شما می گوید که یک Helm Chart را با a اجرا کنید values.yaml
فایل، اما به شما نمی گوید که چه مقادیری باید در نمودار Helm داشته باشید.
در زیر دستوری وجود دارد که می توانید از آن برای نصب هر آنچه که برای نظارت و مشاهده موفق Kubernetes با Datadog نیاز دارید استفاده کنید.
helm install datadog -n datadog \
--set datadog.site='datadoghq.com' \
--set datadog.clusterName='' \
--set datadog.clusterAgent.replicas='2' \
--set datadog.clusterAgent.createPodDisruptionBudget='true' \
--set datadog.kubeStateMetricsEnabled=true \
--set datadog.kubeStateMetricsCore.enabled=true \
--set datadog.logs.enabled=true \
--set datadog.logs.containerCollectAll=true \
--set datadog.apiKey='' \
--set datadog.processAgent.enabled=true \
datadog/datadog --create-namespace
بیایید تجزیه و تحلیل کنیم که هر یک از این پرچم ها چه می کنند.
- پرچم clusterName برای مشخص کردن نام خوشه Kubernetes شما است
- پرچمهای clusterAgent.replicas و clusterAgent.createPodDistruptionBudget برای تأیید در دسترس بودن بالا برای عامل خوشه هستند.
- kubeStateMetricsEnabled و kubeStateMetricsCore برای kube-state-metrics نصب می شوند.
- logs برای اطمینان از اینکه لاگ ها از خوشه شما گرفته می شوند.
- ContainerCollectAll جمع آوری تمام اطلاعات از هر کانتینری است که در Pods اجرا می شود.
- apiKey کلید API Datadog شماست.
- processAgent.enabled برای پیکربندیهای کانتینر زنده است تا ببیند در زمان واقعی چه اتفاقی در محیط شما میافتد.
پس از اجرای نمودار Helm بالا با مقادیر مناسب خود (کلید API و نام خوشه برای محیط خود)، باید خروجی مشابه تصویر زیر را مشاهده کنید.
بررسی داده ها
اکنون که عوامل Datadog در خوشه شما مستقر شده اند، اکنون می توانید داده ها را در رابط کاربری Datadog مشاهده کنید.
ابتدا وارد Datadog شوید و به Infrastructure —> Kubernetes بروید.
سپس، خوشه خود را به همراه معیارهای مختلف و سایر داده های موجود در حال اجرا خواهید دید.