Колкото и да псувам RHEL и CentOS shit-а има някой неща които са им измислени доста грамотно. Например добавянето на голям брой допълнителни IP-та е доста приятна задачка. По принцип ако трябва да добавя голям брой адреси бих си разписал едно bash скриптче в което в цикъл да извършва въпросната операция че на ръка не си е работа. При Centos/RHEL хората са го измислили доста приятно range файл. В общи линии създаваме файл /etc/sysconfig/network-scripts/ifcfg-eth0-range0. Тук заменяме eth0 със името мрежовият адаптер ако не е eth0. След което добавяме следното съдържание

IPADDR_START=192.168.0.129
IPADDR_END=192.168.0.254
NETMASK=255.255.255.128
CLONENUM_START=0

като аргументите са

  • IPADDR_START – начален IP адрес
  • IPADDR_END – краен адрес
  • NETMASK – мрежова маска
  • CLONENUM_START – номерация от която да започнат мрежовите адаптер eth0:0 в нашият случай

 

По подразбиране когато си инсталирате Munin в Cpanel липсват няколко благи конфига които трябва да си ги направим на ръка. За мен един от тях е мониторинга на температурата  на дисковете.

В общи линии конфигурацията е тривиална

1. Трябва да определим типа на нашите дискове – той може да бъде един от следните : ata, scsi, sat[,auto][,N][+TYPE], usbcypress[,X], usbjmicron[,x][,N], usbsunplus, marvell, areca,N/E, 3ware,N, hpt,L/M/N, megaraid,N, cciss,N, auto, test. Най лесният начин за това е чрез cat на „/proc/ide“ или „/proc/scsi“. При мен:


# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: WDC WD1003FBYZ-0 Rev: 01.0
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: WDC WD1003FBYX-0 Rev: 01.0
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi4 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: TOSHIBA DT01ACA1 Rev: MS2O
  Type:   Direct-Access                    ANSI  SCSI revision: 05

 

 

Както се вижда имам 3 диска тип ATA.

2. За да почнем да следим температурата трябва да опишем в munin node дисковете ни. В файла /etc/munin/plugin-conf.d/hddtemp_smartctl добавяте записи от следният тип


# cat /etc/munin/plugin-conf.d/hddtemp_smartctl
[hddtemp_smartctl]
user root
env.drives sda sdb
env.args_sda -d ata
env.args_sdb -d ata

 

Можем да ударим тест на нашият бъдещ конфиг по следният начин


# env drives="sda sdb sdc" args_sda="-d ata" args_sdb="-d ata" args_sdc="-d ata"  /etc/munin/plugins/hddtemp_smartctl
sda.value 32
sdb.value 33
sdc.value 33

 

Ако получите стойности значи всичко е ок. Ако получите грешка трябва да проверите дали всичко правилно описано. Следва да рестартирате munin nod-а ви и да изчакте 10-15 мин да се популират малко данни и да почне да се чертае графика. Можете да проверите /var/log/munin/munin-node.log за грешки и по лесното им отстраняване.

Ако искате да получавате email при критична температура на дисковете трябва да добавите описание за критична такава:

[example.com]
    address 127.0.0.1
    use_node_name yes
    hddtemp_smartctl.sda.critical 55
    hddtemp_smartctl.sdb.critical 55

2 бързи RAID 5 съвета

  1. Ако имате RAID 5 система дръжте дисковете в MBR вместо в GPT – поне при мен даде +10 – +15% разлика
  2. Задължително настройте /sys/block/md0/md/stripe_cache_size тъй като по подразбиране е твърде малък. Тука стойностите са според зависи при мен 32768 даде най приличен резултат

Когато правите RAID слоя над него го направете на LVM така ще си спестите много терзания ако сте задали не съвсем добре преценени размери на дяловете. Идеята е че ако не ползвате XFS или ZFS или някоя друга FS която позволява преоразмеряване на дяловете както EXT2/3/4 например нещата стават голяма кочина като осъзнаеш, че не си направил най- доброто делене. В общи линии получавате максимална пластичност ако е необходимо намаляне или увеличаване на размеря на дяла и същевременно сте подсигурени против неприятни случки на данните ви. В общи линии се получава нещо от този вид

| / | /var | /usr | /home  |
 --------------------------
|       LVM Volume         |
 --------------------------
|       RAID Volume        |
 --------------------------
| Disk 1 | Disk 2 | Disk 3 | 

От около 2 седмици php 5.3 влиза във историята бавно но сигурно. На 11-ти обявиха края на поддръжката му и че ще бъдат пускани само кръпки по сигурността в продължение на 1 година. В общи линии PHP 5.4 преминава в стадии old stable а PHP 5.5 става stable, което е малко забавно понеже все още част от допълненията и плъгините на php не работят съвсем коректно но пък и версия 5.5 е доста нова затова ще се въздържа от миграция към нея.

Та нека да си кажа за миграцията ми към 5.4 от 5.3. Предварително бях пуснал информация за остарелите функции, такива които са променени кардинално и такива които вече няма да се поддържат за да нямаме драми и от двете страни дали ще запали или не 😉 Та днес сутринта избрах час за старт на миграцията около 7 като стана, че да има минимални болки при миграцията ако не мине гладко. За моя огромна изненада всичко мина повече от гладко – компилирах си PHP 5.4.17 стартирах apache-то и о небеса всичко е там. Бърз поглед из логовете няма рев на depricated или въобще непознати функции – явно момчетата са си свършили работата добре. След това ми остана само да прекомпилирам и допълненията които са компилира със старото API като APC, RAR и прочие. Втори рестарт и всичко заспа. Отделно очаквам подобрения в производителността тъй като навсякъде хората сочат с големия пръст едни таблички дето се показва как PHP 5.4 консумира по малко РАМ и изпълнява скриптовете по бързо.