Saturday, January 31, 2015

AIX: devices (устройства)

Основные категории устройств (терминология устройств):
Physical Devices - физические устройства, которые подключены к системе.
Ports (Порты) - физические адаптеры системы, к которой подключены физические устройства. Большинство портов - это программируемое системное ПО, которое позволяет подключать устройства различных типов.
Device Drivers (драйвера устройства) - ПО, которое находится в ядре системы, и управляет активностью порта, а также форматом данных, которые отправляются к устройству.
Logical Devices (логические устройства) - программные интерфейсы (или специальные файлы), которые используются пользователями и программами, как физические устройства.
/dev - директория содержит все логические устройства, которые напрямую доступны пользователям (некоторые устройства находятся в состоянии определено (defined) и следовательно не доступны для использования).
Виртуальные устройства (Virtual devices) - это Ethernet и SCSI устройства, которые выделяются под клиентскую партицию (lpar), и используются соответственно для доступа к сети и под нухды хранилища.

Типы устройств:
- Блочное устройство (Block device) - структурированное устройство рандомного доступа. Буферизация используется для осуществляения блочного метода доступа (block-at-a-time). Обычно применяется для дисковых файловых системе. Примеры блочный устройств:
cd0 CD-ROM
hd1, lv00 Logical volume
hdisk0 Physical volume 
- Символьное устройство Character (raw)  - последовательное устройство (потоко-ориентированное), не поддерживает буферизацию. Большинство блочных устройств имеют эквивалентное символьное устройство. Например, блочное устройство /dev/hd1 обеспечивает буферный доступ к логическому тому, в то время как /dev/rhd1 обеспечивает последовательный доступ к тому же самому логическому тому. Примеры символьных устройств:

lp0 Printer
rmt0 Tape drive
Для более детального вывода информации об устройствах используется команда lsdev.
Подробнее про команду lsdev можно почитать тут.
Посмотрим предобределенные значения устройств в ODM:
lsdev -PH
Теперь посмотрим определенный класс устройств, например, класс adapter
lsdev -Pc adapter 
Так теперь перейдем к просмотру устройств в кастомизированной базе ODM. Подробнее про устройство ODM.
lsdev -CH ( параметр H выводит заголовки столбцов)

Практически у каждого устройства есть свои собственные параметры (атрибуты). Чтобы посмотреть параметры устройства используется команда lsattr. Нас интересуют только устройства, которые находятся в состоянии Available, т.к. уже уже может использоваться в системе. Выберем, например, сетевой интерфейс
lsattr -El en2 
-Е данная опция говорит, что мы смотрим эффективные аттрибуты устройства.
-а с помощью данного параметра можно посмотреть только один аттрибут

С помощью команды chdev можно изменять аттрибуты устройства.

Теперь чуть подробнее про статусы устройств.
- Undefined (неопределено) - устройство поддерживается системой, но оно не сконфигурировано (например, с помощью команды cfgmgr). Плюс, запись об устройстве не занесено в кастомизированную базу данных ОДМ.
- Defined (определено)- устройство добавлено в систему, но еще не готово к использованию. Запись об устройстве есть в кастомизированной ОДМ, определен локационный код (location code) и все аттрибуты.
- Available (доступно) - устройство полностью сконфигурировано и готово к использованию.

Как правило, большинство устройств находящихся в состоянии Defined, это результат того, что при загрузке устройство не было включено (т.е. на него не подано питание).
Перевод устройства в рабочее состояние осуществляется с помощью команды mkdev.
#mkdev -l en0
Обратный перевод устройства из состояния Available в Defined осуществляется с помощью команды  
#rmdev -l en0
#cfgmgr

С помощью команды cfgmgr, которая исполняется при загрузке, происходит поиск и конфигурация устройств. Поэтому после внесения изменений в ОДМ, обязательно выполнять данную команду, чтобы все параметры устройства применились.

Успехов! Комментарии приветствуются!  

Thursday, January 22, 2015

AIX Virtual Memory Manager


Virtual Memory Manager (VMM) управляет запросами к памяти, сделанными различными приложениями или самой системой. Сегменты виртуальной памяти делятся в отдельные "куски", которые называются страницами (pages) по 4096 байт каждая; такая страница расположена в реальной физической памяти (RAM) или сохраняется на диске, на то время которое она необходима. AIX использует виртуальную память для адресации большего количества реальной физической памяти, чем доступно для системы. Управление такими страницами в памяти или же на диске осуществляется посредством VMM.
VMM выполняет 2 основные функции:
  1. Управляет размещением страниц памяти
  2. Обслуживает обращения к страницам памяти, которые находятся в пространстве подкачки (paging space)или которых еще не существует.
Для выполнения этих функций VMM поддерживает список свободных (free list) страниц в памяти. При определении того, какие страницы виртуальной памяти будут занесены в список свободных, VMM использует алгоритм замены страниц. Этот алгоритм учитывает существование постоянных и рабочих сегментов, интенсивность подкачки и пороги VMM.
AIX занимает всю свободную оперативную память, за исключением небольшого объема, управляемого списком свободных страниц. При этом VMM перераспределяет и выгружает страницы для освобождения пространства и занесении информации о свободных страницах в список. При этом перераспределяемые страницы виртуальной памяти выбираются алгоритмом замены страниц VMM.

При возникновении проблем с памятью, первым делом надо иметь в виду тюнинг VMM. Т.к. изменение параметров данного менеджера часто оказывает либо благоприятное воздействие, либо наоборот:( Зри в корень! 

#vmo -L



Многие параметры являются динамическими и их можно менять, что называется "на лету".
Включаем поддержку "больших" страниц: 
#vmo -o lgpg_regions=10 -o lgpg_size=16777216
Или наоборот, выключаем ее после рестарта
#vmo -r -o lgpg_size=0 -o lgpg_regions=0
При использовании Oracle-приложений лучше использовать параметр lgpg_size вместе с этим параметром lgpg_regions
При использовании Domino-приложений лучше использовать значения 
memory_frames со значением 4KB pages. Т.е. не использовать больших страниц.

Успехов! Замечания и комментарии приветствуются. 

Tuesday, January 20, 2015

Linux: networking


Начнем с того, что все конфигурационные настройки хранятся в директории
/etc/sysconfig/network/
1. Основная утилита управления сетевыми подключениями (картами) IP

Или так (для интерфейса eth0)

C помощью опции -S посмотрим дополнительную статистику:

RX - полученные пакеты | TX - отправленные пакеты.

2. Добавление (удаление) IP-адреса:
ip address add 10.0.21.242/24 brd + dev eth0
Для интерфейса eth0 произойдет добавление ip-адреса 10.0.21.242 с маской 24.
Удаление производится аналогично:
ip address del 10.0.21.242 dev eth0

3. Изменение аттрибутов интерфейса (сетевой карты) производят с помощью set
ip link set eth0 up
ip link set eth0 down

4.Просмотр таблицы маршрутизации:

Добавим маршрут в подсеть 192.11.16.0

Очень легко можно и удалить маршрут:

Маршрут по умолчанию можно прописать и с использованием Yast - получится лучше всего.
В противном случае можно отредактировать (создать файл), чтобы маршрут не потерялся после перезагрузки:
/etc/sysconfig/network/routes
default 10.10.10.1 - -
Или командой:
ip route add default via 10.0.0.254

5. Разрешение имен определяется в файле /etc/resolv.conf
Тут может быть 3 сервера ДНС и в поле search указан домен, который будет дополнять FQDN-имена, если они не "отрезолвлены" с помощью поиска. Например:
search example.com
nameserver 10.0.0.254


Успехов! Замечания и комментарии приветствуются!