Возможности scribeи его применение для сбора логов      Facebook                          Отказоустойчиво                 ...
Возможности scribeи его применение для сбора логов Что такое                   Real Time           Сколько серверов       ...
Возможности scribeи его применение для сбора логов                          Что такое scribe                              ...
Возможности scribeи его применение для сбора логов                     Что такое много scribe    appсервер            scri...
Возможности scribeи его применение для сбора логовScribe?                                   Зачем?
Возможности scribeи его применение для сбора логов                              Сбор логов         Сервер 1            Лог...
Возможности scribeи его применение для сбора логов                         Сбор статистики    Сервер 1   Счетчик 1        ...
Возможности scribeи его применение для сбора логов              Обработка очередей заданий         Сервер 1               ...
Возможности scribeи его применение для сбора логов            Обработка очередей заданий 2         Сервер 1               ...
Возможности scribeи его применение для сбора логов
Возможности scribeи его применение для сбора логов           Сообщение scribe, категоризация                 entry        ...
Возможности scribeи его применение для сбора логов                   Логическая схема scribe                       Thread ...
Возможности scribeи его применение для сбора логов                          Типы хранилищ        store                    ...
Возможности scribeи его применение для сбора логов   type = file                                   /var/scribe/test   type...
Возможности scribeи его применение для сбора логов   type = buffer                                    primary             ...
Возможности scribeи его применение для сбора логов                     Буферизация на диск          данные                ...
Возможности scribeи его применение для сбора логов                   Самый простой вариант             Source             ...
Возможности scribeи его применение для сбора логов                         На границе сетей       Source                  ...
Возможности scribeи его применение для сбора логов   type = multi                                   store0                ...
Возможности scribeи его применение для сбора логов                      Разделение данных          Source                 ...
Возможности scribeи его применение для сбора логов                                   Шардинг   type = bucket              ...
Возможности scribeи его применение для сбора логов                            Версии scribe                               ...
Возможности scribeи его применение для сбора логов                            ZooKeeper Service                           ...
Возможности scribeи его применение для сбора логов     scribe                            ZooKeeper 10.0.0.1:1465          ...
Возможности scribeи его применение для сбора логов        Балансировка с помощью zookeeperremote_host=zk://zk1.i:2181,zk2....
Возможности scribeи его применение для сбора логов                             Сжатие LZO   Высокая скорость упаковки и о...
Возможности scribeи его применение для сбора логов             Запись данных из приложения            app               se...
Возможности scribeи его применение для сбора логов                Fallback при записи в scribe                         pri...
Возможности scribeи его применение для сбора логовtail -F
Возможности scribeи его применение для сбора логов                                   Logcp                                ...
Возможности scribeи его применение для сбора логов                         Что нужно учесть                               ...
Возможности scribeи его применение для сбора логов                       Сборка                        Собираем с послед...
Возможности scribeи его применение для сбора логов                       Тюнинг параметров      На источнике:            ...
Возможности scribeи его применение для сбора логов                          Что получилось      С кластера ~600 серверов ...
Спасибо!      Алексей МашановПрограммист, Мой Мир@mail.ru   a.mashanov@corp.mail.ru
алексей машанов
Upcoming SlideShare
Loading in...5
×

алексей машанов

698

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
698
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
4
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

алексей машанов

  1. 1. Возможности scribeи его применение для сбора логов Facebook Отказоустойчиво Отказоустойчиво Twitter Масштабируемо Масштабируемо scribe Mail.Ru Быстро Быстро ... Open Source Open Source
  2. 2. Возможности scribeи его применение для сбора логов Что такое Real Time Сколько серверов много
  3. 3. Возможности scribeи его применение для сбора логов Что такое scribe данные данные scribed TCP TCP HDD
  4. 4. Возможности scribeи его применение для сбора логов Что такое много scribe appсервер scribe app scribe коллектор scribe датацентр scribe N x HDD app scribe app scribe scribe
  5. 5. Возможности scribeи его применение для сбора логовScribe? Зачем?
  6. 6. Возможности scribeи его применение для сбора логов Сбор логов Сервер 1 Лог 1 Лог N Коллектор Сервер N Лог 1 Лог N
  7. 7. Возможности scribeи его применение для сбора логов Сбор статистики Сервер 1 Счетчик 1 1 Агрегатор 1-1 Агрегатор 2-1 Счетчик 2 По физическому По счетчику Сервер N расположению Счетчик 1 Агрегатор 1-M Агрегатор 2-K Счетчик 2 2
  8. 8. Возможности scribeи его применение для сбора логов Обработка очередей заданий Сервер 1 Воркер 1 Очередь 1 Очередь N Воркер 2 Воркер 3 Сервер N Очередь 1 Воркер M Очередь N
  9. 9. Возможности scribeи его применение для сбора логов Обработка очередей заданий 2 Сервер 1 Воркер 1 Очередь 1 Очередь N файл Воркер 2 tail -F Воркер 3 Сервер N Очередь 1 Менеджер Воркер M Очередь N
  10. 10. Возможности scribeи его применение для сбора логов
  11. 11. Возможности scribeи его применение для сбора логов Сообщение scribe, категоризация entry category category string message string store 1 store 2  category — используется message store 3 для логического разделения и роутинга сообщений  message — собственно store N текст сообщения
  12. 12. Возможности scribeи его применение для сбора логов Логическая схема scribe Thread Thread StoreQueue Store TCP Server Thread StoreQueue Store
  13. 13. Возможности scribeи его применение для сбора логов Типы хранилищ store file std network hdfs bucket multi buffer null
  14. 14. Возможности scribeи его применение для сбора логов type = file /var/scribe/test type = network 10.0.0.1:1465
  15. 15. Возможности scribeи его применение для сбора логов type = buffer primary secondary
  16. 16. Возможности scribeи его применение для сбора логов Буферизация на диск данные данные scribed TCP TCP HDDБуферизация на диск используется только в том случае, если приемник недоступен
  17. 17. Возможности scribeи его применение для сбора логов Самый простой вариант Source Collector buffer file network file
  18. 18. Возможности scribeи его применение для сбора логов На границе сетей Source Proxy Collector buffer buffer file network network file file
  19. 19. Возможности scribeи его применение для сбора логов type = multi store0 store1 storeN
  20. 20. Возможности scribeи его применение для сбора логов Разделение данных Source Logs Collector log-* log-* file network stat-* Stat Collector stat-* network file
  21. 21. Возможности scribeи его применение для сбора логов Шардинг type = bucket N =0 bucket0 x% x%N=1 bucket1 x% N= N- 1 bucket(N-1)
  22. 22. Возможности scribeи его применение для сбора логов Версии scribe facebook twitter Балансировка через zookeeper Сжатие LZO при записи на HDFS Тэйлинг файлов
  23. 23. Возможности scribeи его применение для сбора логов ZooKeeper Service Leader Server Server Server Client Client Client Client Client
  24. 24. Возможности scribeи его применение для сбора логов scribe ZooKeeper 10.0.0.1:1465 / scribe scribe 10.0.0.2:1465 10.0.0.1:1465 scribe 10.0.0.3:1465 10.0.0.2:1465 scribe 10.0.0.4:1465 10.0.0.4:1465
  25. 25. Возможности scribeи его применение для сбора логов Балансировка с помощью zookeeperremote_host=zk://zk1.i:2181,zk2.i:2181,zk3.i:2181/hdfs-writer Source HDFS Writer 1 HDFS Writer 2 HDFS Writer N zk_server=zk1.i:2181,zk2.i:2181,zk3.i:2181 zk_registration_prefix=/hdfs-writer
  26. 26. Возможности scribeи его применение для сбора логов Сжатие LZO Высокая скорость упаковки и особенно распаковки Возможность чтения с середины файла scribed LZO HDFS Уменьшение объема данных Ускорение дисковых операций
  27. 27. Возможности scribeи его применение для сбора логов Запись данных из приложения app server = 127.0.0.1:1465 scribe: scribe: 127.0.0.1:1465 collector.i
  28. 28. Возможности scribeи его применение для сбора логов Fallback при записи в scribe primary: 127.0.0.1:1465 app secondary: zk://zk1.i:2181,zk2.i:2181,zk3.i:2181/fallback scribe: scribe: 127.0.0.1:1465 collector.i scribe: x.x.x.x:1465zk_server=zk1.i:2181,zk2.i:2181,zk3.i:2181zk_registration_prefix=/fallback
  29. 29. Возможности scribeи его применение для сбора логовtail -F
  30. 30. Возможности scribeи его применение для сбора логов Logcp inotify /var/log/*.log logcpd statistics /var/log/httpd/*.log scribe/var/tarantool/logs/*.log logmonitord
  31. 31. Возможности scribeи его применение для сбора логов Что нужно учесть rename httpd.log httpd.log.0 de let e httpd.log truncate httpd.log
  32. 32. Возможности scribeи его применение для сбора логов Сборка Собираем с последним thrift Версия от twitter для джедаев — баги Perl-клиент Scribe::Thrift::scribe Thrift::BinaryProtocol заменяем на Thrift::XS::BinaryProtocol
  33. 33. Возможности scribeи его применение для сбора логов Тюнинг параметров  На источнике: На коллекторе: − adaptive_backoff=yes ulimit -n 65535 − check_interval=1 ulimit -u 4096 − buffer_send_rate=10 num_thrift_server_threads=8 − max_size=1000000 max_queue_size=300000000 − max_write_interval=1 max_write_interval=5 − use_conn_pool=yes Все параметры прекрасно документированы на языке C++ и в комментариях к коммитам в git
  34. 34. Возможности scribeи его применение для сбора логов Что получилось  С кластера ~600 серверов  ~6,5Тб логов ежесуточно  В реальном времени  На один сервер: − 13 дисков, RAID5, в сумме 27Тб − Бондинг 2Гб/с.
  35. 35. Спасибо! Алексей МашановПрограммист, Мой Мир@mail.ru a.mashanov@corp.mail.ru
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×