• 12 вопросов о самокатах, которые не стыдно задать

      Мир прочно подсел на колёса. Радует, что в этот раз на правильные. Среди них — самокаты. Чисто конструктивно это весьма простая штука — в уже совсем далёком детстве мы гоняли на том самом, который деревяшки и два колеса. Иногда деревяшки были расписаны городецкой росписью. Транспорт из детства жутко гремел, но казался едва ли не самым весёлым на свете, особенно когда под горку коленками об асфальт. И никто из нас и думать не мог, что снова встанет на самокат будучи взрослым. Но на какой! Лёгкая и прочная складная конструкция, бесшумные колёса, амортизаторы, тормоза и даже электромоторчик. И всё, начинается: «Я покоритель пробок! Я лечу над городом! Я гроза тротуаров! Чёрт, как его впихнуть в автобус? А он выдержит мою тушу в 90 кг? А я не окривею? А если сыну дать покататься?». Мы собрали топ самых волнующих вопросов и готовы на них ответить. Ну что, погнали?

      Читать дальше →
    • Настройка MongoDB ShardedCluster с X.509 аутентификацией

      Всем доброго времени суток! Недавно жизнь подкинула автору увлекательную работу по развертыванию MongoDB кластера с настройкой репликации и шардирования, а также аутентификации c использованием x.509 сертификатов. В данной статье я в первую очередь хотел бы изложить свои мысли и поделиться полученными опытом. Так как некоторые вещи оказались не тривиальными и сделать их с первого раза не удавалось, то думаю мои пошаговые инструкции могут пригодиться для освещения вопроса тем кто только знакомится с шардированием данных и работой с MongoDB в целом.
      Также я буду очень рад увидеть рекомендации по добавлению/изменению конфигурации кластера и просто вопросы или критику по самой статье или по сути вопроса.
      Читать дальше →
    • Подводные камни Bash

      • Translation


      В этой статье мы поговорим об ошибках, совершаемых программистами на Bash. Во всех приведённых примерах есть какие-то изъяны. Вам удастся избежать многих из нижеописанных ошибок, если вы всегда будете использовать кавычки и никогда не будете использовать разбиение на слова (wordsplitting)! Разбиение на слова — это ущербная легаси-практика, унаследованная из оболочки Bourne. Она применяется по умолчанию, если вы не заключаете подстановки (expansions) в кавычки. В общем, подавляющее большинство подводных камней так или иначе связаны с подстановкой без кавычек, что приводит к разбиению на слова и глоббингу (globbing) получившегося результата.


      Читать дальше →
    • Mikrotik QOS в распределенных системах или умные шейперы

      • Tutorial
      А что бы вы со своей стороны могли предложить?
      — Да что тут предлагать… А то пишут, пишут… конгресс, немцы какие-то… Голова пухнет. Взять все, да и поделить.
      — Так я и думал, — воскликнул Филипп Филиппович, шлепнув ладонью по скатерти, — именно так и полагал.
      М. Булгаков, «Собачье сердце»


      image Про разделение скорости, приоритезацию, работу шейпера и всего остального уже много всего написано и нарисовано. Есть множество статей, мануалов, схем и прочего, в том числе и написанных мной материалов. Но судя по возрастающим потокам писем и сообщений, пересматривая предыдущие материалы, я понял — что часть информации изложена не так подробно как это необходимо, другая часть просто морально устарела и просто путает новичков. На самом деле QOS на микротике не так сложен, как кажется, а кажется он сложным из-за большого количества взаимосвязанных нюансов. Кроме этого можно подчеркнуть, что крайне тяжело освоить данную тему руководствуясь только теорией, только практикой и только прочтением теории и примеров. Основным костылем в этом деле является отсутствие в Mikrotik визуального представления того, что происходит внутри очереди PCQ, а то, что нельзя увидеть и пощупать приходится вообразить. Но воображение у всех развито индивидуально в той или иной степени.
      Читать дальше →
    • 350+ полезных ресурсов, книг и инструментов для работы с Docker

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

      Читать дальше →
      • +28
      • 88.2k
      • 8
    • Wi-Fi: неочевидные нюансы (на примере домашней сети)

        Сейчас многие покупают точки доступа 802.11n, но хороших скоростей достичь удается не всем. В этом посте поговорим о не очень очевидных мелких нюансах, которые могут ощутимо улучшить (или ухудшить) работу Wi-Fi. Всё описанное ниже применимо как к домашним Wi-Fi-роутерам со стандартными и продвинутыми (DD-WRT & Co.) прошивками, так и к корпоративным железкам и сетям. Поэтому, в качестве примера возьмем «домашнюю» тему, как более родную и близкую к телу. Ибо даже самые администые из админов и инженеристые из инженеров живут в многоквартирных домах (или поселках с достаточной плотностью соседей), и всем хочется быстрого и надежного Wi-Fi.
        [!!]: после замечаний касательно публикации первой части привожу текст целиком. Если вы читали первую часть — продолжайте отсюда.
        Читать дальше →
      • Планируем ресурсы для Veeam Backup & Replication 8.0: расчет требуемого места в репозитории

        • Translation
        Чтобы при планировании ресурсов для Veeam Backup & Replication люди могли прикинуть, сколько места потребуется в репозитории для бэкапа виртуальной машины, в свое время был создан калькулятор-симулятор точек восстановления Restore Point Simulator (RPS).

        image

        Но поскольку периодически приходится слышать от пользователей «А почему\зачем здесь это значение?», то сегодня я дам несколько пояснений насчет параметров ввода и расскажу, откуда взялись значения по умолчанию.
        За подробностями добро пожаловать под кат.
        Читать дальше →
        • +9
        • 14.8k
        • 1
      • Аудит системных событий в Linux

        • Tutorial
        Linux Audit

        Одним из инструментов, позволяющих повысить уровень безопасности в Linux, является подсистема аудита. C её помощью можно получить подробную информацию обо всех системных событиях.
        Она не обеспечивает никакой дополнительной защиты, но предоставляет подробную информацию о нарушениях безопасности, на основании которой можно принять конкретные меры. Особенности работы с подсистемой аудита мы рассмотрим в этой статье.
        Читать дальше →
        • +49
        • 75.9k
        • 5
      • Ограничение памяти, доступной программе

        • Translation
        Решил я как-то заняться задачкой сортировки миллиона целых чисел при имеющейся памяти в 1 Мб. Но перед этим мне пришлось подумать над тем, как можно ограничить объём доступной памяти для программы. И вот, что я придумал.

        Виртуальная память процесса


        Перед тем, как окунуться в разные методы ограничения памяти, необходимо знать, как устроена виртуальная память процесса. Лучшая статья на эту тему — «Анатомия программы в памяти».

        Прочитав статью, я могу предложить две возможности для ограничения памяти: уменьшить виртуальное адресное пространство или объём кучи.

        Первое: уменьшение объёма адресного пространства. Это довольно просто, но не совсем корректно. Мы не можем уменьшить всё пространство до 1 Мб — не хватит места для ядра и библиотек.

        Второе: уменьшение объёма кучи. Это не так-то просто сделать, и обычно так никто не делает, поскольку это доступно только через возню с компоновщиком. Но для нашей задачи это был бы более корректный вариант.

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

        Для тестирования будем использовать небольшую программу по имени big_alloc, размещающую, и затем освобождающую 100 MiB.
        Читать дальше →
      • Тюним память и сетевой стек в Linux: история перевода высоконагруженных серверов на свежий дистрибутив

          image

          До недавнего времени в Одноклассниках в качестве основного Linux-дистрибутива использовался частично обновлённый OpenSuSE 10.2. Однако, поддерживать его становилось всё труднее, поэтому с прошлого года мы перешли к активной миграции на CentOS 7. На подготовительном этапе перехода для CentOS были отработаны все внутренние процедуры, подготовлены конфиги и политики настройки (мы используем CFEngine). Поэтому сейчас во многих случаях миграция с одного дистрибутива на другой заключается в установке ОС через kickstart и развёртывании приложения с помощью системы деплоя нашей разработки — всё остальное осуществляется без участия человека. Так происходит во многих случаях, хотя и не во всех.

          Но с самыми большими проблемами мы столкнулись при миграции серверов раздачи видео. На их решение у нас ушло полгода.
          Читать дальше →
        • Как Linux работает с памятью. Семинар в Яндексе

            Привет. Меня зовут Вячеслав Бирюков. В Яндексе я руковожу группой эксплуатации поиска. Недавно для студентов Курсов информационных технологий Яндекса я прочитал лекцию о работе с памятью в Linux. Почему именно память? Главный ответ: работа с памятью мне нравится. Кроме того, информации о ней довольно мало, а та, что есть, как правило, нерелевантна, потому что эта часть ядра Linux меняется достаточно быстро и не успевает попасть в книги. Рассказывать я буду про архитектуру x86_64 и про Linux­-ядро версии 2.6.32. Местами будет версия ядра 3.х.



            Эта лекция будет полезна не только системным администраторам, но и разработчикам программ высоконагруженных систем. Она поможет им понять, как именно происходит взаимодействие с ядром операционной системы.

            Термины


            Резидентная память – это тот объем памяти, который сейчас находится в оперативной памяти сервера, компьютера, ноутбука.
            Анонимная память – это память без учёта файлового кеша и памяти, которая имеет файловый бэкенд на диске.
            Page fault – ловушка обращения памяти. Штатный механизм при работе с виртуальной памятью.
            Читать дальше →
          • Персональные финансы 2: Money Never Sleeps — как себя финансово защитить?

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

              Краткий обзор нижеследующего текста:
              1. Как накопить безболезненно?
              2. Куда девать накопленное?
              3. Преимущества и подводные камни разных инструментов.
              4. Как накопить больше?
              5. Как объединить это все в систему (немного цифр)?

              Я здесь специально не буду рассматривать вопросы учета и оптимизации расходов (об этом уже было несколько статей на Хабре) — мы будем говорить именно о том случае, когда вы зарабатываете больше, чем тратите. Если это не так — дальше читать нет смысла, пока вы не научитесь контролировать свои расходы — иначе вам элементарно не будет, чем управлять. Ведь, вы должны понимать, что человек зарабатывающий 10 000 долларов и тратящий 9999 долларов в данном контексте проигрывает человеку, который зарабатывает 1000 долларов и тратит 900 долларов.

              Как накопить безболезненно. Золотое правило


              Я писал о том, насколько важно время — чем раньше начнешь, тем лучше будет результат. Так вот здесь я хочу дополнить это правило третьим пунктом — дисциплина. Причем приоритетность этих пунктов снова не в пользу самих денег (читай «суммы денег»): ВРЕМЯ, ДИСЦИПЛИНА, ДЕНЬГИ. Именно в такой последовательности, и никак иначе.

              Много интересного
            • 12 способов не накосячить со вспышкой

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

                Ниже — достаточно известные вещи, которые, однако, вызывали facepalm у тех, кто был вместе со мной или же у меня. В списке грабель вы с некоторой вероятностью можете найти что-нибудь новое. Если хотя бы она фича использования вспышки окажется для вас полезной, то мою задачу можно считать выполненной.
                Читать дальше →
              • Культурные различия. Общение с американскими коллегами

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

                  Мой первый рассказ — об американцах.

                  Вообще, они от нас (израильтян) в шоке. На семинаре показывали интервью с американкой, которая полгода работала в израильском офисе американской компании. Первое время ей казалось, что все агрессивны и грубы. Потом поняла, что это такая манера общения — люди повышают голос и перебивают друг друга во время дискуссий, люди могут сказать коллеге (и даже начальнику!), что он не прав и т.д.

                  С большим стыдом вспоминал, как я повторял «I disagree!» на последнем Face2face.

                  Американцы жаловались на израильтян так же, что те постоянно импровизируют, а израильтяне на американцев, что те постоянно тупо следуют инструкциям.

                  Кстати, сказать, как у нас «Та уборщица… какая? Ну, эфиопка ...» или «В соседнем отделе есть такой мужик умный, индус низенький такой» — тоже нельзя.
                  Надо объяснять о ком идет речь, не используя национальность, религию и сексуальные предпочтения.

                  Итак, правила для общения с американцами:
                  Читать дальше →
                • Гранин. Эта странная жизнь

                    Очень часто на хабре сейчас появляются статьи на тему тайм-менеджмента. Много советов и собственных примеров. Это словосочетание уже даже начинает раздражать, особенно, если не получается следовать рекомендациям, а статьи по две в день. С другой стороны скажешь это по-русски: управление временем — и совсем иной смысл появляется.
                    На днях я прочитал книгу, в которой это управление временем возведено в высшую степень. Вся жизнь человека посвящена этому. Вся его странная жизнь.

                    Был такой человек: Александр Любищев. Гениальный учёный, биолог, профессор, потрясающий человек, увлекающийся очень многими сторонами жизни. Можно сказать Ломоносов современности.
                    Был другой человек: Даниил Гранин. Писатель, который посвящал свои произведения трудам учёных и сильных личностей. Так вот взял Гранин, не пожалел своего времени и себя и написал биографию Любищева. Пожалуй, это третья биография, которую мне было интересно читать (первая — это «Вы, наверно, шутит, мистер Фейнман», вторая — «Just for fun»).
                    Читать дальше →
                  • GRUB всемогущий, или Делаем загрузочную флешку

                      Про сам grub, загрузочные флешки и особенно специальные утилиты для создания дисков написано уже не мало, но выглядят они узко направленными. Например только для создания флешки Windows 7, различные PEtoUSB, есть более универсальные как в этом топике. Куча утилит по сути устанавливают загрузчик grub, isolinux (реже BCDW или lilo, еще реже свой как Win7), и затем раскладывают предложенные ему файлы (Windows7,WindowsXP, Ubuntu и т.д.) по папкам. От сюда и требовательность к образам (как писали в комментариях к этому топику).

                      А между тем абсолютное большинство выложенных в интернете дисков (особенно USB) как раз и используют isolinux и grub, что мешает их просто объединять? да ничего!

                      Я постараюсь с примерами рассказать, как сделать загрузочную, установочную и просто Live флешку, причем все в одном без заточенных под конкретный дистрибутив утилит. И иметь возможность, при необходимости, легко добавить на флешку еще что-то, без очередного ее переформатирования.
                      image
                      (С) Картинка оттуда
                      Читать дальше →
                    • SCT Error Recovery Control

                        … или что такое на самом деле 'raid edition' для жёстких дисков



                        Немного теории


                        Существуют две стратегии поведения НЖМД при обнаружении ошибки:
                        • standalone/desktop — пытаться прочитать до последнего. Это ощущается как «тормозящий винт», который всё-таки работает, если это единичный сбой, то «затупило, но прошло», плюс характерный перестук перекалибрующихся головок.
                        • raid — отваливаться тут же. Это ощущается как «внезапно была ошибка диска но потом mhdd и т.д. НИЧЕГО НЕ НАШЁЛ ЧТО МНЕ ДЕЛАТЬ».
                        Статегии очевидным образом различаются по предназначению — десктоп лучше протупит, но ошибку не выдаст, в рейде есть запасной винт, и терпеть минутные тормоза на чтении никто не имеет никакой возможности. Не получилось прочитать? Читаем с запасных винтов, помечаем весь винт как сбойный, начинаем ресинк, а диск потом отправят в утилизатор. Возможно, незаслуженно, но нечего икать на ответственной должности.

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

                        Расшифровка названия


                        Возможность управления поведением диска при ошибках называется очень и очень путанно: SCT ERC. Это расшифровывается как SCT Error Recovery Control. SCT в свою очередь название общего протокола SMART Command Transport. SMART в свою очередь расшифровывается как Self-Monitoring, Analysis and Reporting Technology, таким образом, полная расшифровка SCT ERC звучит так: Self-Monitoring, Analysis and Reporting Technology Command Transport Error Recovery Control (выдохнули).
                        Читать дальше →
                      • Внутренняя жизнь клетки и другие проекты студии XVIVO

                          image

                          После просмотра заметки Наглядно о ДНК удивился тому, что на Хабре этого ещё не было. Решил восполнить пробел. К тому же в коментариях упомянули один из самых популярных роликов, с него и начну.
                          В 2006 по заказу Гарвардского университета студией XVIVO была создана серия анимационных видео посвященных биологии клетки. Первый ролик «Внутренняя жизнь клетки» («The inner life of cell») демонстрирует механизм, благодаря которому белые кровяные тельца способны чувствовать окружающую среду и реагировать на внешние сигналы.
                          Видео впоследствии опубликовали на сайте Гарвардского университета BioVisions

                          UPD: версия с коментариями (на английскийском).

                          Подробнее об этой и других анимационных работах XVIVO
                        • Как покупать электронику на Amazon

                            Amazon logo
                            Наверняка многие из вас попадали в ситуацию, когда в американском интернет-магазине есть интересующая вас вещичка по заманчивой цене, но доставку магазин осуществляет только в пределах США. Например, в крупнейшем интернет-магазине Amazon жители из стран СНГ могут заказывать лишь книги и фильмы, и то не все. Конечно же, можно компенсировать данный недостаток с помощью ebay, но где еще у вас может быть шанс купить iPod Touch 32 GB 3rd Gen за $269.99, а Nokia N900 за $559.99? А может, грешным делом заказать Nexus One? Падение доллара и ценовая политика производителей сделала покупки в США достаточно заманчивым делом.
                            Все самое интересное под катом
                          • Пять условий офигительного тех. саппорта

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

                              Сразу поясню, что эти советы/правила больше относятся к саппорту через HelpDesk или e-mails, у телефонной поддержки есть некоторые свои особенности.

                              1. Быстрая реакция и ответы


                              Клиенты любят быстрый саппорт, они его обожают. Из-за быстрого саппорта они могут закрыть глаза на многое: на высокую цену продукта, ваши ошибки, баги софта. Чем быстрее отвечает и решает проблемы ваш саппорт — тем лучше.

                              К сожалению быстрый саппорт, доступный 24/7, это дорого: нужно больше людей и нужна круглосуточно доступная инфраструктура. Чаще всего это просто невыгодно, особенно если вы не крупная корпорация, а маленький стартапчик.

                              В этом случае нам поможет одна интересная штука.
                              Читать дальше →