4. Unify your logs - what does it mean?
https://www.youtube.com/watch?v=aeGADcC-hUA - Fluentd Webinar: Best kept secret to unify logging on AWS, Docker, GCP, and
more!
6. How does it work?
https://blog.treasuredata.com/wp-content/uploads/2016/08/16.png
7. What’s wrong with Logstash?
Why don’t
you love
me?
http://www.wedoino.ch/wp-content/uploads/2014/01/logstash-187x300.png
8. Why is fluentd better then Logstash? (for us)
● First class citizen of Docker & Kubernetes
● One of Docker’s built-in logging driver
● Backed by the CNCF incubation program
● Used by some heavy kubernetes consumers
● Doesn’t need JVM
10. Local fluentd with docker-compose
Demo time
https://github.com/yaron-idan/efk-compose
11. Our current setup
● Fluentd@soluto
● Running on k8s
● Fluentd runs as a DaemonSet
● Tails all logs created by pods running on the cluster
● Shoutout to Snyk for writing this awesome configuration -
https://github.com/snyk/fluentd-logzio-kubernetes
12. What’s on our cluster?
https://maprdocs.mapr.com/home/AdministratorGuide/images/SpyglassArchitecture_Metrics_Streams.png
13. What’s in it for us?
● Apps can dump their logs to streams
● Transparent Recovery from crashes
● Backpressure is not an issue
● Filtering info and debug logs
● Separating System logs from our apps
● Adding more data to the logs
● Enriching logs with k8s metadata
● Formatting logs from popular sources
היי, באתי לפה היום כדי לדבר על יוניפייד לוגינג, אם זה לא אומר לכם הרבה זה ממש בסדר כי הנה בא שקף שמסביר את הנושא
המערכות שלנו הולכות ונהיות מורכבות יותר ואנחנו רוצים ויזיביליות לתוך המרכיבים השונים של כל מערכת.
הרכיבים האלה הולכים ומתרבים, הסוגים שלהם הולכים ומשתנים והפתרונות שאנחנו מוצאים כדי לנטר אותם עולים ברמת המורכבות שלהם
בתמונה אפשר לראות תרשים של פתרון מורכב מאד למעקב אחרי לוגים של מערכת מסויימת, וכזה שאפשר לראות בהרבה ארגונים שלא חשבו עד הסוף איך לנהל את הלוגים שלהם.
יש לנו פה הרבה מקורות ששולחים את הלוגים שלהם, באמצע יש מגוון של רכיבים שיודעים לאסוף את הלוגים, לעבד אותם ולשלוח אותם למאגר המידע דרכו נוכל לתשאל את הלוגים האלה במקרה של תקלה או בהנחה שנרצה להבין את הפעילות של המערכת.
כל אחד מהרכיבים האלה הוא בדרך כלל פיתרון שנכתב אד הוק ואחראי על פילטור (אינפו ודיבאג), אגרגציה, שליחה ליעד הסופי וכו׳.
זה בלאגן וכל ניסיון לגעת בפקעת הזו לרוב מסתיים בבכי מר.
Logs are usually a mess, you need to remember so many things
This app writes to a file, this one writes through an agent to elasticsearch, this one writes to cloudwatch, and this one to prometheus
פלואנטד הוא מוצר שמאפשר פיתרון של כל הבעיות מהשקף הקודם במקום מרכזי אחד, ואפשרות להרחיב את הפונקציונליות שלו ליוז קייסים יותר איזוטריים.
הוא מכיל פלאגינים רבים שמאפשרים להתממשק לכמעט כל סוג של מקור לוגים, לפרסר בהתאם דפוסים נפוצים של לוגים (כמו אנג׳ינאיקס, דיבי, קיו וכו׳) ומכיל כמות דומה של פלאגינים כדי לאפשר שליחה פשוטה של הלוגים למאגרי מידע כמו גרפייט, אלסטיק סרץ׳ וכו׳.Fluentd can fix all that, by treating your logs and their endpoint as a series of sources and sinks, an M (sources) times N (sinks) and turning it to an N + M problem, sweet huh?
Logstash and Fluentd are very similar, and both work great.
Fluentd works better for us cause it doesn’t require a JVM and is easier to configure. It’s also a first class citizen in k8s (and whoever worked with it in GKE will probably be hooked)
Logstash and Fluentd are very similar, and both work great.
Fluentd works better for us cause it doesn’t require a JVM and is easier to configure. It’s also a first class citizen in k8s (and whoever worked with it in GKE will probably be hooked)
Let’s see how we can take the tried and true ELK stack and turn it into an EFK stack
We are running fluentd on each k8s node
k8s pods are writing their logs into files on the nodes
Fluentd mounts the log dir into the pod, and tails all files within it
It then sends the files into an ES cluster, which we query using kibana
היי, באתי לפה היום כדי לדבר על יוניפייד לוגינג, אם זה לא אומר לכם הרבה זה ממש בסדר כי הנה בא שקף שמסביר את הנושא
היי, באתי לפה היום כדי לדבר על יוניפייד לוגינג, אם זה לא אומר לכם הרבה זה ממש בסדר כי הנה בא שקף שמסביר את הנושא