Archive for the ‘How to’ Category



24
января
0

Временное клонирование виртуальной машины в KVM



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

Предположим, что у нас есть созданная виртуальная машина в KVM на основе LVM. Для создания временной резервной копии нам необходимо выполнить следующие действия:
— остановить виртуальную машину
— сделать снепшот lvm
— сделать xml-дамп виртуальной машины
— отредактировать конфигурацию для новой виртуальной машины
— запустить машину со снепшота
Click to continue…

5
января
2

Настройка локального репозитория yum RedHat



YUM (Yellow dog Updater, Modified) — открытый консольный менеджер RPM-пакетов. Yum корректно обрабатывает зависимости и обеспечивает работу с несколькими репозиториями. Кроме того, он поддерживает установку пакетов группами — можно дать утилите задание обработать определенную группу приложений и она установит все приложения данной группы. Это существенно упрощает процедуры в случае управления многими машинами.

Yum создан для решения следующих задач:

— Поиск пакетов в репозиториях
— Установка пакетов из репозиториев
— Установка пакетов из .rpm файлов, с разрешением зависимостей с помощью репозиториев
— Обновление версий отдельных пакетов или всей системы
— Удаление ненужных пакетов или приложений из системы

Фактически, yum представляет собой оболочку для rpm обеспечивающую работу с репозиториями.
Click to continue…

22
декабря
0

Настройка bridge over bonding



Сетевой мост, бридж (с англ. bridge) — это сетевое устройство второго уровня модели OSI, предназначенное для объединения сегментов компьютерной сети в единую сеть. Сетевой мост принимает решение о переадресации трафика на помощью таблицы MAC адресов, которую он строит на основании подключенных хостов к каждой сети. Программный сетевой мост может использоваться в линукc системе для эмуляции аппаратного сетевого моста, например, для одновременного использования сетевой карты системой и виртуальными приложениями.

Настройку сетевого моста поверх агрегации каналов будем производить на системе с RedHat 6.5

Наша конфигурационная схема будет иметь следующий вид: Click to continue…

14
декабря
0

Уменьшение размера Volume group LVM



Менеджер логических томов (Logical Volume Manager), он же LVM — предоставляет собой дополнительный уровень абстракции между физическими/логическими дисками и файловой системой. LVM увеличивает гибкость файловой системы, позволяет изменять размеры логических томов, переносить данные между дисками «на лету», делать снимки дисков и т.д.

Для того, чтобы было понятно о чем идет речь, приведу краткий список терминов, который используется в LVM:

PV, Physical volume, физический том. Обычно это раздел на диске или весь диск. В том числе, устройства программного и аппаратного RAID (которые уже могут включать в себя несколько физических дисков). Физические тома входят в состав группы томов. Click to continue…

30
ноября
1

Настройка bonding в Linux



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

Настройку бонда произведем на примере RedHat 6.5. Переходим в директорию /etc/sysconfig/network-scripts/ и создаем файл ifcfg-bond0 c соответствующими настройками: Click to continue…

22
ноября
0

Locate — поиск файлов в индексной базе



В UNIX-системах обычно по умолчанию есть утилита locate, которая позволяет искать файлы по его имени или части имени. Ищем все файлы и директории в именах которых встречается подстрока заданная в качестве аргумента и в выводе получаем полный путь к ним. В Linux можно использовать регулярные выражения, указывая ключ «-r». Хотя можно обойтись и без них, строя комбинации из конвееров (pipe-ов) в командной строке.

locate "locate" | grep -Ev "(src|ports)"
/etc/locate.rc
/etc/periodic/weekly/310.locate
/usr/bin/locate
/usr/libexec/locate.bigram
/usr/libexec/locate.code
/usr/libexec/locate.concatdb
/usr/libexec/locate.mklocatedb
/usr/libexec/locate.updatedb
/usr/local/man/man3/XdbeAllocateBackBufferName.3.gz
/usr/local/man/man3/XdbeDeallocateBackBufferName.3.gz
/usr/local/man/man3/XtAllocateGC.3.gz
/usr/local/man/man7/deallocate.7.gz
/usr/local/share/ri/1.8/system/Class/allocate-i.yaml
/usr/local/share/zsh/4.3.10/functions/Completion/Debian/_dlocate
/usr/local/share/zsh/4.3.10/functions/Completion/Unix/_locate
/usr/share/examples/etc/locate.rc
/var/db/locate.database 

По расписанию (crontab) запускается updatedb, которая индексирует файлы в ОС и создает БД. Для FreeBSD обновление базы запускается раз в неделю, в отличии от Linux, где это обычно происходит каждый день. Это можно проверить в настройках демона CRON, а вернее в директориях, где находятся скрипты, запускаемые каждый час/день/месяц.
Click to continue…

7
ноября
0

PHP в режиме FastCGI средствами патча PHP-FPM + Nginx



Высокой производительности веб-сервера можно достичь используя в качестве front-end Nginx, а в качестве back-end PHP-FastCGI-сервер.

Преимущества Nginx и FastCGI:

Nginx легок, прост в настройке, является прокси-сервером, очень быстрый.
FastCGI это самый быстрый и наиболее безопасный способ обработки запросов внешними программами.

При такой схеме возможно обрабатывать большое количество запросов за небольшое время. Nginx может использоваться как самостоятельный HTTP-сервер или как reverse proxy перед Apache или любым другим тяжелым веб-сервером, чтобы снять часть нагрузки. Apache при этом выступает в качестве бэк-енда для генерации динамического контента, но Apache достаточно громоздкий и тяжелый, к тому же он требует много памяти.

Множество запросов к веб-серверу порождают много параллельных потоков/процессов, которые удерживаются в памяти, пока клиентское соединение не будет закрыто. Поэтому целесообразно использовать nginx для приема соединений и отдачи статики, а обработку динамики передавать «главному» серверу. Для обработки динамики в nginx используется проксирование и FastCGI. Кэширование и отдача статики выполняется самим nginx. Все будет работать абсолютно прозрачно для уже написанных скриптов.
Click to continue…