• Организация инфраструктуры с помощью Kubernetes и Helm. Видеозаписи докладов с Kubernetes meetup 22 марта 2017

      image

      22 марта в Avito прошёл второй митап московского Kubernetes коммьюнити, а сегодня мы делимся материалами встречи. Денис Измайлов сделал обзор последних изменений инструмента, Евгений Ольков и Павел Селиванов рассказали про то, как используется Kubernetes, соответственно, в Avito и Центре Недвижимости от Сбербанка, а Сергей Орлов сделал короткий доклад про пакетный менеджер Helm. Приятного просмотра!
      Читать дальше →
      • +29
      • 9.7k
      • 1
    • Мы два года развивали свою систему мониторинга. Кликай, чтобы…

        Всем привет!


        Я уже рассказывал в этом блоге об организации модульной системы мониторинга для микросервисной архитектуры и о переходе с Graphite+Whisper на Graphite+ClickHouse для хранения метрик в условиях высоких нагрузок. После чего мой коллега Сергей Носков писал о самом первом звене нашей системы мониторинга — разработанном нами Bioyino, распределённом масштабируемом агрегаторе метрик.


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


        Читать дальше →
      • Введение в процессы загрузки ядра и запуска системы Linux

        • Translation
        Всем привет! Вот мы и открыли очередной, четвёртый по счёт уже, поток курса «Администратор Linux», который уверенно занимают свою нишу рядом с девопсерским курсом. Больше преподавателей, больше информации и стендов. Ну и как всегда больше интересной информации, которую подобрали преподаватели.

        Поехали.

        Задумывались ли вы когда-нибудь, что нужно для того, чтобы ваша система была готова к запуску приложений?

        Понимать процессы загрузки ядра и запуска системы Linux, важно для настройки Linux и решения проблем запуска. В этой статье представлен обзор процесса загрузки ядра с использованием GRUB2 загрузчика и запуска, выполняемого системой инициализации systemd.

        На самом деле, есть два ряда событий, необходимых для приведения компьютера с Linux в рабочее состояние: загрузка ядра (boot) и запуск системы (startup). Процесс загрузки ядра начинается при включении компьютера и заканчивается с инициализацией ядра и запуском systemd. После этого начинается процесс запуска системы, и именно он доводит компьютер Linux до рабочего состояния.

        Читать дальше →
      • Улучшение производительности Zabbix + PostgreSQL при помощи партиционирования и индексирования

        • Tutorial
        Примерно год назад передо мной и моими коллегами была поставлена задача разобраться с использованием популярной системы мониторинга сетевой инфраструктуры — Zabbix. После изучения документации мы сразу же перешли к нагрузочному тестированию: хотели оценить с каким количеством параметров может работать Zabbix без заметных падений производительности. В качестве СУБД использовали только PostgreSQL.

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

        О результатах проделанной работы я и хочу поделиться в данной статье. Статья будет полезна как администраторам Zabbix, так и PostgreSQL DBA, а также всем желающим лучше понять и разобраться в популярной СУБД PosgreSQL.

        Небольшой спойлер: на слабой машине при нагрузке в 200 тысяч параметров в минуту нам удалось снизить показатель CPU iowait с 20% до 2%, уменьшить время записи порциями в таблицы первичных данных в 250 раз и в таблицы агрегированных данных в 32 раза, уменьшить размер индексов в 5-10 раз и ускорить получение исторических выборок в некоторых случаях до 18 раз.
        Читать дальше →
      • Удалённое включение компьютера бесплатно, без SMS и без облаков, с помощью Mikrotik

        • Tutorial
        … а также без проброса портов, SSH/telnet и установки сторонних приложений. С любого компьютера, подключённого к интернет и даже с телефона!

        Периодически мне бывает нужно включить домашний компьютер, когда я нахожусь не дома. Обычно я не запаривался и звонил или отправлял сообщение с такой просьбой жене, которая сидит дома в декрете. Очень удобное средство удалённого управления с голосовым интерфейсом. Однако у этого способа есть ряд недостатков — ушла гулять, укладывает ребёнка, или ещё чем либо занята. Хотелось простого решения из того что есть под рукой.
        Тыкни меня!
      • Плагин Veeam для бэкапа и восстановления баз данных SAP HANA

        • Translation
        • Tutorial
        В этом сезоне разработчики Veeam представили решение для бэкапа и восстановления серверов и баз данных SAP HANA. Читатели нашего блога проявили интерес к новинке — а тут как раз подоспела и полезная статья от моего коллеги Клеменса Зербе. Сегодня поделюсь ею с вами, немного дополнив. Итак, добро пожаловать под кат.


        Читать дальше →
      • Несколько малоизвестных возможностей docker-compose

          Во многих инструкциях с просторов интернета описывают некий минимум действий, и как следствие минимум команд и возможностей.


          Я решил сделать некую подборку мало освещенных возможностей, особенностей. Статья не претендует на уникальность, это и мне, как памятка, и возможно некоторым падаванам поможет, начинающим свой путь с docker-compose.

          Читать дальше →
        • Создаем инфраструктуру как код с GitLab и Ansible

          • Translation


          Вся мощь GitLab CI в демонстрации плейбуков Ansible при подходе «инфраструктура как код».


          GitLab CI — это эффективный инструмент для самых разных сценариев, включая инфраструктуру как код. GitLab можно использовать с разными инструментами, но в этой демонстрации мы возьмем Ansible, потому что именно его чаще всего используют разработчики при подходе «инфраструктура как код». Вот демо с двумя маршрутизаторами из курса по сетям Ansible.

          Читать дальше →
        • Как переехать с ESXi на KVM/LXD и не сойти с ума

            В компании «Макснет Системы» в качестве гипервизора долгое время использовалась бесплатная версия VMware — ESXi, начиная с версии 5.0. Платная версия vSphere отпугивала моделью лицензирования, а у бесплатной был ряд недостатков, которые отсутствовали в платной, но с ними можно было смириться. Но когда в новых версиях ESXi новый веб-интерфейс отказался работать со старым, а мониторинг RAID-массивов перестал подавать признаки жизни, компания решила искать более универсальное и открытое решение. В компании уже был неплохой опыт и приятное впечатление от LXC — Linux Containers. Поэтому стало очевидно, что гипервизор мечты будет гибридным и сочетать для разных нагрузок KVM и LXD — эволюционное продолжение LXC. В поисках информации относительно KVM, компания сталкивалась с заблуждениями, граблями и вредными практиками, но тесты и время расставили все по местам.



            О том, как справиться с переездом с ESXi на KVM и не проколоть колеса на граблях, расскажет Лев Николаев (maniaque) — администратор и разработчик высоконагруженных систем, тренер по информационным технологиям. Поговорим о Сети, хранилищах, контейнерах, KVM, LXD, LXC, provisioning и удобных виртуалках.
            Читать дальше →
          • Руководство для начинающих по SELinux

            • Translation


            Перевод статьи подготовлен для студентов курса «Безопасность Linux»




            SELinux или Security Enhanced Linux — это улучшенный механизм управления доступом, разработанный Агентством национальной безопасности США (АНБ США) для предотвращения злонамеренных вторжений. Он реализует принудительную (или мандатную) модель управления доступом (англ. Mandatory Access Control, MAC) поверх существующей дискреционной (или избирательной) модели (англ. Discretionary Access Control, DAC), то есть разрешений на чтение, запись, выполнение.

            Читать дальше →
            • +25
            • 10.2k
            • 2
          • Настройка PHP-FPM: используем pm static для максимальной производительности

            • Translation


            Неотредактированная версия статьи была изначально опубликована на haydenjames.io и публикуется здесь с разрешения ее автора.


            Я в двух словах расскажу, как лучше всего настроить PHP-FPM, чтобы увеличить пропускную способность, снизить задержку и более стабильно использовать процессорные ресурсы и память. По умолчанию строка PM (process manager, менеджер процессов) в PHP-FPM имеет значение dynamic, а если у вас не хватает памяти, то лучше установить ondemand. Давайте сравним 2 варианта управления на основе документации php.net и посмотрим, чем от них отличается мой любимый static pm для большого объема трафика:


            pm = dynamic — количество дочерних процессов настраивается динамически на основе следующих директив: pm.max_children, pm.start_servers,pm.min_spare_servers, pm.max_spare_servers.
            pm = ondemand — процессы создаются по требованию (в отличие от динамического создания, когда pm.start_servers запускаются при запуске сервиса).
            pm = static — количество дочерних процессов фиксировано и указывается параметром pm.max_children.

            Читать дальше →
            • +23
            • 4.9k
            • 1
          • Откуда этот конфиг? [Debian/Ubuntu]

              Цель этого поста: показать технику отладки в debian/ubuntu, связанную с "поиском первоисточника" в системном конфигурационном файле.


              Тестовый пример: после долгих издевательств над tar.gz копией установленной ОС и после её восстановления и установки апдейтов мы получаем сообщение:


              update-initramfs: Generating /boot/initrd.img-4.15.0-54-generic
              W: initramfs-tools configuration sets RESUME=/dev/mapper/U1563304817I0-swap
              W: but no matching swap device is available.
              I: The initramfs will attempt to resume from /dev/dm-1
              I: (/dev/mapper/foobar-swap)
              I: Set the RESUME variable to override this.

              Цель: понять, откуда это значение (U1563304817I0) пришло и как его правильно поменять. Это первый попавшийся пример, не особо интересный сам по себе, но удобный, чтобы показать практические методы работы с Linux.


              Шаг номер 1: Откуда пришёл RESUME?

              Читать дальше →
            • Анализ производительности ВМ в VMware vSphere. Часть 3: Storage

              • Tutorial


              Часть 1. Про CPU
              Часть 2. Про Memory

              Сегодня разберем метрики дисковой подсистемы в vSphere. Проблема со стораджем – самая частая причина медленной работы виртуальной машины. Если в случаях с CPU и RAM траблшутинг заканчивается на уровне гипервизора, то при проблемах с диском, возможно, придется разбираться с сетью передачи данных и СХД.

              Тему буду разбирать на примере блочного доступа к СХД, хотя при файловом доступе счетчики примерно те же.
              Читать дальше →
              • +23
              • 8.7k
              • 3
            • Пошаговое руководство по настройке DNS-сервера BIND в chroot среде для Red Hat (RHEL / CentOS) 7

              • Translation
              • Tutorial

              Перевод статьи подготовлен для студентов курса «Безопасность Linux». Интересно развиваться в данном направлении? Смотрите запись трансляции мастер-класса Ивана Пискунова «Безопасность в Linux в сравнении с Windows и MacOS»



              В этой статье я расскажу о шагах по настройке DNS-сервера на RHEL 7 или CentOS 7. Для демонстрации я использовал Red Hat Enterprise Linux 7.4. Наша цель — создать одну A-запись и одну PTR-запись для зоны прямого и обратного просмотра соответственно.

              Читать дальше →
            • Как использовать PAM-модули для локальной аутентификации в Linux по ключам ГОСТ-2012 на Рутокене

              • Tutorial


              Простые пароли не защищают, а сложные невозможно запомнить. Поэтому они так часто оказываются на стикере под клавиатурой или на мониторе. Чтобы пароли оставались в головах “забывчивых” пользователей и надёжность защиты не терялась – есть двухфакторная аутентификация (2ФА).
              Читать дальше →
            • Подборка полезных слайдов от Джулии Эванс

              • Translation
              Перевели новую порцию слайдов. Права доступа в Unix, файловые дескрипторы, потоки, магия proc. И на закуску пара советов о том, как общаться, когда ты не согласен. А вдруг пригодятся =)



              Читать дальше →
            • Ускорение загрузки Windows for fun and profit

                image Пожалуй, начну с того, что если перегружаться 15 раз в год, то любой «тюнинг» процесса загрузки отнимает больше времени, чем будет выиграно на перезагрузках за все время жизни системы. Однако, спортивный интерес берет свое, тем более, что люди интересуется процессом оптимизации быстродействия. А загрузка оказалась самым очевидным кандидатом в примеры того, как на мой взгляд должен выглядеть этот самый процесс. Сразу скажу, что грузиться будем с 5400 rpm винта, грузиться будем в «рабочую» систему: помимо недобитой вендорской крапвари там стоит еще куча всякого типа вижуал студии, антивируса, скайпа, стима, гуглапдейтера и пр…

                Про то, почему отключение pagefile-а скорее вредно, чем полезно — как нибудь в другой раз, а пока…
                Под катом много однообразных картинок и немножко унылого текста
              • Dell U2419HC: стильный 24-дюймовый монитор с Full HD и USB-C

                  Выбирая монитор, большинство пользователей составляет очень похожий «чеклист» важных параметров: приятный глазу дизайн, регулируемая подставка, достаточное количество разъемов, хорошее изображение и, конечно же, адекватная цена. Несмотря на богатство выбора, найти подходящую модель бывает нелегко, но монитор Dell U2419HC вполне подходит под заданные критерии. К тому же, у него есть актуальная и полезная дополнительная особенность – возможность подключения к компьютерам при помощи интерфейса USB Type-C. Сегодня познакомимся с ним поближе – добро пожаловать под кат.


                  Читать дальше →
                • Zabbix: LLD-мониторинг железа под Windows на PowerShell

                    Changelog

                    Пришло время и мне собрать свой велосипед для мониторинга физического состояния Windows-железок. Готового решения или хоть более или менее работающего найти не удавалось с момента моего знакомства с Zabbix, а это более 3 лет. А тем более, чтобы оно было… элегантно что ли. Лично мне даже в таких вещах хочется видеть стройность и максимальную функциональность. Именно поэтому далее рассматривается только LLD и PowerShell. Ну и конечно же только бесплатное ПО.

                    Итак, мониторинг чего будет производиться:

                    • S.M.A.R.T. дисков (информация, общее состояние и отдельные показатели)
                    • Температуры, напряжение, обороты кулеров (на ваш выбор)

                    А выглядеть это все будет примерно так:


                    Читать дальше →
                  • Приложение в строке меню для macOS

                    • Translation
                    • Tutorial
                    Приложения, размещенные в строке меню, уже давно известны пользователям macOS. У некоторых из этих приложений есть «обычная» часть, другие размещены только в строке меню.
                    В этом руководстве вы напишете приложение, которое показывает во всплывающем окне несколько цитат известных людей. В процессе создания этого приложения вы научитесь:

                    • назначать иконку приложения в строке меню
                    • делать приложение размещенным только в строке меню
                    • добавлять пользовательское меню
                    • показывать всплывающее по запросу пользователя окно и прятать его, когда необходимо, используя Event Monitoring

                    Замечание: это руководство предполагает, что вы знакомы со Swift и macOS.
                    Поехали!
                    • +22
                    • 4.8k
                    • 1