Приветствую всех!.
Имею популярную проблему: низкая производительность файловой системы на госте (windows) который крутится под проксмоксом.
Грубо говоря - тормозит виртуалка....
Что имею по железу:
4 ноды с одинаковым конфигом (2*xeon 5645, 48GB ram, ssd 32gb, hdd sata2=1tb, 2*1Gbit lan)
1 nas - hp dl320s (контроллер p400, 512 кеша+батарейка, xeon 3060, 8gb ram, 2*1Gbit lan, 12*1tb wd black re в raid 6)
1 гигабитный свитч hp procurve 4104
На нодах стоит proxmox 4.4-5 в режиме ha cluster.
ceph не поднимал
Сейчас NAS не подключен. виртуалки стоят на локальных хардах.
Если надо - то все красиво мигрирует, клонируется и т.п. но это в настоящий момент меня не беспокоит.
Теперь что касается тормозов: в режиме линейного копирования большие файлы (4gb) копируются внутри гостя (130-140 мб/сек) и по сети (гость-живой комп) отлично - скорость - 100 мб/сек
Однако, при копировании большого количество мелких файлов (10000 файлов средним размером 100-200 килобайт) - начинается просадка скорости до 25 мб/сек, как внутри гостя, так и по сетке.
Образы виртуалок стартуют с опцией cache=writeback
(пробовал со свсеми настройками кеширования - последний показал себя лучше всех)
На госте стоит win2k8r2, и он при работе тоже характерно тормозит... Естественно, внутри гостя используются virtio драйверы.
вопрос1: не связано ли это с хранением файлов с виртуалками на локальном сторедже?...
вопрос2 (глобальный, и, возможно, риторический): как правильно использовать все мое железо для максимальной производительности?
Читал много про НАСы с zfs... но вроде как не помещаюсь с производительностью платформы наса...
PS: до этого виртуалки крутил только под убунтой безо всяких кластеров - при помощи либвирта... (конфигурялка virsh+ иксовая приблуда virt-manager). Там тоже наблюдались просадки, но почему-то я на них не сильно обращал внимание. Там крутилось только пара-тройка машин и требований к ним никаких не было :(
По совету данному мне в этом топике Как правильно организовать кластер на Proxmox , попытался поднять ссд-кеширование в lvm.
В общем-то все у меня получилось, но мучает меня один баааааальшой вопрос:при включенном кешировании невозможно создавать новые логические тома в пуле? Т.е. чтобы добавить том надо выключить кеш, добавить том, переинициализировать кеш? ПРоцедура добавления тома должна быть именно такой? это же катастрофа какая-то, потому что у меня на томах планировалось разворачивать виртуальные машины... а их предпологается десятка 2-3... :( и сразу я не знаю сколько мне их понадобится...
вообще - насколько я понял, при любых манипуляциях с томом придется отключать кеш?
я может чего-то где-то проглядел? или есть какой-то правильный автоматизирующий механизм этих действий?
Подскажите, можно узнать в какую папку активно пишет служба? Или, если она пишет в несколько каталогов, то можно как-то выяснить в какую она пишет дольше. Как пример, есть dovecot+postfix. Периодически dovecot начинает что-то в огромных количествах писать (что-то, понятно,что это письма). Вероятно, это происходит когда кто-то включает компьютер, который давно не включался, туда наваливается куча писем, а потом эту кучу писем еще и как прочитанные помечают.
Есть 4 сервера с операционной системой CentOS 7, на всех серверах стоит по 2 HDD диска и по 2 SSD накопителя. Создано 2 программных RAID-1 массива (один на HDD, другой на SSD).
Из указанных дисков HDD создано хранилище на базе LVM с кешированием на SSD дисках в режиме writeback.
После обновления пакетов lvm до версии 2.02.171-8 (последняя доступная версия в официальном репозитории), чтение с SSD дисков возросло в 2-3 раза и одновременно с этим возросла запись на HDD диски (пропорционально чтению с SSD дисков).
Хранилище используется под виртуальные машины на базе QEMU-KVM, нагрузка с их стороны не менялась. Одновременно с обновлением пакетов lvm производилось обновление всей системы (то есть ядро, qemu также были обновлены).
Ради эксперимента, на одном из серверов с низкой нагрузкой я переключил режим кеширования с writeback на writethrough, чтение с SSD и запись на HDD сразу снизились.
По ссылке https://yadi.sk/d/0a7fULcv3SrmrM можете посмотреть графики записи и чтения с дисков. На сервере 1 виден скачок чтения и записи после обновления и перезагрузки системы, на сервере 2 видно резкое снижение чтения и записи после переключения кеширования в режим writethrough.
Откатился с ядра 3.10.0-693.21.1.el7.x86_64 обратно на 3.10.0-514.26.2.el7.x86_64, проблема осталась. Пробовал поставить 4.4.120-1.el7.elrepo.x86_64, проблема также сохраняется. Откатил LVM вместе с зависимостями от 2.02.171-8 к 2.02.166-1, проблема также сохранилась.
Что это может быть? Ошибка статистики или же система действительно по каким-то причинам пишет больше, чем должна? Куда копать в данном случае?
Сразу скажу - нет, петух не клюнул, тестирую бэкап и восстановление
Как такие бэкапы делать - легко и понятно. А вот как восстанавливать.. Вот здесь https://www.percona.com/doc/percona-xtrabackup/1.6/xtrabackup_bin/exporting_i... , насколько я понял для КАЖДОЙ таблицы надо вручную воссоздавать ее структуру (create a table with the same structure, and then perform the following steps). Как-то очень не очень. Или есть другой путь? Нужен частичный бэкап не таблицами, а базами. Немного запутался уже
Плюс как быть с восстановлением твблиц MYISAM? - для них не создается *.exp файлов
Советы типа брось xtrabackup/mariabackup и пользуй вот это тоже принимаются, но аргументированные.
mysqldump работает долго, грузит базу запросами и, как понимаю, результат неконсистентен, если во время бэкапа идет запись
На «Шаг #3: Создание ключей и сертификатов» все хорошо описано, но там описание для Easy-rsa 2.x версии, а у меня поставилась Easy-rsa 3.0.3 - там все иначе. Подскажите пожалуйста, как сделать все то, что описано в мануале «Шаг #3: Создание ключей и сертификатов», но только для 3.0.3. Нашел мануал https://community.openvpn.net/openvpn/wiki/EasyRSA3-OpenVPN-Howto но нифига не могу понять, какие шаги и как нужно сделать.
Соственно сабж.
Последние годы отошел от администрирования в сторону веб-разработки. И хотел бы уточнить какие сейчас требования для сферического сисадмина в вакууме.
Необходимо подобрать какой либо инструмент для организации стресс-теста для кластерной файловой системы Gluster. Подскажите что нибудь пожалуйста. Никак не могу найти.
Что скажете? Следует использовать или лучше выключать? Быстрее? Тормоза? Фризы? Нюансы? Желательно бы из личного опыта.
Дали в руки тушку Dell R720xd с двумя E5-2650. ХЗ, выключить эту хрень или оставить.
ubuntu, ядро 3.19
приветствую!
есть система, в которой есть каталог /data, и под ним некоторые подкаталоги - /data/ecm, /data/rvs, /data/zli, итдп.
во все эти каталоги достаточно регулярно валятся файлы - идёт распределение и обработка.
возможно ли написать скрипт на баше, который будет караулить файлы, и скажем, если в последние десять минут с текущего момента ниодного свежего файла не появилось в дефинированных каталогах - будет отправлять мне письмо с сабджектом " шеф, всё пропало!" (ц)?
искал в гугле чтото такое, ненашёл ни одного решения такой проблемы...
mail -s «kaput» часть я сам наваяю, мне бы механизм который проверяет нет ли свежих фацлов в каталогах за х минут, и если их нет - то выполнение команды....
спасибо заранее....
Это мы находимся на точке доступа (8) и смотрим подключения к ней, первая строчка это радиолинк (7), вторая строчка это пятая камера (5), которая подключена напрямую к точке доступа.
Как видно на первой строчке, вместо одного стабильного ip радиолинка (7) или роутера (6) или сразу всех четырех камер + роутер + радиолинк, мы видим один прыгающий ip-адрес, т.е. это реальные айпишники радиолинка, роутера и камер.
День добрый! Настраиваю OSPF поверх OpenVPN.
Основной шлюз на FreeBSD;
есть два провайдера, на каждом поднято по OpenVPN'у;
настроена Quagga, конфиг
hostname Server
password zebra
enable password zebra
log file /var/log/ospfd.log
!
!
router ospf
ospf router-id 192.168.77.1
network 10.0.0.0/30 area 0.0.0.0
network 10.10.0.0/30 area 0.0.0.0
!
!
interface tun1
ip ospf cost 10
!
!
interface tun0
ip ospf cost 20
!
!
!
ip prefix-list Local_Network seq 10 permit 192.168.77.0/24
ip prefix-list Local_Network seq 100 deny any
!
route-map Local_Network permit 10
match ip address prefix-list Local_Network
!
line vty
!
На CentOS тоже два провайдера и два OpenVPN клиента;
Настроена Quagga, конфиг
hostname gate
password zebra
log file /var/log/quagga/ospfd.log
!
interface tun0
ip ospf cost 20
!
interface tun1
ip ospf cost 10
!
router ospf
ospf router-id 192.168.76.1
redistribute connected route-map Local_Network
network 10.0.0.0/30 area 0.0.0.0
network 10.10.0.0/30 area 0.0.0.0
!
ip prefix-list Local_Network seq 10 permit 192.168.76.0/24
ip prefix-list Local_Network seq 100 deny any
!
route-map Local_Network permit 10
match ip address prefix-list Local_Network
!
line vty
!
OpenVPN'ы подключаются, OSPF ноходит «соседей» со стороны FreeBSD строится таблица и подымаются роутинги, а со стороны CentOS находятся соседи и всё ни таблица ни роутинги ни подымаются. В логах ошибка
OSPF: ospf_nexthop_calculation(): could not determine nexthop for link
Нужно поднять OSPF поверх OpenVPN поднятом между двумя Linux серверами. Основная проблема здесь в том, что один из серверов находится за NAT'ом. В чем спрашивается проблема то? Если использовать топологию p2m, то клиента из-за NAT'а спокойно подключится к серверу но в этом случае на стороне сервера будет недостаточно прописать маршруты через tun/tap интерфейс OpenVPN, так-как OpenVPN предполагает, что к нему могут подключится несколько клиентов и за каждым клиентом могут находится разные подсети, а интерфейс в системе один, для решения этой проблемы OpenVPN использует правила внутренней маршрутизации, параметр --iroute. С помощью iroute прописываются маршруты на конкретного клиента и это замечательно работает, но мне же нужен OSPF, я не хочу руками прописывать iroute, маршруты на клиента не фиксированы у меня.
Собственно p2m режим мне и не особо нужен, я могу для разных клиентов поднять отдельный OpenVPN сервер, но тут тогда встаёт вопрос как соединить два OpenVPN сервера точка-точка, если одна из сторон за NAT'ом?
Есть у кого идеи как поднять OSPF через OpenVPN, когда одна сторона за NAT'ом или как победить/обойти --iroute?
интерфейс tun1 клиента OpenVPN, раздающий доступ к некоторым ресурсам в интернетах с помощью опции -j MASQUERADE iptables;
параметры маршрутизации с помощью набора опций route в конфиге клиента OpenVPN, описывающего сети с указанием IP и маски этих некоторых ресурсов, доступ к которым должен осуществляться через интерфейс tun1.
Что нужно: в случае поступления запросов через интерфейс bond0 (не через OpenVPN туннель) с маршрутизируемых сетей, указанных в конфиге клиента OpenVPN, отправлять ответы через тот же интерфейс bond0, при этом сохранив возможность доступа к этим ресурсам при помощи туннеля OpenVPN. Каким способом это лучше всего реализовать?
Docker хост - alpine. Хочу поставить nginx из оф. образа, (FROM alpine:3.5), тут все ОК. Но когда мне захочется использовать другой image, который уже базируется на debian. Вот тут не совсем понятно...Ядро будет использоваться от хостового alpine linux, а как же разность дистрибутивов?
Получается, в контейнер попадут все потроха от debian? Это нормально? Или же нужно строить свой image тоже на alpine, если разработчик образа не предоставил такого варианта (бывает делают на разных ОС)? Есть ли разница и нужно ли заморачиваться по поводу базовых images? Есть ли ограничения?
И еще, имеет ли значение, какой linux на docker хосте? Скажем, у меня есть сервак с centos7, и я хочу на нем запускать все контейнеры, как от этого ситуация меняется?
Всем привет!
В общем есть 5 нод под управлением Proxmox VE 4.4 на которых крутятся в среднем 5-8 виртуальных машин. В кластер я их пока не собирал, так как отсустует общее хранилище. Под хранилище есть два сервера Dell R410, в каждом установлен винт на 4тб. Вот тут то и начинается головняк. Гуглением нашёл что в качестве HA Network Storage можно заюзать NAS4Free (HASP который еще надо допилить напильником), OpenAttic (сыроват, Ceph мне там так и не удалось запустить), NexentaStor (не пробовал, но, говорят что в комьюнити версии HA нету, а Enterprise версия таки не по карману), DRBD (пробовал давно версию 8.2 в режиме two primary nodes, пару раз хватал split brain). Что можете посоветовать для создания ha network storage ?