Pull to refresh
10
0
Алексей @ximik13

Lead Engineer

Send message

Почему твой бекап недостаточно быстр?

Reading time9 min
Views8.9K

Как и у каждой уважающей себя техподдержки, у инженеров Veeam есть свой список самых популярных поводов позвонить им в любое время дня и ночи. Это и вечно молодое “У вас неправильно работает ретенш”, и никогда не стареющее “У меня место на дисках кончилось, что делать?”, и прорва других. 

Однако среди них есть простой, казалось бы, вопрос. Он объясняется за 5 минут, но вот парадокс: его объяснение вылетает из головы в течение следующих тридцати секунд. Звучит этот чудо-вопрос примерно так: “После бекапа Veeam нарисовал мне непонятный график и написал, что у меня загрузка сорса 63%, прокси 48%, сети 99%, а таргета 0! А потом ещё и обозвал этот сорс ботлнеком, а у меня там ого-го какая железяка! И что вообще означают эти проценты?”

Сегодня объясню в текстовом виде, чтобы было куда возвращаться и перечитывать на досуге.

Bottleneck (бутылочное горлышко, если переводить в лоб) - самая медленная часть вашей бекапной инфраструктуры. Узкое место или слабое звено, если хотите. Тот самый нехороший человек, которого семеро ждать не должны, но получается, что ждут. Если переключиться на более технический язык, то эта та часть инфраструктуры, в которой данные в среднем проводят больше всего времени. То есть обрабатываются дольше всего. Получается, что это чистой воды вопрос производительности (перфоманса, как принято говорить). И знание ответа на этот вопрос позволит нам понять, какую часть в цепочке обработки данных надо ускорить, дабы повысить общую скорость процесса.

И тут откровение номер раз: чтобы говорить о перфомансе на серьёзных щщах, надо напрямую измерять интересующие нас метрики и проводить их аналитику. Это статистика загруженности дисков, процессоров, памяти и так далее. Словом, построить внутри одного продукта ещё один продукт, только мониторинговый. Поэтому Veeam ничего напрямую не измеряет, однако в логах можно найти шесть метрик, сделанных путём опосредованных измерений. 

Во время старта джобы в интерфейсе Veeam начинает рисоваться график и появляются некие цифры производительности. А если после создания бекапа проанализировать эти цифры, то можно будет сделать довольно точный вывод об узких местах.

Читать далее
Total votes 11: ↑11 and ↓0+11
Comments1

Устойчивое хранение данных и файловые API Linux

Reading time10 min
Views9.1K
Я, исследуя устойчивость хранения данных в облачных системах, решил проверить себя, убедиться в том, что понимаю базовые вещи. Я начал с чтения спецификации NVMe для того чтобы разобраться с тем, какие гарантии, касающиеся устойчивого хранения данных (то есть — гарантии того, что данные будут доступны после сбоя системы), дают нам NMVe-диски. Я сделал следующие основные выводы: нужно считать данные повреждёнными с того момента, как отдана команда записи данных, и до того момента, как завершится их запись на носитель информации. Однако в большинстве программ для записи данных совершенно спокойно используются системные вызовы.

В этом материале я исследую механизмы устойчивого хранения данных, предоставляемые файловыми API Linux. Кажется, что тут всё должно быть просто: программа вызывает команду write(), а после того, как работа этой команды завершится, данные будут надёжно сохранены на диске. Но write() лишь копирует данные приложения в кеш ядра, расположенный в оперативной памяти. Для того чтобы принудить систему к записи данных на диск, нужно использовать некоторые дополнительные механизмы.



В целом, этот материал представляет собой набор заметок, касающихся того, что я узнал по интересующей меня теме. Если очень кратко рассказать о самом важном, то получится, что для организации устойчивого хранения данных надо пользоваться командой fdatasync() или открывать файлы с флагом O_DSYNC. Если вам интересно в подробностях узнать о том, что происходит с данными на пути от программного кода к диску, взгляните на эту статью.
Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments2

IT-эмиграция и русский язык

Reading time17 min
Views27K


Люцерн на фото Олега Ненашева


Один из главных вопросов, связанных с эмиграцией — языковой. Как будешь чувствовать себя в другой языковой среде? Каково переезжать в страну, языка которой вообще не знаешь? Когда с окружающими не поговорить по-русски, возникнет ли ощущение, что остался «без подпитки живой настоящей речи»?


А в случае с IT-эмиграцией всё ещё хитрее. Российский разработчик, даже никуда не уезжая, постоянно имеет дело с английским. В эмиграции он может столкнуться с другим языком, но и английский никуда не денется. И при этом, поскольку большая часть жизни проходит в онлайне, можно не бросать русский (например, писать на Хабр или записывать подкаст). Получается жонглирование тремя языками.


Как тогда выглядит жизнь IT-эмигранта с языковой точки зрения? И как в этой жизни присутствует русскоговорящее IT-сообщество? Я расспросил шестерых человек, уехавших в самые разные страны, от Норвегии до Австралии. Троих знаю по их докладам на конференциях, которые организуем мы в JUG Ru Group, а другие трое — авторы популярных хабрапостов из хаба «IT-эмиграция».

Читать дальше →
Total votes 38: ↑37 and ↓1+48
Comments61

Путеводитель по резервному копированию баз данных

Reading time11 min
Views42K
– О, никакое убежище не выдержит попадания метеорита. Но ведь у вас, как и у каждого, есть резерв, так что можете не беспокоиться.

Станислав Лем, «Звёздные дневники Ийона Тихого»

Резервным копированием называется сохранение копии данных где-то вне основного места их хранения.



Главное назначение резервного копирования – восстановление данных после их потери. В связи с этим нередко приходится слышать, что при наличии реплики базы данных с неё всегда можно восстановить данные, и резервное копирование не нужно. На самом деле резервное копирование позволяет решить как минимум три задачи, которые не могут быть решены при помощи реплики, да и реплику без резервной копии не инициализировать.

Во-первых, резервная копия позволяет восстановить данные после логической ошибки. Например, бухгалтер удалил группу проводок или администратор БД уничтожил табличное пространство. Обе операции абсолютно легитимны с точки зрения базы данных, и процесс репликации воспроизведёт их в базе-реплике.

Во-вторых, современные СУБД – весьма надёжные программные комплексы, однако изредка всё же происходит повреждение внутренних структур базы данных, после которого доступ к данным пропадает. Что особенно обидно, такое нарушение происходит обычно при высокой нагрузке или при установке какого-нибудь обновления. Но как высокая нагрузка, так и регулярные обновления говорят о том, что база данных – отнюдь не тестовая, и данные, хранящиеся в ней, ценны.

Наконец, третья задача, решение которой требует наличия резервной копии, – это клонирование базы, например, для целей тестирования.

Резервное копирование баз данных так или иначе базируется на одном из двух принципов:

  • Выборка данных с последующим сохранением в произвольном формате;
  • Снимок состояния файлов БД и сохранение журналов.

Давайте рассмотрим эти принципы и реализующие их инструменты подробнее.
Читать дальше →
Total votes 9: ↑8 and ↓1+10
Comments16

VixDiskLibSample: тестируйте виртуальные диски правильно

Reading time7 min
Views3.3K
Когда мы сталкиваемся с неким программным продуктом, с которым нам предстоит взаимодействовать, сценарий взаимодействия мы вольны выбирать сами. Можно героически изобретать велосипед, а можно понадеяться, что авторы несколько лучше, чем мы, знают свой продукт, поэтому предоставляемый ими API (или набор библиотек) является оптимальным решением. На практике, к сожалению, не всё так радужно, но сегодня не об этом.

Для работы со своей дисковой подсистемой VMware уже много лет предоставляет VDDK — развесистый набор библиотек, документации и примеров кода, с помощью которых ваше приложение может работать с дисками виртуальных машин. Само собой мы в Veeam очень не любим изобретать ненужные велосипеды, поэтому VDDK в наших продуктах используется крайне активно.

Но это всё никак не влияет на количество клиентов, которые считают, что работать с дисками можно ещё быстрее, а все предлагаемые тесты производительности показывают априори неверные результаты. Вот в такие моменты нам на помощь и приходит ультимативное оружие — VixDiskLibSample.


Читать дальше →
Total votes 5: ↑5 and ↓0+5
Comments0

Что такое Docker: краткий экскурс в историю и основные абстракции

Reading time8 min
Views24K

10 августа в Слёрм стартовал видеокурс по Docker, в котором мы разбираем его полностью — от основных абстракций до параметров сети.


В этой статье поговорим об истории появления Docker и его основных абстракциях: Image, Cli, Dockerfile. Лекция рассчитана на новичков, поэтому вряд ли будет интересна опытным пользователям. Здесь не будет крови, аппендикса и глубокого погружения. Самые основы.


Total votes 24: ↑16 and ↓8+13
Comments9

VDDK errors с человеческим лицом

Reading time7 min
Views5.3K

Вся прелесть и ужас VDDK ошибок в том, что, с одной стороны, совершенно точно понятно, где сломалось, а с другой — совершенно непонятно, почему, и как это теперь чинить. Это примерно как RPC call function failed в мире Windows.

Хотя не всё так ужасно, конечно же. Некоторые ошибки имеют совершенно конкретные причины и методы лечения. А некоторые — давно известный список наиболее частых причин и вариантов их исправления.

Наш Veeam Technical Support, конечно же, накапливает в себе подобные знания, и сегодня мы немного подглядим в их записи. Поэтому с превеликим удовольствием представляю вам топ самых частых VDDK errors и методы их устранения.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments0

Сборник полезных ссылок для системного администратора

Reading time2 min
Views18K


Сборник полезных ссылок для системного администратора, руководства, инструкции, учебные курсы, секреты-советы и многое другое – ниже в нашем еженедельном посте.
Читать дальше: Сборник полезных ссылок для системного администратора
Total votes 15: ↑5 and ↓10-4
Comments10

Памятка «Улучшение качества связи Wi-Fi»

Level of difficultyEasy
Reading time4 min
Views26K

На Хабре уже есть много качественных статей с подробным объяснением того как работает Wi-Fi и как его настраивать. Однако у всех этих статей есть, как минимум, несколько недостатков мешающих их дать как руководство к действию условному соседу в многоэтажке или повесить распечатку на стену в подъезде.
Подробные причины создания памятки
1. понять и применить на практике большую часть материала простому пользователю сети затруднительно.

2. в статьях содержится «слишком много букв», чтобы не мотивированному что-либо делать человеку было интересно осиливать такой объём текста.

2.1. мотивация у людей отсутствует поскольку уже существующая ситуация такова: «зачем что-то вообще делать, если и так всё работает».

2.2. большинство уверены, что оно обязано работать само в формате «я его купил и воткнул в розетку».

2.3. люди даже не думают о том что Wi-Fi может работать лучше, просто воспринимают как данность ибо зачастую даже оборудование у них от провайдера.

3. некоторые моменты в существующих статьях вообще не оговорены или оговорены недостаточно, например, не даны явные рекомендации по физическому расположению оборудования, а это очень важно.

3.1. «In the wild» у людей оборудование может стоять на полу антеннами «букетом» либо вообще валяться в углу.

4. для выбора каналов в диапазоне 2.4 ГГц даются рекомендации актуальные только для Северной Америки и неоптимальные для всего остального мира.

5. у авторов статей ввиду профессиональной деформации восприятия, как и у любых экспертов, существует иллюзия что домашние пользователи будут поголовно использовать оптимальные решения.

5.1. в подавляющем большинстве оборудования, особенно в бюджетном сегменте, всё очень плохо с настройками, можно выбрать канал, иногда режим 20/40 и, зачастую, это все доступные настройки.

Читать дальше →
Total votes 16: ↑10 and ↓6+7
Comments106

Настраиваем DRBD для репликации хранилища на два CentOS 7 сервера

Reading time7 min
Views27K
Перевод статьи подготовлен в преддверии старта курса «Администратор Linux. Виртуализация и кластеризация».




DRBD (Distributed Replicated Block Device — распределённое реплицируемое блочное устройство) представляет собой распределенное, гибкое и универсально реплицируемое решение хранения данных для Linux. Оно отражает содержимое блочных устройств, таких как жесткие диски, разделы, логические тома и т.д. между серверами. Оно создает копии данных на двух устройствах хранения для того, чтобы в случае сбоя одного из них можно было использовать данные на втором.

Можно сказать, что это нечто вроде сетевой конфигурации RAID 1 с дисками, отражаемыми на разные сервера. Однако оно работает совсем не так, как RAID (даже сетевой).
Читать дальше →
Total votes 5: ↑5 and ↓0+5
Comments8

XFS, Reflink и Fast Clone. Созданы друг для друга

Reading time9 min
Views9.6K
Как все мы знаем, XFS — это высокопроизводительная журналируемая файловая система, созданная в недрах Silicon Graphics. А высокопроизводительная она потому, что способна справляться с множеством параллельных потоков ввода-вывода. Так что если вам интересна файловая система с легко масштабируемой пропускной способностью и не деградирующая от работы с несколькими устройствами одновременно, то вам, однозначно, сюда. Но сегодня мы будем нахваливать не весь XFS, а один конкретный его флаг — reflink. Он включает возможность переиспользовать одинаковые блоки данных между файлами, обеспечивая дедупликацию и возможность делать быстрые copy-on-write снапшоты.

Грешновато проходить мимо такой увлекательной функциональности, поэтому сегодня мы посмотрим, как reflink может помочь всем ответственным за бекапы, и что на этой ниве нам может предложить Veeam Backup & Replication 10.


Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments4

Основы ZFS: система хранения и производительность

Reading time17 min
Views95K


Этой весной мы уже обсудили некоторые вводные темы, например, как проверить скорость ваших дисков и что такое RAID. Во второй из них мы даже пообещали продолжить изучение производительности различных многодисковых топологий в ZFS. Это файловая система следующего поколения, которая сейчас внедряется повсюду: от Apple до Ubuntu.
Читать дальше →
Total votes 34: ↑33 and ↓1+39
Comments33

Скромное руководство по схемам баз данных

Reading time7 min
Views39K

Geometry of Flowers by Mookiezoolook

Для приложений, которые будут масштабироваться по трафику и сложности, крайне важно изначально спроектировать грамотную схему базы данных. Если сделать плохой выбор, придется потратить много усилий, чтобы этот плохой шаблон не распространился на службы и контроллеры бэкендов и, наконец, на фронтенд.

Но как оценить, какая схема лучше? И что вообще значит «лучше», когда мы говорим об архитектуре БД? Команда Mail.ru Cloud Solutions предлагает познакомиться с рекомендациями Майка Алча, консультанта по разработке программного обеспечения. Нам кажется, что он довольно лаконично резюмировал некоторые принципы грамотной архитектуры.
Читать дальше →
Total votes 34: ↑26 and ↓8+34
Comments11

Создаём установочный носитель с множеством версий Windows NT 6.0+ без использования стороннего софта

Reading time18 min
Views123K

КДПВЗдравствуйте. Сегодня я расскажу как можно создать единый установочный носитель с множеством разных версий Windows не прибегая к использованию стороннего ПО. Таким образом вы будете полностью понимать какие манипуляции мы выполняем.


Также я сделаю упор на то, чтобы как можно меньше энтропии привносить в этот мир изменять структуру оригинальных установочных дистрибутивов.


Кому интересно — прошу под кат.

А ну-ка, посмотрим
Total votes 34: ↑33 and ↓1+32
Comments108

Сохраните в закладках эту статью, если вы новичок в Python (особенно если изучаете Python сами)

Reading time6 min
Views49K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Bookmark this if you are new to Python (especially if you self-learn Python)" в двух частях (1, 2) c простыми, но полезными советами и трюками в Python.



Если из-за скучной карантинной жизни вы решили погрузиться в Python, поздравляю. Вы столкнулись с самым быстрорастущим языком программирования. Я уверен, что вы уже знаете некоторые преимущества Python, такие как его простота, легкость в освоении и т.д. Это также основные причины, по которым я изучил Python пять лет назад. Я надеюсь, что вы сможете изучать Python более эффективно и наслаждаться этим процессом, и для этого я подготовил список простых, но полезных трюков и советов.


Уточнение: в настоящее время я использую Python 3.8. Если вы столкнулись с какими-либо проблемами во время запуска моих примеров, пожалуйста, проверьте, не связано ли это с вашей версией Python.

Читать дальше →
Total votes 24: ↑18 and ↓6+18
Comments22

Да мой старый laptop в несколько раз мощнее, чем ваш production server

Reading time5 min
Views98K
Именно такие претензии я услышал от наших девелоперов. Самое интересное, что это оказалось правдой, дав начало длительному расследованию. Речь пойдет про SQL servers, которые крутятся у нас на VMware.


Читать дальше →
Total votes 141: ↑139 and ↓2+178
Comments74

Забота о домашних: делаем бэкап ноутбука или десктопа с помощью бесплатных Veeam Agents

Reading time6 min
Views20K
В обычной жизни я, как и многие из вас, уважаемые читатели, большую часть времени работаю в офисе, и меня это вполне устраивает. Но сегодня ситуация такова, что и я, и мои коллеги в разных уголках мира, и, думаю, большинство читающих эту статью — все мы работаем из дома.

И тут совсем нелишним будет напомнить о необходимости резервного копирования домашнего компьютера или ноутбука. Ибо когда меняется рабочая обстановка, меняется и привычная манера работы с данными. С работой в офисе всё очевидно: доступ напрямую к нужным ресурсам, централизованное резервное копирование, если что — всегда можно обратиться в helpdesk. С работой же из дома многие вещи нужно предусмотреть самостоятельно, в том числе бэкап.

Полагаю, что многие из вас уже используют для этого Veeam Agent for Microsoft Windows или Veeam Agent for Linux. Если же ещё нет — то, возможно, вас заинтересует сегодняшний краткий обзор. Итак, добро пожаловать под кат.


Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments11

Выбираем флеш-карты: подробное руководство по разновидностям Secure Digital

Reading time10 min
Views54K


При выборе жесткого диска у «продвинутого» покупателя обычно не возникает особых проблем. Взять тот же WD6003FZBX на 6 ТБ: скорость вращения шпинделя 7200 оборотов в минуту, вместительный кэш в 256 мегабайт и наличие высокоскоростного интерфейса SATA III с пропускной способностью 6 Гбит/с красноречиво свидетельствуют о том, что перед нами высокопроизводительное решение, способное удовлетворить нужды как заядлых геймеров и энтузиастов, так и профессионалов. Единственный нюанс, который здесь необходимо учитывать, заключается в том, что показатель 6 Гбит/с — это пропускная способность самой шины: хотя скорость передачи информации из кэша в систему составляет 550 МБ/с, реальная скорость обмена данными между системой и накопителем для рассматриваемой модели достигает 227 МБ/с, что все равно является превосходным результатом для классических винчестеров. Впрочем, об этом и так знает практически любой технически подкованный пользователь ПК.

Когда же речь заходит о флеш-картах, в тупик может зайти даже бывалый админ. За примерами далеко ходить не надо: достаточно открыть страницу карты памяти SanDisk Extreme PRO UHS-I. Помимо привычных строк «скорость чтения: до 170 МБ/с» и «скорость записи: до 90 МБ/с», в спецификациях красуется таинственная надпись «скорость видео: C10, U3, A2, V30». Но позвольте, мы уже знаем скоростные характеристики продукта. Зачем нужны еще какие-то непонятные классы скорости, да еще и в количестве четырех штук? И в чем вообще состоит принципиальное отличие перечисленных показателей друг от друга? Именно в этих вопросах нам предстоит разобраться в сегодняшнем материале.
Читать дальше →
Total votes 31: ↑31 and ↓0+31
Comments31

Что общего между LVM и матрешкой?

Reading time43 min
Views13K
Доброго времени суток.
Хочу поделиться с сообществом практическим опытом построения системы хранения данных для KVM с использованием md RAID + LVM.

В программе будет:

  • Сборка md RAID 1 из NVMe SSD.
  • Сборка md RAID 6 из SATA SSD и обычных дисков.
  • Особенности работы TRIM/DISCARD на SSD RAID 1/6.
  • Создание загрузочного md RAID 1/6 массива на общем наборе дисков.
  • Установка системы на NVMe RAID 1 при отсутствии поддержки NVMe в BIOS.
  • Использование LVM cache и LVM thin.
  • Использование BTRFS снимков и send/recieve для резервного копирования.
  • Использование LVM thin снимков и thin_delta для резервного копирования в стиле BTRFS.

Если заинтересовало, прошу под кат.
Total votes 11: ↑11 and ↓0+11
Comments6

Технический обзор архитектуры СХД Infinidat

Reading time8 min
Views6.6K
InfiniBox – модерновая система хранения, сразу попавшая в правую часть магического квадрата. В чем ее уникальность?

Краткая предыстория

Что такое InfiniBox? Это система хранения компании Infinidat. Что такое компания Infinidat? Это компания, созданная Моше Янаем (создатель Symmetrix и XIV) для реализации проекта идеальной СХД Enterprise-уровня.

Компания создана как разработчик ПО, которое ставится на проверенное оборудование, то есть это SDS, но поставляется как единый монолитный комплект.

Введение

В этой статье мы рассмотрим систему хранения InfiniBox, ее архитектуру, как она работает и как достигается высокая надежность (99,99999%), производительность, емкость при сравнительно невысокой цене. Поскольку основа системы хранения — это ее ПО, а для этой системы в особенности, то основной упор будет именно на софте, красивых фото железок не будет.

Зачем нужна еще одна система хранения на рынке?

Есть ряд задач, для которых нужна очень большая емкость, при этом надежность и производительность тоже важны. Например, облачные системы, стандартные задачи крупных компаний, интернет вещей, генные исследования, системы безопасности для больших структур. Оптимальную СХД для таких задач найти достаточно сложно, особенно если смотреть на цену. С прицелом на такие задачи и была построена программная архитектура InfiniBox.
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments13

Information

Rating
Does not participate
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity