• Аномальная активность jbd2 при исчерпании места на разделе с ext4?

    igortiunov
    @igortiunov Автор вопроса
    В процессе изучения документации выяснилось, что при достижении состояния ENOSPC(No space left on device) драйвер файловой системы ext4 изменяет своё поведение следующим образом:
    1. Отключает отложенное выделение блоков (www.pointsoftware.ch/en/4-ext4-vs-ext3-filesystem-...
    Это скорее всего является причиной возрастания активности на запись (в текущщем паттерне работы - множество мелких записей)
    2. Форсирует коммит журнала в файловую систему с надеждой, что какие-то блоки освободятся.
    Это скорее всего является причиной активности jbd2 в iotop.
    Ответ написан
    Комментировать
  • Возможно ли потери конфигов после обновления CentOS?

    igortiunov
    @igortiunov
    Добрый день. Замена конфигурационных файлов того или иного ПО зависит от работы rpm, а точнее от спецификации rpm написанного разработчиком сборки пакета. Так, если файлы, находящиеся в cpio архиве rpm пакета помечены в спецификации как %config, то при установке выполняется дополнительная проверка на состояние файлов в целевой системе (управляется дополнительной спецификацией noreplace).
    Для решения вашей задачи можно пойти двумя направлениями:
    1. Создать тестовое окружение для проверки обновлений. Обновлять на тестовом окружении интересующие вас пакеты (из списка) по отдельности, проверяя на каждом шаге внесённые изменения.
    2. Подключить src репозитории соответствующие текущим repo на вашей системе. Эти src репозитории содержат src.rpm файлы, при установке которых вы получите дотсуп к файлам спецификаций (spec-файлы) интересующих вас rpm-пакетов. Вы изучите необходимые директивы spec-файла и поймёте какие изменения будут выполняться при установке пакета.
    Подробнее о %config директиве: www-uxsup.csx.cam.ac.uk/~jw35/docs/rpm_config.html
    Подробнее о rpm: https://docs.fedoraproject.org/en-US/Fedora_Draft_...
    Ответ написан
    2 комментария
  • Windows Server 2012 R2, KVM, CentOS 6?

    igortiunov
    @igortiunov
    1. Устновите libvirt и qemu-kvm на CentOS (sudo yum install libvirt qemu-kvm)
    2. Создайте "виртуальную" сеть или используйте существующую, создаваемую по умолчанию после установки libvirt. (sudo virsh net-list --all)
    3. Создайте виртуальную машину, установите операционную систему virt-install.
    4. Настройте правило статического ната с помощью iptables для порта 3389.

    Как видите, каждый пункт требует отдельной инструкции, но вы попробуйте сами пройти этот путь:
    https://www.centos.org/docs/5/html/yum/sn-managing...
    wiki.libvirt.org/page/Networking
    linux.die.net/man/1/virt-install
    www.netfilter.org/documentation/HOWTO/NAT-HOWTO-6.html
    Ответ написан
    3 комментария
  • Как правильно управлять парком серверов Unix?

    igortiunov
    @igortiunov
    Приветствую.
    Прежде всего, не стоит представлять себе решение задачи, как "большую кнопку", т.к. наши представления об управлении инфраструкурой несколько извращены опытом работы с продуктами MS. Интерфейс скрывает от нас стек ПО используемого для достижения цели. Например, WSUS. Под его капотом находится набор служб, каждая из которых играет определенную роль - bits для загрузки на сервер и доставки пакетов на клиента, веб-сервер для управляющих команд, база данных для хранения состояния клиентов и исправлений, .net приложение, обьединяющее все это. Для парка nix машин вам предстоит построить подобную архитектуру самому, выбирая каждый раз инструмент, который будет играть ту или иную роль.
    На втором шаге вам нужно посмотреть на задачу. Если у вас десяток инфраструктурных серверов, то Ansible действительно неплохой выбор. Но только не "скрипт". "Скрипт" - это язык, который говорит как достичь результата. Но инструменты управления конфигурацией избавляют вас от этого, с помощью декларативного языка вы описываете сам конечный результат(это ключевой момент) и не задумывайтесь о том, какой дистрибутив (читай менеджер пакетов, расположение конфигурационного файла) установлен на управляемой системе.
    Если вам нужно дать доступ большому количеству пользователей к большому количеству машин, то на первом шаге вам нужно выбрать два инструмента:
    1. управление конфигурацией.
    2. управление sudo.
    Первый инструмент с натяжкой может предоставить вам возможность решить пункт 2, т.к. в этом втором пункте вам нужно управлять теми самыми политиками: группе пользователей дать доступ на группу машин и разрешить выполнять группу команд. Здесь в игру вступает Identity Manager и этот вопрос для меня по крайней мере, открыт. Текущие тенденции ведут к развертыванию двух каталогов (MS AD и каталог для парка NIX), но не берусь сказать насколько это правильно. Обойтись без второго каталога можно и, если отбросить шелуху, то ключевой проблемой, в таком случае, является сопоставление идентификаторов безопасности пользователей в MS AD и в nix системах (просто когда один домен, сложнее когда лес, совсем не просто в случае созданных вручную доверительных отношений). Раньше этот вопрос решал winbind с набором библиотек, реализующих тот или иной алгоритм сопоставления, теперь это SSSD, реализующий два алгоритма. Опять же вопрос с выполнением привилегированных команд в такой конфигурации не решается. RedHat предлагает скомпанованные в единый продукт инструменты, которые, якобы эти задачи решают. Поддержкак от этого самого редахата стоит бешеных для нас денег, но вы посмотрите из чего состоят такие решения как Sattelit и IdM, это открытые продукты (FreeIPA, candlepin, pulp, katello, puppet и, наконец, foreman.) которые, возможно вам и нужны.
    Ответ написан
    8 комментариев