کتاب Logs and Telemetry: Using Fluent Bit, Kubernetes, streaming and more (ثبت وقایع و تلهمتری: راهکارهایی با فلینت بیت، کوبرنتیز و جریانسازی داده) یک راهنمای عملی برای نظارت بر محیطهای ابری بومی و سنتی با استفاده از ابزار قابلیت مشاهدهپذیری Fluent Bit است.
کتاب Logs and Telemetry شما را از مبانی جمعآوری لاگهای اپلیکیشن تا فیلتر کردن، مسیریابی، غنیسازی و تبدیل لاگها، متریکها و ردگیریها هدایت میکند. با استفاده از مثالها و سناریوهای واقعی، این کتاب به شما نشان میدهد که چگونه میتوانید Fluent Bit را با Kubernetes، Prometheus، OpenTelemetry و سایر فناوریهای متن باز یکپارچه کنید.
در ادامه مقدمهای از کتاب Logs and Telemetry را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Logs and Telemetry:
ایده نوشتن در مورد Fluent Bit اولین بار حدود سال ۲۰۲۱ به ذهنم رسید. در آن زمان، من در حال نوشتن کتابی در مورد Fluentd برای انتشارات Manning (تحت عنوان “لاگگیری در عمل”) بودم و با ادواردو سیلوا پریرا (خالق Fluent Bit) و آنوراگ گوپتا (رهبر Fluentd) صحبت کرده بودم.
اضافه کردن مطالب مربوط به Fluent Bit به کتاب “لاگگیری در عمل” گزینه عملی به نظر نمیرسید و از طرفی مطمئن نبودم که بتوانم برای نوشتن کتابی جداگانه درباره آن دلیل کافی بیاورم.
هرچند میدیدم که گرایش به سمت OpenTelemetry و تأثیر آن بر جهتگیری تکنولوژی رو به افزایش است، اما هنوز استانداردهایش تثبیت نشده بود، و تصور میکردم که Fluentd پیشتاز درگیر شدن با استاندارد OpenTelemetry Protocol (OTLP) باشد. اما ادواردو و آنوراگ پیش از بقیه متوجه پیشرفتهایی شده بودند که منجر به استفاده گستردهتر از Fluent Bit میشد. آنها متوجه افزایش استفاده از باینریهای بومی در فضای Kubernetes شدند که حجم کمتری داشته و عملکردی سریعتر ارائه میدهند. (با وجود اینکه، در مقیاس بزرگ، صرفهجویی حتی در ۵ درصد از منابع پردازشی نیز سودمند است.)
تا اوایل ۲۰۲۳، فراموش کرده بودم نوشتن یک کتاب چقدر زمانبر است و با تردیدی کمتر میدیدم که Fluent Bit در حال کسب سرعت زیادی است. همچنین بهتر درک کردم که چگونه یک کتاب جدید میتواند با “لاگگیری در عمل” متفاوت و متمم آن باشد.
حالا که کتاب Logs and Telemetry نوشته شده، به کارهای قبلی مرتبط است اما کاملاً مستقل و مجزا است، درست مثل Fluentd و Fluent Bit – مستقل و مکمل. فکر میکنم زمانبندی انتشار کتاب عالی است.
نسخه ۳ از Fluent Bit بدون ایجاد هیچ تغییری نسبت به نسخه ۲ منتشر شده است. از بسیاری جهات، نسخه ۱.۹ و ۲ زیرساخت کلیدی را برای برآورده کردن نیازهای کاربران در زمان تکامل OpenTelemetry فراهم کردند، استانداردها تثبیت شدند و اکنون Fluent Bit در جریان اصلی قرار گرفته است. نوآوریها در زمینه “قابلیت مشاهده” (Observability) به شکل eBPF (فیلتر بسته برکلی توسعه یافته) در حال ظهور هستند، که Fluent Bit به طور کامل توانایی مدیریت آن را خواهد داشت.
کتاب Logs and Telemetry با مبانی شروع میشود و به تمام ویژگیهای مهم نسخههای ۲ و ۳ میپردازد. ویژگیهایی که تنها در نسخه ۳ موجود هستند، مشخص شدهاند. اما پیکربندی Fluent Bit هیچ تغییر شکستی نداشته است، بنابراین اگرچه همه ویژگیها و گزینههای پیکربندی در دسترس نخواهند بود، اصول توضیح داده شده در این کتاب همچنان برای نسخههای قبل از ۲ نیز صادق خواهد بود.
بنابراین، اگر در سازمانی کار میکنید که در مورد ارتقا به نسخههای اخیر بسیار محتاط است، کتاب Logs and Telemetry همچنان مفید خواهد بود. اگر تازه با پروژههای Fluent آشنا شدهاید، این کتاب جای مناسبی برای شروع سفر یادگیری شماست.
درباره کتاب Logs and Telemetry
کتاب “لاگها و تلهمتری” برای هر کسی که درگیر وظایف عملی توسعه، پیکربندی و اجرای راهحلهای فناوری اطلاعات است، مناسب است. یکی از پرکاربردترین موارد استفاده از Fluent Bit در اکوسیستم Kubernetes است، بنابراین کتاب توجه زیادی به Kubernetes و کانتینرها دارد. اما فریب نخورید؛ مانند بسیاری از فناوریهای بومی ابری، این فناوری نیز در محیطهای IT سنتی کاربرد دارد، بنابراین کتاب Logs and Telemetry به ویژگیهایی که از آنها پشتیبانی میکند نیز نگاه میکند.
مانیتورینگ مدرن بین مانیتورینگ زیرساخت، لاگگیری اپلیکیشن و معیارهای عملکردی عملیاتی تفکیک نمیکند. ما تکنولوژی داریم که میتواند در زمینه DevOps یا مهندسی پلتفرم، و همچنین سازمانهای سنتی که مسئولیتهای زیرساخت و اپلیکیشن را از هم جدا میکنند، استفاده شود. در دنیای Kubernetes، احتمالاً به اندازه انواع مختلف Kubernetes، نظرات مختلفی در مورد آنچه در مانیتورینگ Kubernetes دخیل است، وجود دارد.
کتاب Logs and Telemetry به تمام ویژگیهای اصلی Kubernetes که در زمان نگارش این کتاب در دسترس هستند، نگاه میکند، اما انتظار نداشته باشید که یک راهنمای جامع در مورد، مثلاً ساخت چارتهای Helm برای Fluent Bit باشد. (برای این کار، ابتدا کتابی در مورد Helm بخوانید و سپس این کتاب را بخوانید. این به شما درک نحوه بستهبندی Fluent Bit را میدهد، که فرقی با هر اپلیکیشن دیگری ندارد.) بسیاری از ما با پشتههای از پیش بستهبندی شده Kubernetes کار میکنیم تا اینکه محیطهای Kubernetes را از ابتدا بسازیم.
این پیکربندیها نظر محور هستند، بنابراین اگر میدانید که چگونه پیکربندی شدهاند، کتاب Logs and Telemetry شما را با درک لازم برای ضبط آن متریکها، لاگها و ردگیریها مجهز میکند. در سادهترین شکل خود، Kubernetes یک فرآیند اپلیکیشن هوشمند و بسیار قابل پیکربندی است که روی یک سیستم عامل قابل پیکربندی اجرا میشود.
با در نظر داشتن این موارد و با دیدن بسیاری از ویژگیهای استاندارد Fluent Bit، به شما کمک خواهد کرد. بخش زیادی از کتاب کارها را به صورت محلی اجرا میکند تا دیدن آنچه در حال رخ دادن است سادهتر شود. ما نمیخواهیم تجربه Kubernetes مانعی برای درک آنچه میتوانید با Fluent Bit انجام دهید، باشد.
توسعهدهندگان و افرادی که درگیر عملیات هستند، از این کتاب بهرهمند خواهند شد، اما معماران نیز همینطور. ما هنر امکانپذیر را آشکار خواهیم کرد و نشان خواهیم داد که چگونه Fluent Bit میتواند چشمانداز IT را سادهسازی کند تا بیشترین بهره را از آخرین تفکرات در مورد قابلیت مشاهده پذیری ببرد.
نحوه سازماندهی کتاب Logs and Telemetry: یک نقشه راه
این کتاب برای همراهی با “لاگگیری در عمل” نوشته شده است، اما مانند همه دنبالههای خوب، نیازی نیست کتاب اول را خوانده باشید تا از کتاب دوم لذت ببرید و بهرهمند شوید. “لاگگیری در عمل” به برخی از ملاحظات معماری و طراحی میپردازد که به طور مساوی برای Fluent Bit و Fluentd اعمال میشود، و این محصولات با هم قابل تعامل هستند.
کتاب Logs and Telemetry از ۳ بخش در ۱۱ فصل تشکیل شده است. بخش اول کتاب Logs and Telemetry ایدههای بزرگ را مطرح میکند:
- فصل ۱ ایدهها و پیشینه Fluent Bit را معرفی میکند و به رابطه آن با اکوسیستم گستردهتر قابلیت مشاهدهپذیری و اپلیکیشن میپردازد. ما روندهای صنعت را بررسی میکنیم که در حال شتاب دادن و هدایت رشد در پذیرش Fluent Bit هستند.
- فصل ۲ ما را در پیکربندی و اجرای Fluent Bit راهنمایی میکند. ما یک پیکربندی ساده را اجرا میکنیم که هر توسعهدهندهای پیادهسازی میکند: “سلام، دنیا”.
بخش دوم کتاب Logs and Telemetry ما را از “سلام، دنیا” به دیدن و استفاده از قابلیتهای اصلی Fluent Bit میبرد، که به ما امکان میدهد بسیاری از نیازهای خود را برطرف کنیم:
- فصل ۳ اولین نگاه عمیق ما به Fluent Bit و ویژگیهایی است که در دنیای واقعی به آنها نیاز خواهیم داشت. برای انجام هر کاری، به دادههایی به شکل لاگها، ردگیریها و متریکها نیاز داریم، بنابراین فصل ۳ رایجترین منابع را بررسی میکند.
- کانتینرها و Kubernetes، اول از همه، منابع رویدادها و دادههای غنیسازی برای Fluent Bit هستند، بنابراین فصل ۴ هر دو را پوشش میدهد. علاوه بر این، فصل به فیلترها میپردازد، که فصل ۷ به طور عمیقتر به آنها بازمیگردد.
- باید دادههای رویداد (لاگها، متریکها و ردگیریها) را جایی قرار دهیم. فصل ۵ به نحوه خروجی دادن متریکها، ردگیریها و لاگها میپردازد.
- رویدادها ممکن است تا حدی یا کاملاً بدون ساختار باشند، اما بدون ساختار، درک معنای آنها دشوار است. در فصل ۶، رویدادها را تجزیه میکنیم. میتوانیم از پارسرها به چندین روش استفاده کنیم، از قالببندی گرفته تا تبدیل رشتهها و مدیریت کاراکترهای کدگذاری شده.
- فصل ۷ ما را از پارسرها به فیلترها میبرد. حالا که میتوانیم معنای رویدادهای خود را استخراج کنیم، باید نظم و ساختار را بر آنها تحمیل کنیم، آنها را با زمینه اضافی غنی کنیم و آنها را دستکاری کنیم تا به درستی مسیریابی یا حذف شوند.
بخش سوم کتاب Logs and Telemetry به گزینههای پیشرفته میپردازد:
- فصل ۸ به پردازش جریان با Fluent Bit میپردازد. ما از پردازندههای جریان برای استخراج دادههای جدید معنادار با استفاده از نحو مبتنی بر SQL و کار با چندین رویداد در یک سری زمانی استفاده میکنیم.
- فصل ۹ به قابلیت پردازنده Fluent Bit برای ادغام منطق سفارشی در پیکربندی پلاگینهای ورودی و خروجی میپردازد. در نهایت، با وضعیتی مواجه خواهیم شد که باید یک پلاگین مناسب بسازیم. برای آماده شدن، باید گزینههای مختلف برای ساخت پلاگینهای سفارشی را بررسی کنیم.
- فصل ۱۰ مفهوم پلاگینهای سفارشی را به واقعیت تبدیل میکند و نحوه تعامل پلاگینها با هسته Fluent Bit را بررسی میکند، زیرا ما در حال ساخت پلاگینهای ورودی و خروجی خود هستیم.
- فصل ۱۱ نشان میدهد که چگونه میتوان Fluent Bit را در یک مورد استفاده سازمانی اعمال کرد. ما بررسی خواهیم کرد که چگونه Fluent Bit میتواند بدون اختلال غیرضروری به یک سازمان کمک کند.
ضمیمهها برای پوشش تنظیم بلوکهای ساختمانی شخص ثالث که برای اجازه دادن به ما برای تمرین Fluent Bit نیاز داریم، ارائه شدهاند. آنها همچنین جزئیات اطلاعات مرجع اضافی و بینشها را ارائه میدهند:
- ضمیمه A جزئیاتی در مورد تنظیم ابزارها و خدماتی که برای اجرای تمرینهای کتاب Logs and Telemetry لازم است، ارائه میدهد.
- ضمیمه B بسیاری از منابع اضافی و جداول مرجع را فهرست میکند.
- ضمیمه C مروری بر تفاوتهای بین Fluent Bit و Fluentd ارائه میدهد.
سرفصلهای کتاب Logs and Telemetry:
- Logs and Telemetry
- brief contents
- contents
- foreword
- preface
- acknowledgments
- about this book
- about the author
- about the cover illustration
- Part 1: From concepts to running Fluent Bit
- 1 Introduction to Fluent Bit
- 2 From zero to “Hello, World”
- Part 2: Digging deeper
- 3 Capturing inputs
- 4 Getting inputs from containers and Kubernetes
- 5 Outputting events
- 6 Parsing to extract more meaning
- 7 Filtering and transforming events
- Part 3: Plugins and queries
- 8 Stream processors for time series calculations and filtering
- 9 Building processors and Fluent Bit extension options
- 10 Building plugins
- 11 Putting Fluent Bit into action: An enterprise use case
- appendix A-Installations
- A.1 Tool installation overview
- A.2 Downloading book resources
- A.3 Prepping Linux
- A.4 Fluent Bit
- A.5 Docker
- A.6 Kubernetes
- A.7 LogSimulator
- A.8 WireMock
- A.9 Postman
- A.10 Postgres
- A.11 MySQL
- A.12 Prometheus
- A.13 jq
- appendix B-Useful resources
- B.1 Standard plugins based on platform
- B.2 Predefined parsers
- B.3 Multiline parsers
- B.4 Sources of predefined regular expressions
- B.5 Plugins supporting record accessor
- B.6 Stream processor functions
- B.7 Reserved attribute names
- B.8 Expressing time
- B.9 Expressing data sizes
- B.10 Fluent Bit formatters
- B.11 Useful third-party tools
- B.12 Observability
- B.13 Helpful logging practices and resources
- B.14 Additional reading
- B.15 Web resources
- B.16 Fluent Bit resources
- B.17 Lua
- B.18 WASM and WASI
- B.19 C development resources
- B.20 Logging format definitions
- appendix C-Comparing Fluent Bit and Fluentd
- C.1 Technology differences
- C.2 Configuration capabilities
- C.3 Inputs and outputs
- C.4 Routing
- C.5 Buffering and internal data structure
- C.6 Streaming processing
- C.7 Conclusion
- index
جهت دانلود کتاب Logs and Telemetry میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.