Adaptec 5405 and others on Centos 5
Запись создана 29 июня, 2011
Есть такой популярный контроллер Adaptec 5405, мы его ставим в сервера в больших количествах, соотвественно нужно мониторить состояние массивов на серверах.
Для этого есть nagios и zabbix, а чтобы наши мониторинги могли узнавать статус массивов используем утилиту arcconf от производителя Adaptec.
Покажу на примере CentOS 5.6 x86_64 установку arcconf
http://download.adaptec.com/raid/storage_manager/asm_linux_x64_v7_00_18781.tgz tar zxf asm_linux_x64_v7_00_18781.tgz mv cmdline/arcconf /bin/
Если вам нужен Adaptec Storage Manager agent то можете поставить пакетом всё что поставляет Adaptec
rpm -Uvh manager/StorMan-7.00.x86_64.rpm
Ну и проверить не забудьте:
arcconf GETCONFIG 1 AD Controllers found: 1 ---------------------------------------------------------------------- Controller information ---------------------------------------------------------------------- Controller Status : Optimal Channel description : SAS/SATA Controller Model : Adaptec 5405 Controller Serial Number : 0D29116C7A3 Physical Slot : 1 Temperature : 67 C/ 152 F (Normal) Installed memory : 256 MB Copyback : Disabled Background consistency check : Disabled Automatic Failover : Enabled Global task priority : High Performance Mode : Default/Dynamic Stayawake period : Disabled Spinup limit internal drives : 0 Spinup limit external drives : 0 Defunct disk drive count : 0 Logical devices/Failed/Degraded : 1/0/0 SSDs assigned to MaxIQ Cache pool : 0 Maximum SSDs allowed in MaxIQ Cache pool : 8 MaxIQ Read Cache Pool Size : 0.000 GB MaxIQ cache fetch rate : 0 MaxIQ Cache Read, Write Balance Factor : 3,1 NCQ status : Enabled Statistics data collection mode : Enabled -------------------------------------------------------- Controller Version Information -------------------------------------------------------- BIOS : 5.2-0 (17899) Firmware : 5.2-0 (17899) Driver : 1.1-5 (24702) Boot Flash : 5.2-0 (17899) -------------------------------------------------------- Controller Battery Information -------------------------------------------------------- Status : Not Installed
версии под другие платформы и ОС доступны на официальном сайте
Данная инструкция также верна для:
Adaptec RAID 2045
Adaptec RAID 2405
Adaptec RAID 2405Q
Adaptec RAID 2805
Adaptec RAID 5085
Adaptec RAID 51245
Adaptec RAID 51645
Adaptec RAID 52445
Adaptec RAID 5405
Adaptec RAID 5405Z
Adaptec RAID 5445
Adaptec RAID 5445Z
Adaptec RAID 5805
Adaptec RAID 5805Q
Adaptec RAID 5805Z
Adaptec RAID 5805ZQ
» Запись из раздела Adaptec, CentOS Linux | 1 комметарий
Apache ServerAlias limit
Запись создана 19 июня, 2011
Звонит техподдержка, говорит что на одном из вебсерверов лежит апач. Ну дело не хитрое, рестарт и смотрим error_log. Тишина.. всмысле вообще тишина ничего нет в логе. Ну делаем Loglevel debug и снова рестарт и снова в логе тишина и пара warn-ов не относящихся к делу.
Опытным путем выяснил что апач мрет на загрузке конфига с виртуалхостами, виртуалхостов на сервере чуть больше 3000, какой косячит? Как его найти если в логах ничего нет? strace ни на какие мысли не на талкивает.
Но специфика сервера такова что каждый вхост в отдельном конфиге, потом эти конфиги парсятся, правятся и сливаются в один файл. Вобщем переношу все конфиги вхостов в /root/tmp и по 100 штук начинаю возвращать на место и рестартить апач. Таким образом нахожу ОДНУ паршивую овцу. Лезу в конфиг и падаю со стула.
Для одного домена прописано 530 алиасов, у того же клиента смотрю другие домены, на втором прописано еще 370 алиасов. Судя по всему лимит у апача 512 алиасов, потом смерть.
И блять молчаливая смерть, ни строчки в логи!!
Вобщем так можно хостерам гадить, регаешься на самый дешевый тариф и набиваешь 600 алиасов. Всё апачу пездос.
» Запись из раздела Apache | 3 комментария
Remove UTF8 BOM under linux
Запись создана 15 июня, 2011
После переноса файлов с фряхи на linux простым rsync в текстовых файлах появился UTF-8 BOM, это такой маркер типа UTF (легко гуглится кому интересно). По факту это в начало вайла добавляется HEX символы: EF BB BF. Проблема выражается в том что кирилицу в файлах кривит и косит.
Переходим в каталог который надо чинить и правим:
find . -type f \( -name '*.css' -o -name '*.js' -o -name '*.txt' -o -name '*.php' -o -name '*.htm' -o -name '*.html' \) -print0 | xargs -0 grep -l `printf '^\xef\xbb\xbf'` | xargs sed -i '1 s/^\xef\xbb\xbf//'
» Запись из раздела Несортированное | Комментировать
Linux UPnP
Запись создана 8 июня, 2011
Для того чтобы клиенты могли прозрачно открывать порты на шлюзе, был разработан набор протоколв Universal Plug and Play (UPnP), например для того чтобы можно было раздавать торренты.
На днях я снял дома старый добрый Linksys WRT54G, теперь раздачей интернета занимается linux-овая машинка. Для раздачи торррентов например, нужно разрешить соединения внутрь сети. Для этого можно пробросить разные порты на разные машины, и в случае добавления клиентов/машин это придется делать вручную. Это не самый удобный спопосб, но можно использовать UPnP который будет сам пробрасывать нужные порты через iptables.
Установка:
sudo apt-get install linux-igd -y
Настраиваем:
cat /etc/default/linux-igd # External interface name. If undefined then upnpd will not be started. EXTIFACE=ppp0 # Internal interface name. If undefined then upnpd will not be started. INTIFACE=eth0
Добавляем правила в iptables:
iptables -N UPNP iptables -N UPNP iptables -A FORWARD -j UPNP iptables-save > /etc/iptables.up.rules
Запускаем upnpd
/etc/init.d/linux-igd start
Перезапускаем, например, торрент клиент с включенным UPnP и видим появившиеся правила в iptables:
-A FORWARD -d 192.168.1.106/32 -p tcp -m tcp --dport 51413 -j ACCEPT -A PREROUTING -i ppp0 -p tcp -m tcp --dport 51413 -j DNAT --to-destination 192.168.1.106:51413
На этом всё.
» Запись из раздела Debian | 2 комментария
Booting ms dos via PXE to update bios
Запись создана 31 мая, 2011
Для обновления BIOS на сервре как правило нужно загрузиться с дискеты с MS DOS и запустить утилиту обновления, в современном мире не так просто найти FDD, да и дискету сходу не удалось найти.
Но в it инфраструктуре как правило уже развернут PXE сервер для обслуживания серверов или устновки операционной системы, собственно им и воспользуемся.
apt-get install dosfstools gettext build-essential wget "http://downloads.sourceforge.net/project/ms-sys/ms-sys%20stable/2.2.0/ms-sys-2.2.0.tar.gz?use_mirror=citylan" -O ms-sys-2.2.0.tar.gz tar zxf ms-sys-2.2.0.tar.gz && cd ms-sys-2.2.0/ make cp bin/ms-sys /usr/bin/ cd .. && rm -rf ms-sys-2.2.0*
dd if=/dev/zero of=floppy.img bs=1024 count=20000 mkdosfs floppy.img ms-sys -1 -f floppy.img
mount -o loop floppy.img /mnt/ wget http://itblog.su/downloads/W98SE_R.img mount -o loop W98SE_R.img /tmp/dos cp /tmp/dos/* /mnt/ umount /tmp/dos && rm -rf /tmp/dos
mv X8DTU_204.ima /mnt/ wget ftp://ftp.supermicro.com/utility/IPMI%20FW%20flash%20tools/AMI/DOS%202.4.zip unzip DOS\ 2.4.zip mv DOS/yafukcs.exe /mnt/ rm -rf DOS* umount /mnt
mv floppy.img /tftpboot/ cat >> /tftpboot/pxelinux.cfg/default <<EOF label dos menu label dos kernel memdisk append initrd=floppy.img EOF
» Запись из раздела Несортированное | 2 комментария
Proftpd listen ip
Запись создана 30 мая, 2011
По умолчанию Proftpd слушает порт 21 на всех интерфейсах, если же нужно указать ему отвечать строго на определенном интерфейсе используйте конфигурацию:
SocketBindTight on
Port 21
DefaultAddress 192.168.3.1
192.168.3.1 замените на нужный Вам ip адрес.
» Запись из раздела Unix | 1 комметарий
Portchannel betwen Allied Telesis AT-8000GS and Cisco c2950
Запись создана 17 мая, 2011
Что имеем:
1. гигабитный стэк из двух Allied Telesis AT-8000GS
2. к стэку двумя линками подключен AT-8000S/24, линки собраны в портчаннел.
3. Cisco Catalist 2950 который надо подключить к сети.
Оптического трансивера для ATI нет, подключать придется 100 мегабитными линками, линки обьеденить в etherchannel.
на циске настраиваем:
WS-C2950SX-48-SI#conf t WS-C2950SX-48-SI(config)#interface range FastEthernet 0/45 - 48 WS-C2950SX-4(config-if-range)#switchport mode trunk WS-C2950SX-4(config-if-range)#channel-group 1 mode passive WS-C2950SX-4(config-if-range)#channel-protocol lacp WS-C2950SX-4(config-if-range)#end
На AT-8000S/24
interface range ethernet e(19-22) channel-group 7 mode auto description c2950 exit
всё, портчаннел готов, идем на циску и видим:
WS-C2950SX-48-SI#show interfaces port-channel 1 | i BW MTU 1500 bytes, BW 400000 Kbit, DLY 1000 usec,
400 мегабит пропускная способность портчаннэла.
» Запись из раздела Allied Telesis, Cisco | Комментировать
H-Sphere account move error «Suspended due to resources integrity»
Запись создана 4 мая, 2011
При переносе аккаунта с сервера на сервер из H-shphere возможна ошибка «Suspended due to resources integrity»
Заходим на сервер cp рутом и выполняем:
grep "duplicate key violates unique" /var/log/hsphere/hsphere.log.1 -B3
получим что-то вроде:
2011-05-04 11:15:34,614 [transfer] DEBUG cron.TransferCron - getResourcesInMoveInfo(): got and checking 1608767_7 is a HostDependentResource - true 2011-05-04 11:15:34,614 [transfer] DEBUG cron.TransferCron - getResourcesInMoveInfo(): host_id=75 2011-05-04 11:15:34,623 [transfer] ERROR cron.TransferCron - Getting resources info for process 1510 org.postgresql.util.PSQLException: ERROR: duplicate key violates unique constraint "resources_in_move_pkey" -- 2011-05-04 11:15:35,195 [transfer] DEBUG cron.TransferCron - getResourcesInMoveInfo(): got and checking 1505546_7 is a HostDependentResource - true 2011-05-04 11:15:35,195 [transfer] DEBUG cron.TransferCron - getResourcesInMoveInfo(): host_id=75 2011-05-04 11:15:35,197 [transfer] ERROR cron.TransferCron - Getting resources info for process 1519 org.postgresql.util.PSQLException: ERROR: duplicate key violates unique constraint "resources_in_move_pkey"
Теперь переходим к системено PostgreSQL базе:
sudo su -l cpanel -c 'psql hsphere'
и находим ресурсы взятые из лога выше:
hsphere=# SELECT * FROM resources_in_move WHERE rid = 1608767; tp_id | rid | rtype | created | deleted | job_id | tt_id | ord -------+---------+-------+----------------------------+---------+--------+-------+----- 1188 | 1608767 | 7 | 2010-02-08 06:08:08.191+03 | | 1149 | | 0 (1 ROW) hsphere=# SELECT * FROM resources_in_move WHERE rid = 1505546; tp_id | rid | rtype | created | deleted | job_id | tt_id | ord -------+---------+-------+----------------------------+----------------------------+--------+-------+----- 1271 | 1505546 | 7 | 2010-02-08 07:38:30.028+03 | 2010-02-09 08:18:42.944+03 | 1225 | | 0 (1 ROW)
удаляем найденные из таблицы resources_in_move:
hsphere=# BEGIN; BEGIN hsphere=# DELETE FROM resources_in_move WHERE tp_id = 1188; DELETE 168 hsphere=# DELETE FROM resources_in_move WHERE tp_id = 1271; DELETE 41 hsphere=# COMMIT; COMMIT hsphere=# \q
И снова начинаем перенос аккаунтов, теперь всё пройдет нормально.
» Запись из раздела Несортированное | Комментировать
Cisco WS-C2950SX-48-SI
Запись создана 5 апреля, 2011
Начал собирать себе минилабу для подготовки к CCNA/CCNP, купил на днях Cisco WS-C2950SX-48-SI
cisco WS-C2950SX-48-SI (RC32300) processor (revision L0) with 20015K bytes of memory. Processor board ID FOC1009Z8JD Last reset from system-reset Running Standard Image 48 FastEthernet/IEEE 802.3 interface(s) 2 Gigabit Ethernet/IEEE 802.3 interface(s) 32K bytes of flash-simulated non-volatile configuration memory. Base ethernet MAC Address: 00:17:59:E0:67:C0 Motherboard assembly number: 73-9103-04 Power supply part number: 34-0965-01 Motherboard serial number: FOC100926VG Power supply serial number: DAB0936FTKJ Model revision number: L0 Motherboard revision number: A0 Model number: WS-C2950SX-48-SI System serial number: FOC1009Z8JD CLEI Code Number: CNMRV002RC Top Assembly Part Number: 800-24115-03 Top Assembly Revision Number: A0 Version ID: N/A Configuration register is 0xF
» Запись из раздела Cisco | 4 комментария
installing SHOUTcast streaming server on debian x86_64
Запись создана 4 апреля, 2011
Компания Nullsoft, та что радует виндовых пользователей проигрывателем winamp выпускает еще и стриминг сервер, проще говоря сервер онлайн радио. Ставить будем на debian x86_64
mkdir /opt/sc && cd /opt/sc wget http://yp.shoutcast.com/downloads/sc1-9-8/sc_serv_1.9.8_Linux.tar.gz tar zxf sc_serv_1.9.8_Linux.tar.gz rm -rf sc_serv_1.9.8_Linux.tar.gz README.TXT
Открываем конфиг /opt/sc/sc_serv.conf в любом текстовом редакторе (например vim)
найдите строку Password=changeme и поменяйте changeme на свой пароль
Затем строку ; AdminPassword=adminpass
уберите первый символ точки с запятой и замените adminpass на другой пароль (не должен совпадать с предыдущим), теперь строку ScreenLog=1 и замените на ScreenLog=0 и RealTime=1 на RealTime=0.
установим либы для 64-х разрядной платформы:
apt-get install ia32-libs -y
без них при запуске шоткаста будут ошибки вида
-bash: ./opt/sc/sc_serv: No such file or directory
» Запись из раздела Debian | 2 комментария