HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠœΡ‹ рассмотрим Ρ€Π°Π±ΠΎΡ‚Ρƒ Zabbix с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… TimescaleDB Π² качСствС backend. ПокаТСм, ΠΊΠ°ΠΊ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ с нуля ΠΈ ΠΊΠ°ΠΊ ΠΌΠΈΠ³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с PostgreSQL. Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ тСсты ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π΄Π²ΡƒΡ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

HighLoad++ Siberia 2019. Π—Π°Π» «Вомск». 24 июня, 16:00. ВСзисы ΠΈ прСзСнтация. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ конфСрСнция HighLoad++ ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ 6 ΠΈ 7 апрСля 2020 Π³ΠΎΠ΄Π° Π² Π‘Π°Π½ΠΊΡ‚-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³Π΅. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ ΠΈ Π±ΠΈΠ»Π΅Ρ‚Ρ‹ ΠΏΠΎ ссылкС.

АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Π΄Π°Π»Π΅Π΅ – АГ): – Π― – ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ тСхничСской ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ZABBIX (Π΄Π°Π»Π΅Π΅ – «Заббикс»), Ρ‚Ρ€Π΅Π½Π΅Ρ€. Π Π°Π±ΠΎΡ‚Π°ΡŽ Π±ΠΎΠ»Π΅Π΅ 6 Π»Π΅Ρ‚ Π² тСхничСской ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ ΠΈ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ сталкивался с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. БСгодня я Π±ΡƒΠ΄Ρƒ Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ TimescaleDB, ΠΏΡ€ΠΈ сравнСнии с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ PostgreSQL 10. Π’Π°ΠΊΠΆΠ΅ нСкоторая вводная Ρ‡Π°ΡΡ‚ΡŒ – ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π²ΠΎΠΎΠ±Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

Π“Π»Π°Π²Π½Ρ‹Π΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ: ΠΎΡ‚ сбора Π΄ΠΎ очистки Π΄Π°Π½Π½Ρ‹Ρ…

Начнём с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ встрСчаСтся каТдая систСма ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ – это быстрый сбор ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ….

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π₯ΠΎΡ€ΠΎΡˆΠ°Ρ систСма ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ, своСврСмСнно ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ всС Π΄Π°Π½Π½Ρ‹Π΅, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… согласно Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π½Ρ‹ΠΌ выраТСниям, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ критСриям (Π² Ρ€Π°Π·Π½Ρ‹Ρ… систСмах это ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ) ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² дальнСйшСм эти Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ – это Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ истории. Π₯Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ быстрый ΠΈ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ доступ ΠΊ этим ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ собраны Π·Π° ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π‘Π°ΠΌΠΎΠ΅ Π³Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ эти Π΄Π°Π½Π½Ρ‹Π΅ Π±Ρ‹Π»ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π°Ρ…, Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ…, Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π°Ρ…, Π² ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²Ρ‹Ρ… значСниях, для ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠΉ ΠΈ Ρ‚. Π΄.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π’Ρ€Π΅Ρ‚ΠΈΠΉ Π²Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ – это очистка истории, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ³Π΄Π° Ρƒ вас наступаСт Ρ‚Π°ΠΊΠΎΠΉ дСнь, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ собраны Π·Π° 5 Π»Π΅Ρ‚ (Π΄Π°ΠΆΠ΅ мСсяцы ΠΈΠ»ΠΈ Π΄Π²Π° мСсяца). КакиС-Ρ‚ΠΎ ΡƒΠ·Π»Ρ‹ сСти Π±Ρ‹Π»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹, Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ хосты, ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΡƒΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΡƒΠΆΠ΅ устарСли ΠΈ пСрСстали ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒΡΡ. Π­Ρ‚ΠΎ всё Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Ρ‡ΠΈΡ‰Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρƒ вас Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ Ρ€Π°Π·Ρ€ΠΎΡΠ»Π°ΡΡŒ Π΄ΠΎ большого Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. И Π²ΠΎΠΎΠ±Ρ‰Π΅, очистка истории Ρ‡Π°Ρ‰Π΅ всСго являСтся ΡΠ΅Ρ€ΡŒΡ‘Π·Π½Ρ‹ΠΌ испытаниСм для Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° – ΠΎΡ‡Π΅Π½ΡŒ сильно Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ влияСт Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Как Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ?

Π― сСйчас Π±ΡƒΠ΄Ρƒ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ ΠΎ «ЗаббиксС». Π’ «ЗаббиксС» ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹Π·ΠΎΠ²Ρ‹ Ρ€Π΅ΡˆΠ΅Π½Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π‘Π±ΠΎΡ€ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… – ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ для хранСния всСх этих Π΄Π°Π½Π½Ρ‹Ρ…. БСйчас ΠΎΠ± этих Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ рассказано.

Π’Π°ΠΊΠΆΠ΅ Π½Π° сторонС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π΅ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ для основных Π²Ρ‹Π±ΠΎΡ€ΠΎΠΊ – для Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ², Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²Π΅Ρ‰Π΅ΠΉ.

ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° сторонС самого Zabbix-сСрвСра: Ρƒ нас ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ConfigurationCache, ValueCache, HistoryCache, TrendsCache. Π§Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅?

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ConfigurationCache – это основной кэш, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΡ‹ Ρ…Ρ€Π°Π½ΠΈΠΌ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ, хосты, элСмСнты Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Ρ‹; всё, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прСпроцСссинга, сбора Π΄Π°Π½Π½Ρ‹Ρ…, с ΠΊΠ°ΠΊΠΈΡ… хостов ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ, с ΠΊΠ°ΠΊΠΎΠΉ частотой. Всё это хранится Π² ConfigurationCache, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π»ΠΈΡˆΠ½ΠΈΡ… запросов. ПослС старта сСрвСра ΠΌΡ‹ обновляСм этот кэш (создаём) ΠΈ обновляСм пСриодичСски (Π² зависимости ΠΎΡ‚ настроСк ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ).

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Zabbix. Π‘Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ…

Π—Π΄Π΅ΡΡŒ схСма достаточно большая:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π² схСмС – Π²ΠΎΡ‚ эти сборщики:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π­Ρ‚ΠΎ сами процСссы сборки, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Β«ΠΏΠΎΠ»Π»Π΅Ρ€Ρ‹Β», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π·Π° Ρ€Π°Π·Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ сборок. Они ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ icmp, ipmi, ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ это всё Π½Π° прСпроцСссинг.

PreProcessing HistoryCache

Π’Π°ΠΊΠΆΠ΅, Ссли Ρƒ нас Π΅ΡΡ‚ΡŒ вычисляСмыС элСмСнты Π΄Π°Π½Π½Ρ‹Ρ… (ΠΊΡ‚ΠΎ Π·Π½Π°ΠΊΠΎΠΌ с «Заббиксом» – Π·Π½Π°Π΅Ρ‚), Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ вычисляСмыС, Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ элСмСнты Π΄Π°Π½Π½Ρ‹Ρ…, – ΠΌΡ‹ ΠΈΡ… Π·Π°Π±ΠΈΡ€Π°Π΅ΠΌ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΈΠ· ValueCache. О Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ наполняСтся, я расскаТу ΠΏΠΎΠ·ΠΆΠ΅. ВсС эти сборщики ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ConfigurationCache для получСния своих Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΈ дальшС ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ Π½Π° прСпроцСссинг.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠŸΡ€Π΅ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΈΠ½Π³ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ConfigurationCache для получСния шагов прСпроцСссинга, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ эти Π΄Π°Π½Π½Ρ‹Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ способом. Начиная с вСрсии 4.2, ΠΎΠ½ Ρƒ нас вынСсСн Π½Π° прокси. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ сам прСпроцСссинг – достаточно тяТёлая опСрация. И Ссли Ρƒ вас ΠΎΡ‡Π΅Π½ΡŒ большой «Заббикс», с большим количСством элСмСнтов Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ высокой частотой сбора, Ρ‚ΠΎ это сильно ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

БоотвСтствСнно, послС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ эти Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прСпроцСссинга, сохраняСм ΠΈΡ… Π² HistoryCache для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… дальшС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. На этом заканчиваСтся сбор Π΄Π°Π½Π½Ρ‹Ρ…. ΠœΡ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ Π³Π»Π°Π²Π½ΠΎΠΌΡƒ процСссу.

Π Π°Π±ΠΎΡ‚Π° History syncer

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π“Π»Π°Π²Π½Ρ‹ΠΉ Π² «ЗаббиксС» процСсс (Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это монолитная Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°) – History syncer. Π­Ρ‚ΠΎ Π³Π»Π°Π²Π½Ρ‹ΠΉ процСсс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ занимаСтся ΠΈΠΌΠ΅Π½Π½ΠΎ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ значСния:

  • ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (ΠΎΠ½ Π΅Π³ΠΎ Π±Π΅Ρ€Ρ‘Ρ‚ ΠΈΠ· HistoryCache);
  • провСряСт Π² Configuration syncer: Π΅ΡΡ‚ΡŒ Π»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Ρ‹ для вычислСния – вычисляСт ΠΈΡ…;
    Ссли Π΅ΡΡ‚ΡŒ – создаёт события, создаёт ΡΡΠΊΠ°Π»Π°Ρ†ΠΈΡŽ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠ΅, Ссли это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ;
  • записываСт Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Ρ‹ для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ; Ссли Π²Ρ‹ Π°Π³Ρ€Π΅Π³ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π·Π° послСдний час ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅, это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ ValueCache, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ истории; Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ValueCache наполняСтся Π½ΡƒΠΆΠ½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для вычислСния Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠ², вычисляСмых элСмСнтов ΠΈ Ρ‚. Π΄.;
  • Π΄Π°Π»Π΅Π΅ History syncer записываСт всС Π΄Π°Π½Π½Ρ‹Π΅ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…;
  • Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… записываСт ΠΈΡ… Π½Π° диск – Π½Π° этом процСсс ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ заканчиваСтся.

Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

На сторонС Π‘Π”, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΎΡ‚Ρ‡Ρ‘Ρ‚Ρ‹ ΠΏΠΎ событиям, Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ кэши. Но Π² Ρ€Π°ΠΌΠΊΠ°Ρ… этого Π΄ΠΎΠΊΠ»Π°Π΄Π° я Π½Π΅ Π±ΡƒΠ΄Ρƒ ΠΎ Π½ΠΈΡ… Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ.

Для MySQL Π΅ΡΡ‚ΡŒ Innodb_buffer_pool, Π΅Ρ‰Ρ‘ ΠΊΡƒΡ‡Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… кэшСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ.
Но это – основныС:

  • shared_buffers;
  • effective_cache_size;
  • shared_pool.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π― для всСх Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ²Ρ‘Π», Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ кэши, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ часто Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для запросов. Π’Π°ΠΌ Ρƒ Π½ΠΈΡ… свои Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ для этого.

О ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

БоотвСтствСнно, Π΅ΡΡ‚ΡŒ конкурСнтная срСда, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ «Заббикс»-сСрвСр собираСт Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ записываСт ΠΈΡ…. ΠŸΡ€ΠΈ пСрСзапускС ΠΎΠ½ Ρ‚ΠΎΠΆΠ΅ Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ ΠΈΠ· истории для наполнСния ValueCache ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π’ΡƒΡ‚ ΠΆΠ΅ Ρƒ вас ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ скрипты ΠΈ ΠΎΡ‚Ρ‡Ρ‘Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ «Заббикс»-API, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π° Π±Π°Π·Π΅ Π²Π΅Π±-интСрфСйса построСн. «Заббикс»-API Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Π‘Π” ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ для получСния Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ², ΠΎΡ‚Ρ‡Ρ‘Ρ‚ΠΎΠ² Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ списка событий, послСдних ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π’Π°ΠΊΠΆΠ΅ ΠΎΡ‡Π΅Π½ΡŒ популярноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ – это Grafana, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ наши ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ. Π£ΠΌΠ΅Π΅Ρ‚ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Ρ‡Π΅Ρ€Π΅Π· «Заббикс»-API, Ρ‚Π°ΠΊ ΠΈ Ρ‡Π΅Ρ€Π΅Π· Π‘Π”. Оно Ρ‚ΠΎΠΆΠ΅ создаёт ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΡƒΡŽ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΡŽ для получСния Π΄Π°Π½Π½Ρ‹Ρ…: Π½ΡƒΠΆΠ½Π° Π±ΠΎΠ»Π΅Π΅ тонкая, Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ настройка Π‘Π”, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ быстрой Π²Ρ‹Π΄Π°Ρ‡Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΈ тСстирования.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° истории. Π’ Zabbix Π΅ΡΡ‚ΡŒ Housekeeper

Π’Ρ€Π΅Ρ‚ΠΈΠΉ Π²Ρ‹Π·ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² «Заббикс» – это очистка истории с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Housekeeper. Β«Π₯аускипСр» ΡΠΎΠ±Π»ΡŽΠ΄Π°Π΅Ρ‚ всС настройки, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρƒ нас Π² элСмСнтах Π΄Π°Π½Π½Ρ‹Ρ… ΡƒΠΊΠ°Π·Π°Π½ΠΎ, сколько Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ (Π² днях), сколько Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ‚Ρ€Π΅Π½Π΄Ρ‹, Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΡƒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

Π― Π½Π΅ рассказал ΠΏΡ€ΠΎ Π’Ρ€Π΅Π½Π΄ΠšΡΡˆ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ высчитываСм Π½Π° Π»Π΅Ρ‚Ρƒ: ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Π΄Π°Π½Π½Ρ‹Π΅, ΠΌΡ‹ ΠΈΡ… Π°Π³Ρ€Π΅Π³ΠΈΡ€ΡƒΠ΅ΠΌ Π·Π° ΠΎΠ΄ΠΈΠ½ час (Π² основном это числа Π·Π° послСдний час), количСство срСднСС / минимальноС ΠΈ записываСм это Ρ€Π°Π· Π² час Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ («ВрСндс»). Β«Π₯аускипСр» запускаСтся ΠΈ удаляСт ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ сСлСктами Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π‘Π”, Ρ‡Ρ‚ΠΎ Π½Π΅ всСгда эффСктивно.

Как ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ это нСэффСктивно? Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ… ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… процСссов Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π£ вас History syncer постоянно занят (красный Π³Ρ€Π°Ρ„ΠΈΠΊ). И Β«Ρ€Ρ‹ΠΆΠΈΠΉΒ» Π³Ρ€Π°Ρ„ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ²Π΅Ρ€Ρ…Ρƒ ΠΈΠ΄Ρ‘Ρ‚. Π­Ρ‚ΠΎ Β«Π₯аускипСр», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСтся ΠΈ ΠΆΠ΄Ρ‘Ρ‚ ΠΎΡ‚ Π‘Π”, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° ΡƒΠ΄Π°Π»ΠΈΡ‚ всС строки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ Π·Π°Π΄Π°Π».

Π’ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Item ID: Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ послСдниС 5 тысяч; ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΏΠΎ индСксам. Но ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ датасСт достаточно большой – Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… всё Ρ€Π°Π²Π½ΠΎ это считываСт с диска ΠΈ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅Ρ‚ Π² кэш, Π° это ΠΎΡ‡Π΅Π½ΡŒ дорогая опСрация для Π‘Π”. Π’ зависимости ΠΎΡ‚ Π΅Ρ‘ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ², это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

ΠžΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Β«Π₯аускипСр» ΠΌΠΎΠΆΠ½ΠΎ простым способом – Ρƒ нас Π΅ΡΡ‚ΡŒ всСм Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΉ Π²Π΅Π±-интСрфСйс. Настройка Π² Administration general (настройки для Β«Π₯аускипСра») ΠΌΡ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ housekeeping для Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ истории ΠΈ Ρ‚Ρ€Π΅Π½Π΄ΠΎΠ². БоотвСтствСнно, Β«Π₯аускипСр» большС Π½Π΅ управляСт этим:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ дальшС Π΄Π΅Π»Π°Ρ‚ΡŒ? Π’Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ, Ρƒ вас Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΠ»ΠΈΡΡŒβ€¦ КакиС Π² этом случаС ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ дальшС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹? Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ?

ΠŸΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (сСкционированиС)

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это настраиваСтся Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ рСляционной Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я пСрСчислил, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ способом. На MySQL своя тСхнология. Но Π² Ρ†Π΅Π»ΠΎΠΌ ΠΎΠ½ΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈ, Ссли Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ PostgreSQL 10 ΠΈ MySQL. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ‚Π°ΠΌ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ, ΠΊΠ°ΠΊ это всё Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΈ ΠΊΠ°ΠΊ это всё влияСт Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Но Π² Ρ†Π΅Π»ΠΎΠΌ созданиС Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΈ часто Ρ‚ΠΎΠΆΠ΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π’ зависимости ΠΎΡ‚ вашСго setup’а (насколько ΠΌΠ½ΠΎΠ³ΠΎ Ρƒ вас создаётся Π΄Π°Π½Π½Ρ‹Ρ… Π·Π° ΠΎΠ΄ΠΈΠ½ дСнь), ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ самый ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ – это 1 дСнь/партиция, Π° для Β«Ρ‚Ρ€Π΅Π½Π΄ΠΎΠ²Β», Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ – 1 мСсяц / новая партиция. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ, Ссли Ρƒ вас ΠΎΡ‡Π΅Π½ΡŒ большой setup.

Π‘Ρ€Π°Π·Ρƒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ скаТу ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°Ρ… setup’а: Π΄ΠΎ 5 тысяч Π½ΠΎΠ²Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² сСкунду (nvps Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ) – это Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ ΠΌΠ°Π»Ρ‹ΠΉ «сСтап». Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ – ΠΎΡ‚ 5 Π΄ΠΎ 25 тысяч Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² сСкунду. Всё, Ρ‡Ρ‚ΠΎ ΡΠ²Ρ‹ΡˆΠ΅ – это ΡƒΠΆΠ΅ большиС ΠΈ ΠΎΡ‡Π΅Π½ΡŒ большиС инсталляции, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ настройки ΠΈΠΌΠ΅Π½Π½ΠΎ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

На ΠΎΡ‡Π΅Π½ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… инсталляциях 1 дСнь – это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎ. Π― Π»ΠΈΡ‡Π½ΠΎ Π²ΠΈΠ΄Π΅Π» Π½Π° MySQL ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΈ ΠΏΠΎ 40 Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚ Π·Π° дСнь (ΠΈ большС ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ). Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ большой ΠΎΠ±ΡŠΡ‘ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ. Π•Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ‚ΡŒ.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅?

Π§Ρ‚ΠΎ Π΄Π°Ρ‘Ρ‚ Partitioning, я Π΄ΡƒΠΌΠ°ΡŽ, всС Π·Π½Π°ΡŽΡ‚ – это сСкционированиС Ρ‚Π°Π±Π»ΠΈΡ†. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ это ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π½Π° дискС ΠΈ спан-запросов. Он Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΎΠ΄Π½Ρƒ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΡŽ, Ссли это Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Для «Заббикса», Π² частности, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎ рэндТу, ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ таймстамп (число ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅, врСмя с Π½Π°Ρ‡Π°Π»Π° эпохи). Π’Ρ‹ Π·Π°Π΄Π°Ρ‘Ρ‚Π΅ Π½Π°Ρ‡Π°Π»ΠΎ дня / ΠΊΠΎΠ½Π΅Ρ† дня, ΠΈ это являСтся ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠ΅ΠΉ. БоотвСтствСнно, Ссли Π²Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ Π·Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π΄Π²ΡƒΡ…Π΄Π½Π΅Π²Π½ΠΎΠΉ давности, это всё выбираСтся ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… быстрСС, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ всСго ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ» Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² кэш ΠΈ Π²Ρ‹Π΄Π°Ρ‚ΡŒ (Π° Π½Π΅ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ).

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

МногиС Π‘Π” Ρ‚Π°ΠΊΠΆΠ΅ ускоряСт insert (вставка Π² ΠΎΠ΄Π½Ρƒ child-Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ). Пока я Π³ΠΎΠ²ΠΎΡ€ΡŽ абстрактно, Π½ΠΎ это Ρ‚ΠΎΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Partitoning Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚.

Elasticsearch для NoSQL

НСдавно, Π² 3.4, ΠΌΡ‹ Π²Π½Π΅Π΄Ρ€ΠΈΠ»ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для NoSQL. Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Elasticsearch. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Ρ‚ΠΈΠΏΡ‹: Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ – Π»ΠΈΠ±ΠΎ числа ΠΏΠΈΡˆΠΈΡ‚Π΅, Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Π·Π½Π°ΠΊΠΈ; Ρƒ нас Π΅ΡΡ‚ΡŒ стринг-тСкст, Π»ΠΎΠ³ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Elasticsearch… БоотвСтствСнно, Π²Π΅Π±-интСрфСйс ΡƒΠΆΠ΅ Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Elasticsearch. Π­Ρ‚ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Π² ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ случаях Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π½ΠΎ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ это ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

TimescaleDB. Π“ΠΈΠΏΠ΅Ρ€Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Для 4.4.2 ΠΌΡ‹ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ»ΠΈ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΎΠ΄Π½Ρƒ Π²Π΅Ρ‰ΡŒ, ΠΊΠ°ΠΊ TimescaleDB. Π§Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅? Π­Ρ‚ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ для Β«ΠŸΠΎΡΡ‚Π³Ρ€Π΅ΡΒ», Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ интСрфСйс PostgreSQL. Плюс, это Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ позволяСт Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ эффСктивнСС Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с timeseries-Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ автоматичСскоС ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Как это выглядит:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π­Ρ‚ΠΎ hypertable – Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ΅ понятиС Π² Timescale. Π­Ρ‚ΠΎ Π³ΠΈΠΏΠ΅Ρ€Ρ‚Π°Π±Π»ΠΈΡ†Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ создаётС, ΠΈ Π² Π½Π΅ΠΉ находятся Ρ‡Π°Π½ΠΊΠΈ (chunk). Π§Π°Π½ΠΊΠΈ – это ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΈ, это Ρ‡Π°ΠΉΠ»Π΄-Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Ссли Π½Π΅ ошибаюсь. Π­Ρ‚ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ эффСктивно.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

TimescaleDB ΠΈ PostgreSQL

Как Π·Π°Π²Π΅Ρ€ΡΡŽΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ TimescaleDB, ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ запросов, Π² частности insert’ов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΠΏΠΎΡΡ‚ΠΎΡΠ½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰Π΅ΠΌΡΡ Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅ датасСт-вставки. Π’ΠΎ Π΅ΡΡ‚ΡŒ послС 200 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² строк Β«ΠŸΠΎΡΡ‚Π³Ρ€Π΅ΡΒ» ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ сильно ΠΏΡ€ΠΎΡΠ΅Π΄Π°Ρ‚ΡŒ ΠΈ тСряСт ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ Π΄ΠΎ нуля, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ «ВаймскСйл» позволяСт Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ инсСрты ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ эффСктивно ΠΏΡ€ΠΈ любом количСствС Π΄Π°Π½Π½Ρ‹Ρ….

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ TimescaleDB? Всё просто!

Π•ΡΡ‚ΡŒ Ρƒ Π½Π΅Π³ΠΎ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, описано – ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² для Π»ΡŽΠ±Ρ‹Ρ…β€¦ Он зависит ΠΎΡ‚ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Β«ΠŸΠΎΡΡ‚Π³Ρ€Π΅ΡΠ°Β». МоТно ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. Π’Π°ΠΊ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠ½Π΅ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ для Π‘Π”.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

На «Заббикс» ΠΌΡ‹ просто Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅ΠΌ Extention. Π― Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅, ΠΊΡ‚ΠΎ пользовался Π² Β«ΠŸΠΎΡΡ‚Π³Ρ€Π΅ΡΠ΅Β» Extention… Π’Ρ‹ просто Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Extention, создаётС Π΅Π³ΠΎ для Π‘Π” «Заббикс», ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅.

И послСдний ΡˆΠ°Π³β€¦

TimescaleDB. ΠœΠΈΠ³Ρ€Π°Ρ†ΠΈΡ Ρ‚Π°Π±Π»ΠΈΡ† истории

Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ hypertable. Для этого Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ функция – Create hypertable. Π’ Π½Π΅ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, которая Π² этой Π‘Π” Π½ΡƒΠΆΠ½Π° (для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π³ΠΈΠΏΠ΅Ρ€Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ).

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ПолС, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ, ΠΈ chunk_time_interval (это ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Ρ‡Π°Π½ΠΊΠΎΠ² (ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ). 86Β 400 – это ΠΎΠ΄ΠΈΠ½ дСнь.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ migrate_data: Ссли Π²Ρ‹ вставляСтС Π² true, Ρ‚ΠΎ это пСрСносит всС Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π·Π°Ρ€Π°Π½Π΅Π΅ созданныС Ρ‡Π°Π½ΠΊΠΈ.

Π― сам использовал migrate_data – это Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎΠ΅ врСмя, Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΡ… Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² Ρƒ вас Π‘Π”. Π£ мСня Π±Ρ‹Π»ΠΎ Π±ΠΎΠ»Π΅Π΅ Ρ‚Π΅Ρ€Π°Π±Π°ΠΉΡ‚Π° – созданиС заняло большС часа. Π’ ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ случаях ΠΏΡ€ΠΈ тСстировании я удалял историчСскиС Π΄Π°Π½Π½Ρ‹Π΅ для тСкста (history_text) ΠΈ стринга (history_str), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ – ΠΎΠ½ΠΈ ΠΌΠ½Π΅ Π½Π° самом Π΄Π΅Π»Π΅ Π±Ρ‹Π»ΠΈ Π½Π΅ интСрСсны.

И послСдний Π°ΠΏΠ΄Π΅ΠΉΡ‚ ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ Π² нашСм db_extention: ΠΌΡ‹ ставим timescaledb, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π‘Π” ΠΈ, Π² частности, наш «Заббикс» ΠΏΠΎΠ½ΠΈΠΌΠ°Π», Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ db_extention. Он Π΅Π³ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ синтаксис ΠΈ запросы ΠΊ Π‘Π”, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡƒΠΆΠ΅ Ρ‚Π΅ Β«Ρ„ΠΈΡ‡ΠΈΒ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для TimescaleDB.

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ сСрвСра

Π― использовал Π΄Π²Π° сСрвСра. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ сСрвСр – это Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина достаточно малСнькая, 20 процСссоров, 16 Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти. Настроил Π½Π° Π½Π΅ΠΉ Β«ΠŸΠΎΡΡ‚Π³Ρ€Π΅ΡΒ» 10.8:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма Π±Ρ‹Π»Π° Debian, файловая систСма – xfs. Π‘Π΄Π΅Π»Π°Π» ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ настройки, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ эту Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Π·Π° Π²Ρ‹Ρ‡Π΅Ρ‚ΠΎΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сам «Заббикс». На этой ΠΆΠ΅ машинС стоял «Заббикс»-сСрвСр, PostgreSQL ΠΈ Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹Π΅ Π°Π³Π΅Π½Ρ‚Ρ‹.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π― использовал 50 Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Π°Π³Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ LoadableModule, Ρ‡Ρ‚ΠΎΠ±Ρ‹ быстро Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹. Π­Ρ‚ΠΎ ΠΎΠ½ΠΈ сгСнСрировали строки, числа ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π― Π·Π°Π±ΠΈΠ²Π°Π» Π‘Π” большим количСством Π΄Π°Π½Π½Ρ‹Ρ…. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ конфигурация содСрТала 5 тысяч элСмСнтов Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ хост, ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Π΄Π°Π½Π½Ρ‹Ρ… содСрТал Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ – для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ это Π±Ρ‹Π» Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ setup. Иногда для использования Π΄Π°ΠΆΠ΅ трСбуСтся большС ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π°.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π˜Π½Ρ‚Π΅Ρ€Π²Π°Π» обновлСния, саму Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ я Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π» Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 50 Π°Π³Π΅Π½Ρ‚ΠΎΠ² использовал (добавлял Π΅Ρ‰Ρ‘), Π½ΠΎ ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ динамичСских элСмСнтов Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ сниТал Π°ΠΏΠ΄Π΅ΠΉΡ‚-ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π΄ΠΎ 4 сСкунд.

ВСст ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. PostgreSQL: 36 тысяч NVPs

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ запуск, ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ setup Ρƒ мСня Π±Ρ‹Π» Π½Π° чистом PostreSQL 10 Π½Π° этом ΠΆΠ΅Π»Π΅Π·Π΅ (35 тысяч Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² сСкунду). Π’ Ρ†Π΅Π»ΠΎΠΌ, ΠΊΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ Π½Π° экранС, вставка Π΄Π°Π½Π½Ρ‹Ρ… Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Ρ„Ρ€Π°ΠΊΡ†ΠΈΠΈ сСкунды – всё Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈ быстро, SSD-диски (200 Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚). ЕдинствСнноС, Ρ‡Ρ‚ΠΎ 20 Π“Π‘ достаточно быстро Π·Π°ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π‘ΡƒΠ΄Π΅Ρ‚ дальшС достаточно ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚Π°ΠΊΠΈΡ… Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ². Π­Ρ‚ΠΎ стандартный dashboard ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ «Заббикс»-сСрвСра.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ – количСство Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² сСкунду (Π³ΠΎΠ»ΡƒΠ±ΠΎΠΉ, Π½Π°Π²Π΅Ρ€Ρ…Ρƒ слСва), 35 тысяч Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС. Π­Ρ‚ΠΎ (Π½Π°Π²Π΅Ρ€Ρ…Ρƒ Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅) Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° процСссов сборки, Π° это (Π½Π°Π²Π΅Ρ€Ρ…Ρƒ справа) – Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… процСссов: history syncers ΠΈ housekeeper, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ здСсь (Π²Π½ΠΈΠ·Ρƒ Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅) выполнялся достаточноС врСмя.

Π­Ρ‚ΠΎΡ‚ Π³Ρ€Π°Ρ„ΠΈΠΊ (Π²Π½ΠΈΠ·Ρƒ Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅) ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ использованиС ValueCache – сколько Ρ…ΠΈΡ‚ΠΎΠ² ValueCache для Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠ² (нСсколько тысяч Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² сСкунду). Π•Ρ‰Ρ‘ Π²Π°ΠΆΠ½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ – Ρ‡Π΅Ρ‚Π²Ρ‘Ρ€Ρ‚Ρ‹ΠΉ (Π²Π½ΠΈΠ·Ρƒ слСва), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ использованиС HistoryCache, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ я рассказал, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ ΠΏΠ΅Ρ€Π΅Π΄ вставкой Π² Π‘Π”.

ВСст ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. PostgreSQL: 50 тысяч NVPs

Π”Π°Π»Π΅Π΅ я ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ» Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π΄ΠΎ 50 тысяч Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² сСкунду Π½Π° этом ΠΆΠ΅ ΠΆΠ΅Π»Π΅Π·Π΅. ΠŸΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Β«Π₯аускипСром» 10 тысяч Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Π»ΠΎΡΡŒ ΡƒΠΆΠ΅ Π² 2-3 сСкунды с вычислСниСм. Π§Ρ‚ΠΎ, собствСнно, ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π΅:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Β«Π₯аускипСр» ΡƒΠΆΠ΅ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π΅, Π½ΠΎ Π² Ρ†Π΅Π»ΠΎΠΌ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Ρ‚Ρ€Π°ΠΏΠΏΠ΅Ρ€ΠΎΠ² хистори-синкСров ΠΏΠΎΠΊΠ° Π΅Ρ‰Ρ‘ находится Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ 60 % (Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ, Π²Π²Π΅Ρ€Ρ…Ρƒ справа). HistoryCache ΡƒΠΆΠ΅ Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ Β«Π₯аускипСра» Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ (Π²Π½ΠΈΠ·Ρƒ слСва). Он Π±Ρ‹Π» ΠΎΠΊΠΎΠ»ΠΎ ΠΏΠΎΠ»Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚Π°, заполнялся Π½Π° 20%.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ВСст ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. PostgreSQL: 80 тысяч NVPs

Π”Π°Π»ΡŒΡˆΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ» Π΄ΠΎ 80 тысяч Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² сСкунду:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ 400 тысяч элСмСнтов Π΄Π°Π½Π½Ρ‹Ρ…, 280 тысяч Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠ². Вставка, ΠΊΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡ‚Π΅, ΠΏΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ хистори-синкСров (ΠΈΡ… Π±Ρ‹Π»ΠΎ 30 ΡˆΡ‚ΡƒΠΊ) Π±Ρ‹Π»Π° ΡƒΠΆΠ΅ достаточно высокая. Π”Π°Π»ΡŒΡˆΠ΅ я ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π» Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹: хистори-синкСры, ΠΊΡΡˆβ€¦ На Π΄Π°Π½Π½ΠΎΠΌ ΠΆΠ΅Π»Π΅Π·Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° хистори-синкСров Π½Π°Ρ‡Π°Π»Π° ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π΄ΠΎ максимума, практичСски Β«Π² ΠΏΠΎΠ»ΠΊΡƒΒ» – соотвСтствСнно, HistoryCache ΠΏΠΎΡˆΡ‘Π» Π² ΠΎΡ‡Π΅Π½ΡŒ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Всё это врСмя я наблюдал Π·Π° всСми ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ систСмы (ΠΊΠ°ΠΊ процСссор ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, опСративная ΠΏΠ°ΠΌΡΡ‚ΡŒ) ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ», Ρ‡Ρ‚ΠΎ утилизация дисков Π±Ρ‹Π»Π° максимальной – я добился максимальной возмоТности этого диска Π½Π° этом ΠΆΠ΅Π»Π΅Π·Π΅, Π½Π° этой Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС. Β«ΠŸΠΎΡΡ‚Π³Ρ€Π΅ΡΒ» Π½Π°Ρ‡Π°Π» ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΉ интСнсивности ΡΠ±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ достаточно Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ, ΠΈ диск ΡƒΠΆΠ΅ Π½Π΅ успСвал Π½Π° запись, чтСниС…

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π― взял Π΄Ρ€ΡƒΠ³ΠΎΠΉ сСрвСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π» 48 процСссоров 128 Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π’Π°ΠΊΠΆΠ΅ я Π΅Π³ΠΎ Β«Π·Π°Ρ‚ΡŽΠ½ΠΈΠ»Β» – поставил History syncer (60 ΡˆΡ‚ΡƒΠΊ) ΠΈ добился ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠ³ΠΎ быстродСйствия. ЀактичСски ΠΌΡ‹ Π½Π΅ Β«Π² ΠΏΠΎΠ»ΠΊΠ΅Β», Π½ΠΎ это ΡƒΠΆΠ΅, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, ΠΏΡ€Π΅Π΄Π΅Π» ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π³Π΄Π΅ ΡƒΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ с этим ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ.

ВСст ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. TimescaleDB: 80 тысяч NVPs

Π£ мСня Π±Ρ‹Π»Π° главная Π·Π°Π΄Π°Ρ‡Π° – ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ TimescaleDB. На ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π²ΠΈΠ΄Π΅Π½ ΠΏΡ€ΠΎΠ²Π°Π»:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π­Ρ‚ΠΈ ΠΏΡ€ΠΎΠ²Π°Π»Ρ‹ – ΠΊΠ°ΠΊ Ρ€Π°Π· миграция Π΄Π°Π½Π½Ρ‹Ρ…. ПослС этого Π² «Заббикс»-сСрвСрС ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ хистори-синкСров, ΠΊΠ°ΠΊ Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅, ΠΎΡ‡Π΅Π½ΡŒ сильно измСнился. Он практичСски Π² 3 Ρ€Π°Π·Π° быстрСС позволяСт Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ мСньшС HistoryCache – соотвСтствСнно, Ρƒ вас своСврСмСнно Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹Π΅. ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅, 80 тысяч Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² сСкунду – это достаточно высокий rate (ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π΅ для «ЯндСкса»). Π’ Ρ†Π΅Π»ΠΎΠΌ это достаточно большой setup, с ΠΎΠ΄Π½ΠΈΠΌ сСрвСром.

ВСст ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ PostgreSQL: 120 тысяч NVPs

Π”Π°Π»Π΅Π΅ я ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ» Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ количСства элСмСнтов Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎ ΠΏΠΎΠ»ΡƒΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π° ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» расчётноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 125 тысяч Π² сСкунду:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

И ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Ρ‚Π°ΠΊΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ это Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ setup, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ достаточно Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Но Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρƒ мСня Π±Ρ‹Π» диск всСго Π½Π° 1,5 Ρ‚Π΅Ρ€Π°Π±Π°ΠΉΡ‚Π°, Ρ‚ΠΎ я Π΅Π³ΠΎ расходовал Π·Π° ΠΏΠ°Ρ€Ρƒ Π΄Π½Π΅ΠΉ. Π‘Π°ΠΌΠΎΠ΅ Π²Π°ΠΆΠ½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя создавались Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΈΠ½Π° TimescaleDB, ΠΈ это для ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠ»ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ, Ρ‡Π΅Π³ΠΎ Π½Π΅ скаТСшь ΠΎ MySQL.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π½ΠΎΡ‡ΡŒΡŽ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π²ΠΎΠΎΠ±Ρ‰Π΅ вставку ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Π΄Π΅Π³Ρ€Π°Π΄Π°Ρ†ΠΈΠΈ сСрвиса. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС этого Π½Π΅Ρ‚! Главная Π·Π°Π΄Π°Ρ‡Π° Π±Ρ‹Π»Π° – ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ возмоТности TimescaleDB. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ такая Ρ†ΠΈΡ„Ρ€Π°: 120 тысяч Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² сСкунду.

Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π² Β«ΠΊΠΎΠΌΠ½ΡŒΡŽΠ½ΠΈΡ‚ΠΈΒ» ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π§Π΅Π»ΠΎΠ²Π΅ΠΊ Ρ‚ΠΎΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ» TimescaleDB ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΠΎ использованию io.weight ΡƒΠΏΠ°Π»Π° Π½Π° процСссорС; ΠΈ использованиС элСмСнтов Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… процСссов Ρ‚ΠΎΠΆΠ΅ снизилось благодаря Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ TimescaleDB. ΠŸΡ€ΠΈΡ‡Ρ‘ΠΌ это ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Π±Π»ΠΈΠ½Π½Ρ‹Π΅ диски, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ обычная Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΊΠ° Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… дисках (Π½Π΅ SSD)!

Для ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… setup’ов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΏΠΈΡ€Π°ΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ диска, TimescaleDB, ΠΊΠ°ΠΊ ΠΌΠ½Π΅ каТСтся, ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Оно Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΈΠ³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π±ΠΎΠ»Π΅Π΅ быстроС ΠΆΠ΅Π»Π΅Π·ΠΎ для Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€ΠΈΠ³Π»Π°ΡˆΠ°ΡŽ всСх вас Π½Π° наши мСроприятия: Conference – Π² МосквС, Summit – Π² Π ΠΈΠ³Π΅. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ наши ΠΊΠ°Π½Π°Π»Ρ‹ – Β«Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌΒ», Ρ„ΠΎΡ€ΡƒΠΌ, IRC. Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ вопросы – ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚Π΅ ΠΊ Π½Π°ΠΌ Π½Π° стойку, ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎΠ±ΠΎ всём.

Вопросы Π°ΡƒΠ΄ΠΈΡ‚ΠΎΡ€ΠΈΠΈ

Вопрос ΠΈΠ· Π°ΡƒΠ΄ΠΈΡ‚ΠΎΡ€ΠΈΠΈ (Π΄Π°Π»Π΅Π΅ – А): – Если TimescaleDB Ρ‚Π°ΠΊ просто Π² настройкС, ΠΈ ΠΎΠ½ Π΄Π°Ρ‘Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ прирост ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‚ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, это стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π»ΡƒΡ‡ΡˆΡƒΡŽ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ настройки «Заббикса» с Β«ΠŸΠΎΡΡ‚Π³Ρ€Π΅ΡΠΎΠΌΒ»? И Π΅ΡΡ‚ΡŒ Π»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠ°ΠΌΠ½ΠΈ ΠΈ минусы этого Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΈΠ»ΠΈ всё-Ρ‚Π°ΠΊΠΈ, Ссли я Ρ€Π΅ΡˆΠΈΠ» сСбС Π΄Π΅Π»Π°Ρ‚ΡŒ «Заббикс», я ΠΌΠΎΠ³Ρƒ спокойно Π±Ρ€Π°Ρ‚ΡŒ Β«ΠŸΠΎΡΡ‚Π³Ρ€Π΅ΡΒ», ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΡƒΠ΄Π° «ВаймскСйл» сразу, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Π½Π΅ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ Π½ΠΈ ΠΎ ΠΊΠ°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ…?

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

АГ: – Π”Π°, я сказал Π±Ρ‹, Ρ‡Ρ‚ΠΎ это Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ рСкомСндация: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Β«ΠŸΠΎΡΡ‚Π³Ρ€Π΅ΡΒ» сразу с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ TimescaleDB. Как я ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ», мноТСство Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΎΡ‚Π·Ρ‹Π²ΠΎΠ², нСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ эта Β«Ρ„ΠΈΡ‡Π°Β» ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°. Но Π½Π° самом Π΄Π΅Π»Π΅ тСсты ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ это ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ (с TimescaleDB), ΠΈ я Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒΡΡ! ΠœΡ‹ слСдим Π·Π° Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ это Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ развиваСтся ΠΈ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ.

ΠœΡ‹ Π΄Π°ΠΆΠ΅ Π²ΠΎ врСмя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠΏΠΈΡ€Π°Π»ΠΈΡΡŒ Π½Π° ΠΎΠ΄Π½Ρƒ ΠΈΡ… ΠΈΠ·Π²Π΅ΡΡ‚Π½ΡƒΡŽ Β«Ρ„ΠΈΡ‡ΡƒΒ»: Ρ‚Π°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ с Ρ‡Π°Π½ΠΊΠ°ΠΌΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Но ΠΏΠΎΡ‚ΠΎΠΌ ΠΎΠ½ΠΈ это Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π΅Π»ΠΈΠ·Π΅ Π²Ρ‹ΠΏΠΈΠ»ΠΈΠ»ΠΈ, ΠΈ Π½Π°ΠΌ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΡƒΠΆΠ΅ Π½Π΅ ΠΎΠΏΠΈΡ€Π°Ρ‚ΡŒΡΡ Π½Π° этот ΠΊΠΎΠ΄. Π― Π±Ρ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ это Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΡ… setup’ах. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ MySQL… Для срСдних setup’ов любоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

А: – На послСдних Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ community, Π±Ρ‹Π» Π³Ρ€Π°Ρ„ΠΈΠΊ с Β«Π₯аускипСром»:

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Он ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠ» Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Π§Ρ‚ΠΎ Β«Π₯аускипСр» Π΄Π΅Π»Π°Π΅Ρ‚ Π² случаС с TimescaleDB?

АГ: – БСйчас Π½Π΅ ΠΌΠΎΠ³Ρƒ Ρ‚ΠΎΡ‡Π½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ – ΠΏΠΎΡΠΌΠΎΡ‚Ρ€ΡŽ ΠΊΠΎΠ΄ ΠΈ скаТу Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ запросы ΠΈΠΌΠ΅Π½Π½ΠΎ TimescaleDB Π½Π΅ для удалСния Ρ‡Π°Π½ΠΊΠΎΠ², Π° ΠΊΠ°ΠΊ-Ρ‚ΠΎ Π°Π³Ρ€Π΅Π³ΠΈΡ€ΡƒΠ΅Ρ‚. Пока я Π½Π΅ Π³ΠΎΡ‚ΠΎΠ² ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° этот тСхничСский вопрос. На стСндС сСгодня ΠΈΠ»ΠΈ Π·Π°Π²Ρ‚Ρ€Π° ΡƒΡ‚ΠΎΡ‡Π½ΠΈΠΌ.

А: – Π£ мСня ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ вопрос – ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ удалСния Π² «ВаймскСйл».
А (ΠΎΡ‚Π²Π΅Ρ‚ ΠΈΠ· Π°ΡƒΠ΄ΠΈΡ‚ΠΎΡ€ΠΈΠΈ): – Когда Π²Ρ‹ удаляСтС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Ссли Π²Ρ‹ это Π΄Π΅Π»Π°Π΅Ρ‚Π΅ Ρ‡Π΅Ρ€Π΅Π· delete, Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΏΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ – ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ, ΠΏΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ, ΠΏΠΎΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ всё Π½Π° Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠΉ Π²Π°ΠΊΡƒΡƒΠΌ. Π’ «ВаймскСйл», Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ Ρ‡Π°Π½ΠΊΠΈ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Ρ€ΠΎΠΏΠ°Ρ‚ΡŒ. Π“Ρ€ΡƒΠ±ΠΎ говоря, Π²Ρ‹ просто Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ»Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»Π΅ΠΆΠΈΡ‚ Π² big data: Β«Π£Π΄Π°Π»ΠΈΡ‚ΡŒ!Β»

«ВаймскСйл» просто ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ‡Π°Π½ΠΊΠ° большС Π½Π΅Ρ‚. И Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ интСгрируСтся Π² ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊ запроса, ΠΎΠ½ Π½Π° Ρ…ΡƒΠΊΠ°Ρ… Π»ΠΎΠ²ΠΈΡ‚ ваши условия Π² select’С ΠΈΠ»ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… опСрациях ΠΈ сразу ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ этого Ρ‡Π°Π½ΠΊΠ° большС Π½Π΅Ρ‚ – Β«Π― Ρ‚ΡƒΠ΄Π° большС Π½Π΅ ΠΏΠΎΠΉΠ΄Ρƒ!Β» (Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚). Π’ΠΎΡ‚ ΠΈ всё! Π’ΠΎ Π΅ΡΡ‚ΡŒ скан Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ замСняСтся Π½Π° ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°, поэтому это быстро.

А: – Π£ΠΆΠ΅ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°Π»ΠΈ Ρ‚Π΅ΠΌΡƒ Π½Π΅ SQL. Насколько я понимаю, «Заббиксу» Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Π½ΡƒΠΆΠ½ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π° всё это – Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π²Ρ€ΠΎΠ΄Π΅ Π»ΠΎΠ³Π°. МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ спСциализированныС Π‘Π”, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒ свои Π΄Π°Π½Π½Ρ‹Π΅, Π½ΠΎ ΠΏΡ€ΠΈ этом Π³ΠΎΡ€Π°Π·Π΄ΠΎ быстрСС ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚, Π½Π°ΠΊΠ°ΠΏΠ»ΠΈΠ²Π°ΡŽΡ‚, ΠΎΡ‚Π΄Π°ΡŽΡ‚ – Clickhouse, допустим, Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΊΠ°Ρ„ΠΊΠ°-ΠΎΠ±Ρ€Π°Π·Π½ΠΎΠ΅?.. Kafka – это ΠΆΠ΅ Ρ‚ΠΎΠΆΠ΅ Π»ΠΎΠ³! МоТно Π»ΠΈ ΠΈΡ… ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ?

АГ: – Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Π£ нас Π΅ΡΡ‚ΡŒ опрСдСлённая Β«Ρ„ΠΈΡ‡Π°Β» с вСрсии 3.4: Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Ρ„Π°ΠΉΠ»Ρ‹ всС историчСскиС Ρ„Π°ΠΉΠ»Ρ‹, ΠΈΠ²Π΅Π½Ρ‚Ρ‹, всё ΠΏΡ€ΠΎΡ‡Π΅Π΅; ΠΈ дальшС ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ ΠΎΡ‚ΡΡ‹Π»Π°Ρ‚ΡŒ Π² Π»ΡŽΠ±ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π‘Π”. На самом Π΄Π΅Π»Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΡ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»Ρ‹Π²Π°Π΅Ρ‚ ΠΈ ΠΏΠΈΡˆΠ΅Ρ‚ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π² Π‘Π”. На Π»Π΅Ρ‚Ρƒ хистори-синкСры всё это ΠΏΠΈΡˆΡƒΡ‚ Π² Ρ„Π°ΠΉΠ»Ρ‹, Ρ€ΠΎΡ‚ΠΈΡ€ΡƒΡŽΡ‚ эти Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅, ΠΈ это Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠΈΠ΄Ρ‹Π²Π°Ρ‚ΡŒ Π² Β«ΠšΠ»ΠΈΠΊΡ…Π°ΡƒΡΒ». НС ΠΌΠΎΠ³Ρƒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ ΠΏΠ»Π°Π½Π°Ρ…, Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, дальнСйшая ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° NoSQL-Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ (Ρ‚Π°ΠΊΠΈΡ…, ΠΊΠ°ΠΊ Β«ΠšΠ»ΠΈΠΊΡ…Π°ΡƒΡΒ») Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒΡΡ.

А: – Π’ΠΎΠΎΠ±Ρ‰Π΅, получаСтся, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ постгрСса?

АГ: – ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, самая слоТная Ρ‡Π°ΡΡ‚ΡŒ Π² «ЗаббиксС» – это историчСскиС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ большС всСго ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, ΠΈ события. Π’ этом случаС, Ссли Π²Ρ‹ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π΄ΠΎΠ»Π³ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ события ΠΈ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ с Ρ‚Ρ€Π΅Π½Π΄Π°ΠΌΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΌ быстром Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, Ρ‚ΠΎ Π² Ρ†Π΅Π»ΠΎΠΌ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, Π΄ΡƒΠΌΠ°ΡŽ, Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚.

А: – ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ, насколько быстрСС всё Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Ссли ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Β«ΠšΠ»ΠΈΠΊΡ…Π°ΡƒΡΒ», допустим?

АГ: – Π― Π½Π΅ тСстировал. Π”ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Ρ‚Π΅Ρ… ΠΆΠ΅ Ρ†ΠΈΡ„Ρ€ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ достаточно просто, учитывая, Ρ‡Ρ‚ΠΎ Β«ΠšΠ»ΠΈΠΊΡ…Π°ΡƒΡΒ» ΠΈΠΌΠ΅Π΅Ρ‚ свой интСрфСйс, Π½ΠΎ Π½Π΅ ΠΌΠΎΠ³Ρƒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ. Π›ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Всё зависит ΠΎΡ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ: сколько Ρƒ вас хостов ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Вставка – это ΠΎΠ΄Π½ΠΎ, Π½ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π΅Ρ‰Ρ‘ Π·Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ эти Π΄Π°Π½Π½Ρ‹Π΅ – Grafana ΠΈΠ»ΠΈ Π΅Ρ‰Ρ‘ Ρ‡Π΅ΠΌ-Ρ‚ΠΎ.

А: – Π’ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Ρ‘Ρ‚ ΠΎ Ρ€Π°Π²Π½ΠΎΠΉ Π±ΠΎΡ€ΡŒΠ±Π΅, Π° Π½Π΅ ΠΎ большом прСимущСствС этих быстрых Π‘Π”?

АГ: – Π”ΡƒΠΌΠ°ΡŽ, ΠΊΠΎΠ³Π΄Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ, Π±ΡƒΠ΄ΡƒΡ‚ Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ тСсты.

А: – А ΠΊΡƒΠ΄Π° дСлся старый Π΄ΠΎΠ±Ρ€Ρ‹ΠΉ RRD? Π§Ρ‚ΠΎ заставило ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… SQL? Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΆΠ΅ Π½Π° RRD всС ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΡΠΎΠ±ΠΈΡ€Π°Π»ΠΈΡΡŒ.

АГ: – Π’ Β«ZabbixΒ» RRD, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, Π² ΠΎΡ‡Π΅Π½ΡŒ Π΄Ρ€Π΅Π²Π½Π΅ΠΉ вСрсии Π±Ρ‹Π». ВсСгда Π±Ρ‹Π»ΠΈ SQL-Π½Ρ‹Π΅ Π±Π°Π·Ρ‹ – классичСский ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ – это MySQL, PostgreSQL (ΠΎΡ‡Π΅Π½ΡŒ Π΄Π°Π²Π½ΠΎ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚). Π£ нас ΠΎΠ±Ρ‰ΠΈΠΉ интСрфСйс для Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… SQL ΠΈ RRD ΠΌΡ‹ практичСски Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ использовали.

HighLoad++, АндрСй Π“ΡƒΡ‰ΠΈΠ½ (Zabbix): высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

НСмного Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹ πŸ™‚

Бпасибо, Ρ‡Ρ‚ΠΎ ΠΎΡΡ‚Π°Ρ‘Ρ‚Π΅ΡΡŒ с Π½Π°ΠΌΠΈ. Π’Π°ΠΌ нравятся наши ΡΡ‚Π°Ρ‚ΡŒΠΈ? Π₯ΠΎΡ‚ΠΈΡ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ большС интСрСсных ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ²? ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΡ‚Π΅ нас, ΠΎΡ„ΠΎΡ€ΠΌΠΈΠ² Π·Π°ΠΊΠ°Π· ΠΈΠ»ΠΈ ΠΏΠΎΡ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π² Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌ, ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Π΅ VPS для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΎΡ‚ $4.99, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΎΠ³ entry-level сСрвСров, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½ Π½Π°ΠΌΠΈ для Вас: Вся ΠΏΡ€Π°Π²Π΄Π° ΠΎ VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps ΠΎΡ‚ $19 ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π΄Π΅Π»ΠΈΡ‚ΡŒ сСрвСр? (доступны Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ с RAID1 ΠΈ RAID10, Π΄ΠΎ 24 ядСр ΠΈ Π΄ΠΎ 40GB DDR4).

Dell R730xd Π² 2 Ρ€Π°Π·Π° дСшСвлС Π² Π΄Π°Ρ‚Π°-Ρ†Π΅Π½Ρ‚Ρ€Π΅ Equinix Tier IV Π² АмстСрдамС? Волько Ρƒ нас 2 Ρ… Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 Π’Π’ ΠΎΡ‚ $199 Π² НидСрландах! Dell R420 β€” 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB β€” ΠΎΡ‚ $99! Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΎ Ρ‚ΠΎΠΌ Как ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ инфраструктуру ΠΊΠΎΡ€ΠΏ. класса c ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ сСрвСров Dell R730xd Π•5-2650 v4 ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΡŽ 9000 Π΅Π²Ρ€ΠΎ Π·Π° ΠΊΠΎΠΏΠ΅ΠΉΠΊΠΈ?

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com