суббота, 24 апреля 2010 г.

FreeBSD: Оптимизация MySQL

Имеем VPS
CPU 4×1000
Memory 2G
База форум phpBB3 1.2 Gb + 0.18 Gb нагурзка 30-150 пользователей на форуме по данным за последние 5 минут

Замечено: При изменении настроек my.cnf и перезагрузки MySQL база убивается, видимо это связано с нагрузкой форума. После убиения можно восстановить работу базы если отключить форум через ACP phpBB и прогнать в PhpMyadmin оптимизацию(10 минут) и восстановление(15-20 минут) базы, не включая форума перезагрузить MySQL и после этого включить форум!

Чтобы хоть как-то понять что происходит с MySQL сколько она памяти использует надо прогнать утилитку mysql tuner

fetch http://mysqltuner.com/mysqltuner.pl
perl mysqltuner.pl
далее во FreeBSD надо ввести пароль администратора MySQL

>> MySQLTuner 1.0.1 - Major Hayden
>> Bug reports, feature requests, and downloads at http://mysqltuner.com/
>> Run with '--help' for additional options and output filtering

-------- General Statistics --------------------------------------------------
[--] Skipped version check for MySQLTuner script
[OK] Currently running supported MySQL version 5.0.77
[OK] Operating on 32-bit architecture with less than 2GB RAM

-------- Storage Engine Statistics -------------------------------------------
[--] Status: -Archive -BDB -Federated -InnoDB -ISAM -NDBCluster
[--] Data in MyISAM tables: 797M (Tables: 134)
[!!] Total fragmented tables: 18

-------- Performance Metrics -------------------------------------------------
[--] Up for: 12h 42m 34s (1M q [25.057 qps], 114K conn, TX: 4B, RX: 140M)
[--] Reads / Writes: 85% / 15%
[--] Total buffers: 1.4G global + 3.6M per thread (110 max threads)
[!!] Maximum possible memory usage: 1.8G (88% of installed RAM)
[OK] Slow queries: 0% (25/1M)
[OK] Highest usage of available connections: 45% (50/110)
[OK] Key buffer size / total MyISAM indexes: 1.2G/1.0G
[OK] Key buffer hit rate: 99.3% (39M cached / 291K reads)
[OK] Query cache efficiency: 36.5% (262K cached / 718K selects)
[OK] Query cache prunes per day: 0
[OK] Sorts requiring temporary tables: 0% (3 temp sorts / 39K sorts)
[!!] Joins performed without indexes: 270
[OK] Temporary tables created on disk: 6% (2K on disk / 44K total)
[OK] Thread cache hit rate: 95% (5K created / 114K connections)
[OK] Table cache hit rate: 94% (512 open / 540 opened)
[OK] Open file limit used: 56% (650/1K)
[OK] Table locks acquired immediately: 99% (629K immediate / 632K locks)

-------- Recommendations -----------------------------------------------------
General recommendations:
Run OPTIMIZE TABLE to defragment tables for better performance
MySQL started within last 24 hours - recommendations may be inaccurate
Reduce your overall MySQL memory footprint for system stability
Enable the slow query log to troubleshoot bad queries
Adjust your join queries to always utilize indexes
Variables to adjust:
join_buffer_size (> 2.0M, or always use indexes with joins)


Обычно утилита дает рекомендации по увеличению чего-то

На что следуют обратить внимание
[--] Total buffers: 1.4G global + 3.6M per thread (110 max threads)
[!!] Maximum possible memory usage: 1.8G (88% of installed RAM)

Показан максимально возможный уровень использования памяти. Вторая часть первой строки вычисляется по формуле (read_buffer + sort_buffer + join_buffer_size) * max_connections

Строка
[OK] Highest usage of available connections: 45% (50/110)

Показывает максимальное количество подключений к базе - зная всё это можно предположить справится ли сервер с пиковой нагрузкой (если будет 110 подключений) - в моём случае не справится потому что в теории будет использует 1.8 G - при этом мало останется для Apache и прочего.

Строка
[OK] Key buffer size / total MyISAM indexes: 1.2G/1.0G

Утилита просит чтобы Key buffer size был выше MyISAM indexes - жаль не понятно как он используется потому что вроде бы никогда до конца не наполняется но при этом память сразу резервируется вся

Строка
[!!] Joins performed without indexes: 270

Вот это совершенно непонятная строка потому что увеличение join_buffer_size не помогает но сильно сжирает память

Конфигурация my.cnf при которой MySQL пока справляется с нагрузкой

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

key_buffer=1274M
table_cache=512
read_buffer=128K
sort_buffer=1M
join_buffer_size=2M
max_connections=110
wait_timeout=10
max_connect_errors=10
query_cache_limit=1M
query_cache_size=128M
query_cache_type=1
tmp_table_size=256M
thread_cache_size=4
connect_timeout=10
interactive_timeout=120
skip-innodb
skip-bdb
old_passwords=1

[mysql.server]
user=mysql
basedir=/var/lib

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

суббота, 13 марта 2010 г.

FreeBSD: Обзор сервера Depo Storm

Каждый системный администратор рано или поздно задается вопросом а почему ПК от Depo перестают включатся по кнопке Power и реагируют только на копку Reset... Ответ прост - не надо было покупать технику у специалистов по наклеиванию наклеек. Ведь что делают такие компании как Depo compюters покупают ПК наклеивают свою наклейку и продают в два раза дороже это рашин ноухау - рашин бизнес!

Живой пример берем сервер SuperMicro SuperServer 5015M-MT / 5015M-MTB так нет же это сервер Depo Storm!!!
Оригинал: http://www.supermicro.com/products/system/1U/5015/SYS-5015M-MT.cfm

За титанический труд по наклейке наклеек Depo просит где-то в полтора раза больше чем Supermicro и я бы не жалел потраченных денег но посмотрите на эту наклейку ОНА УЖЕ ОТВАЛИВАЕТСЯ!!!!!!!!! Попутно оцение жесткий диск - ничем иным как желанием содрать с клиента дополнительное бабало выбор этой модель оправдать нельзя... им мало оказывается своих наценок!



Но тем не менее у подающего большие надежды китайского производителя SuperMicro получился не плохой сервер - не плохой для своей настоящей цены конечно же!


Внутри все продуманно


И тут Depo проделала поразительную доводку до ума китайской техники - наклейка на каждом кулере - теперь за них можно быть спокойным!


С комплектацией у Depo конечно не очень... КОНЕЧНО с такой наценкой на голую платформу, предлагать достойные комплектующие просто не хватает уже диапазона цены!

FreeBSD: Обзор корпуса Zalman GS1000

Более качественные фотки и красивые схемки есть на сайте производителя
http://www.zalman.co.kr/ENG/product/Product_Read.asp?idx=310

Теперь из опыта личного общения!

Корпус Zalman GS1000 большой и тяжелый, боковые поверхности матовые шороховатые, а вот верх лицо и низ - убийственно глянцевые. За 200 уе вы получаете не просто корпус но и опцию "Собери отпечатки всех своих друзей" при этом в комплекте отсутствует набор дактилоскопический - специальная кисточка, пудра и пленки ОЧЕНЬ ЖАЛЬ! В комплекте идут ножки, их можно ставить можно не ставить - но если не ставить то никаких других ножек поменьше нет, а если будете ставить нижние вентиляторы то тогда конечно надо ставить обязательно.


С левой стороны корпуса оставленно место под кабели. Так как размеры корпуса большие многие кабели не дотянутся у меня не дотянулся кабель питания 8 пин, но в комплекте к корпусу был удлинитель CPU 12V Extend Cable!


Сзади все по последней моде. На крышках несъемные болты под цвет корпуса - по началу это дико радует, но один сразу начал прокручиваться а заменить его уже не получится никак!


На лицевой стороне проклятый глянец во всей красе


Спереди имеются два окна с крышками для 6 жестких дисков, в нижнем окне диски с горячей заменой. Харды вставляются в симпатичных пластмассовых салазках и никак не крепятся в корпусе при этом болтаются!!! Пришлось в верхней корзине прикрутить их транспортными болтами длинными.



В основных стойках тоже не съемные болты, имеются два посадочных места под 3.5 устройства


Внутри получается очень просторно и все кабели спрятаны

четверг, 4 марта 2010 г.

FreeBSD: Как перезагрузить FreeBSD в определенное время?

Для этого надо в crontab добавить запись... но не простую (reboot) а особую!

Для начала узнаем какое время на сервере сейчас
\date
четверг, 4 марта 2010 г. 14:50:34 (MSK)

Заходим в crontab
\crontab -e

добавляем запись делается это командами редактора vi
Подробнее о vi: FreeBSD: Как писать удалять в доисторическом текстовом редакторе vi?

13 7 * * * /sbin/shutdown -r now

в 13 минут в 7 часов каждый день месяца каждого месяца каждого дня недели сервер будет перезагружаться!


Подробнее о crontab: FreeBSD: Crontab запуск заданий по расписанию?

среда, 17 февраля 2010 г.

FreeBSD: Общая адресная книга на openLdap

Заранее оговорюсь что это полноценно работает только для Thunderbird 2 (для 3-го нет пока этого дополнений) с дополнением ContacSide Bar - авто подбор адресов по первым буквами email, вывод всего списка, централизованный ввод адресов.

В outlook работает только поиск, больше ничего нет потому что outlook умеет работать только с технологией VLV (Virtual List View) которая реализована только в MS Server Exchange - если вы фанат MS и хотите централизованный список адресов смело покупайте за несколько тысяч евро Exchange :")))

Для работы должны быть установлены Aapche22, php5, php5-extensions
с опцией OpenLDAP support эта опция за собой потянет openldap24-client (тоже нужен)

далее ставим
//> cd /usr/ports/net/openldap23-server/
/usr/ports/net/openldap23-server/> make config

выбираем опции

[X] TCP_WRAPPERS With tcp wrapper support
[X] BDB With BerkeleyDB support
[X] DYNAMIC_BACKENDS Build dynamic backends
[X] SLURPD Build slurpd replication daemon

/usr/ports/net/openldap23-server/> make clean install
Генерируем пароль администратора OpenLDAP командой slappasswd, хеш которого мы ниже добавим в конфиг OpenLDAP

//> slappasswd -s vash_parol
{SSHA}HaXoFVeJ5HOmvVbFnSB00lCYjIw8N0y+

Правим конфиг OpenLDAP
//>vi /usr/local/etc/openldap/slapd.conf

#
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
include /usr/local/etc/openldap/schema/core.schema
include /usr/local/etc/openldap/schema/cosine.schema
include /usr/local/etc/openldap/schema/inetorgperson.schema
include /usr/local/etc/openldap/schema/misc.schema
include /usr/local/etc/openldap/schema/nis.schema
include /usr/local/etc/openldap/schema/openldap.schema

# Define global ACLs to disable default read access.

# Do not enable referrals until AFTER you have a working directory
# service AND an understanding of referrals.
#referral ldap://root.openldap.org

pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args

# Load dynamic backend modules:
modulepath /usr/local/libexec/openldap

moduleload back_bdb
# moduleload back_ldap
# moduleload back_ldbm
# moduleload back_passwd
# moduleload back_shell

# Sample security restrictions
# Require integrity protection (prevent hijacking)
# Require 112-bit (3DES or better) encryption for updates
# Require 63-bit encryption for simple bind
# security ssf=1 update_ssf=112 simple_bind=64

# Sample access control policy:
# Root DSE: allow anyone to read it
# Subschema (sub)entry DSE: allow anyone to read it
# Other DSEs:
# Allow self write access
# Allow authenticated users read access
# Allow anonymous users to authenticate
# Directives needed to implement policy:
access to dn.base="" by * read
access to dn.base="cn=Subschema" by * read
access to *
by self write
by users read
by anonymous auth
#
# if no access controls are present, the default policy
# allows anyone and everyone to read anything but restricts
# updates to rootdn. (e.g., "access to * by * read")
#
# rootdn can always read and write EVERYTHING!
#######################################################################
# BDB database definitions
#######################################################################

database bdb
suffix "dc=mail,dc=local"
rootdn "cn=root,dc=mail,dc=local"

# Cleartext passwords, especially for the rootdn, should
# be avoid. See slappasswd(8) and slapd.conf(5) for details.
# Use of strong authentication encouraged.
rootpw {SSHA}HaXoFVeJ5HOmvVbFnSB00lCYjIw8N0y+

# The database directory MUST exist prior to running slapd AND
# should only be accessible by the slapd and slap tools.
# Mode 700 recommended.
directory /var/db/openldap-data

loglevel 256

# Indices to maintain
index objectClass eq
index cn eq

Добавляем в автозагрузку /etc/rc,conf

slapd_enable="YES"
slapd_flags='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/ ldap://0.0.0.0/"'
slapd_sockets="/var/run/openldap/ldapi"

и перезагружаемся
//> reboot

Проверяем запустился ли OpenLDAP

//> ps axw | grep openldap
1671 ?? Is 0:00,44 /usr/local/libexec/slapd -h ldapi://%2fvar%2frun%2fopenldap%2fldapi/ ldap://0.0.0.0 -u ldap -g ldap

5874 p1 DL+ 0:00,00 grep openldap


//> netstat -nap tcp | grep 389
tcp4 0 0 *.389 *.* LISTEN


Создаем КОРЕНЬ

//> vi /var/db/openldap-data/base.ldif

dn: dc=mail, dc=local
objectClass: dcObject
objectClass: organization
objectClass: top
dc: mail
o: mail

//> cd /var/db/openldap-data/
//> ldapadd -x -D "cn=root,dc=mail,dc=local" \
-h 0.0.0.0 -W -f base.ldif
Enter LDAP Password:
тут тот пароль что вводился в начале (символами буквами и пр)


Установка phpLdapadmin
//> cd /usr/ports/net/phpldapadmin
/usr/ports/net/phpldapadmin/> make install clean

Но скорей всего с версией из портов openLDAP не будет корректно работать
надо скачать свежий разархивировать и кинуть в ту же папку что и этот
http://sourceforge.net/projects/phpldapadmin/files/

Добавляем
//> vi /usr/local/etc/apache/httpd.conf

Alias /phpldapadmin "/usr/local/www/phpldapadmin/htdocs/"

Options none
AllowOverride none
Order Deny,Allow
Deny from all
Allow from 10.10.30.0/24 .domain.local


10.10.30.0/24 - айпи вашей сети
http://ip_server/phpldapadmin - ссылка по который вызываем phpLdapadmin

Слегка правим конфиг
//> vi /usr/local/www/phpldapadmin/config/config.php

$ldapservers->SetValue($i,'server','host','ip_server');

Заходим в папку скриптов LDAP и копируем \templates\creation в \templates\modification без этого некоторые шаблоны нельзя будет редактировать


Настраиваем адрессную книгу

заходим http://ip_server/phpldapadmin
имя: cn=root,dc=mail,dc=local
пароль: тут тот пароль что вводился в начале (символами буквами и пр)

dc=mail,dc=local > Создать потомка > Organisation Unit
назовем addressbook

dc=mail,dc=local > ou=addressbook > Создать потомка > Address Book Entery
и здесь уже забиваем личные данные

В почтовых клиентах выбираем
Имя пользователя: cn=root,dc=mail,dc=local
Имя сервера: ip_servera
Корневой каталог: ou=addressbook,dc=mail,dc=local (в Outlook это каталог поиска)
Порт: 389



В настройках ContacSide Bar во вкладке ПОИСК надо поставить LDAP надо поставить галочку и заменить * на @



Экспорт в phpldapadmin не работает, точнее не работает тот единственный который нужен в VCARD - когад надо сделать экспорт всех выдается только один из контактов, Outlook отображает готовый файл в неправильнйо кодировки хотя Notepad все конктретно видит!

В любом случае в экспорте есть фильтр!

Если нужны только адреса с определенного домена надо набрать в "Фильтр поиска"
(mail=*@mail.ru)

четверг, 17 декабря 2009 г.

Huawei ETS 1001 обман от Skylink!

Skylink, как это не пародоксально, остается самой дорогой и медленной связью - но чуть более большая зона покрытия чем у GSM операторов позволяет им держатьяс на плаву. И вот о пару приемчиках благодоря которым они "не тонут" я тут сйечас и расскажу!

Обман 1 - Цена
При звонке в Skylink выясняется что по ценам указанным на сайте у них ничего нет, ну то есть у них просто ничего нет. Интересовал Huawei ETS 1001 на сайте skylink он стоит 5000 рублей официальный ответ 'Нет, и когда будет не знаем, ишите у партнеров'! Звоню партнерам выясняется что никаикх парнеров нет есть один офицальный поставщик у которого есть эти терминалы в так называемом комплекте Безлимитный город но уже по цене 9000 рублей. Считаем Безлимитный гроод - R-UIM карта 300 рублей, плюс на счету 345 рублей, плюс терминал 5000 рублей ИТОГО: 9000 рублей! С учетом реаьлнйо цены этого терминала (шедевром китайских крестьян) то уже получаем цена завышена в два раза!!!

Обман 2 - Телефон
Ну это самый маленький обман - кстати обратите внимание что нигде нет подробной инструкции о подключении, все нюансы приходится узнавать по телефону. Написано "к терминалу можно подключить любой обычный телефон' - подключаем - не работает - звоним - 'Можно подключить обычный телефон с тоновым набором'!!! Поиск обычного телефона с тоновым набором занимает дополнительное время и деньги!

Обман 3 - Интернет (Величайший обман от Skylink)
в описание читаем 'Мобильный интернет только через кабель' как вы думаете какой кабель? Никогда не угадаете USB 1.1 сменил USB 2.0 на подходе USB 3.0 а порт в железке за 9000 рублей 20-летней давнрости - COM и кабеля к нему нет (см. описание выше) да он и не нужен, потому что ни на одном современном ПК этого порта просто нет!!! Но не беда находим чудо кабель COM to USB (кстати за чудо деньги 300 рублей) подключаем кабель устаналваетяс опеределяется подключаем интернет и? Он не работает! Звоним в поддержку и слышем "Данный терминал не работает с двух ядерными процессорами"!!! Это все равно что сказать что терминал не работает с квадратными мониторами!!!

Вот такие маленькие уловки позволяют Skylink не тонуть - Skylink не тонет!

четверг, 26 ноября 2009 г.

Обзор нетбука Lenovo S10-2

Нетбук Lenovo S10-2 поступает в продажу со следующими дефектами:

1. Неработает Wi-Fi. ОС сама не может его инициализировать полсе загрузки, чтобы он заработал надо в Сетевых подключениях отключить Wi-Fi и включить, только после этого он начинает искать сети. На сайте lenovo.com надо скачать кучу обнолвений
Hotfix
http://consumersupport.lenovo.com/en/DriversDownloads/drivers_show_1280.html
Intel Wireless WiFi Link Driver
http://consumersupport.lenovo.com/en/DriversDownloads/drivers_show_1274.html
Intel EchoPeak WiMAX Driver
http://consumersupport.lenovo.com/en/DriversDownloads/drivers_show_1275.html
WiMAX Driver не захочет устаналиваться!

Для того чтобы Wi-Fi всё таки работал надо обновить всё что обновляется, отключить беспроводным доступом утилитой от Intel "передать управление Windows", и отключить модуль Wimax

2. Не работает связка микрофон колонки. Если вы попытаетесь пройти тест в Пуск-Настройка-Панель управления-Звуки и аудиоустройства-Речь-Проверка то услышите страшный скрежит... Точно не помню при каких настройках заработало но надо в Пуск-Настройка-Панель управления-Realtek HD Конфигурация аудио во вкладке Микшер отключить в Запись - Стерео Микшер а во вкладке Микрофон активировать Подавление шума и Подавление эхо

3. Windows XP Home и это дефект!!! Устройство предназначенное для работе в сети поставляется с ОС где кастрированы все сетевые функции - вы не сможете открывать сови папки для общего доступа, вы не сможете зайти в папки открытые другими для общего доступа, вы даже не сможете запомнить пароль для сетевых дисков. Первый поддефект решается организацией хранения общих файлов в сети при помощи файл-сервер Samba на FreeBSD, второй дефект устраняется утилитой CONNECTilca http://pam-pam-tararam.narod.ru/

4. Если в загрузки стоит фирменная утилита Lenovo для управления электропитанием то при включении нетбука при питании от батареии после загрузки нетбук зависает курсор двигается но ни что не работает даже кнопка выключения, приходится вынимать аккамулятор.

5. Для срабатывания кнопки Enter требуется прилагать усилия остальные кнопки срабатывают без усилий

6. Картинка фона рабочего стола не соответствую разрешению 1024x600

7. Встроенная Linux подобная ОС не рассчитана на разрешение экрана нетбука.



Нетбук поставляется в очень маленькой удобной коробке, весь набор дисков в комплектации есть, как и инструкция.


Нетбук Lenovo S10-2 совсем не кажется маленьким, в смысле маленьким для комфортной работы, но при этом он остается маленьким. На 10 дюймовом экране отключив все лишне можно просмоатривать любые сайты. Вот только для установки Skype 600 в высоту мало (жмем Enter это OK если не видно его)


6 ячеечный аккумулятор с включенным Wi-Fi прогнозируют свою работу в течении 5 12 минут, но по ощущениям в реальности на 40-60 минут меньше работает. Аккумулятор заметно выпирает, на столе он служит подставкой, зато из-за такого расположения сам корпус достаточно тонкий и остается место для циркуляции воздуха.


Спереди расположен считыватель карты SD а также 1 RJ45, 4 USB, 1 VGA, микрофон наушники


Индикация дублируется у основания экрана и рядом с тачпадом, причем у тачпада такие бледные лампочки что понят что они горят можно только когда они не горят (вот как хотите так и понимайте). Кнопка [QS] загружает Lenovo Quick star - там можно смотреть фотки, интернет, Skype


Yota протестировать не удалось, не смотря на заявления о покрытие сети в нашем райне, покрытия нет!!!


Ну и открутил все что можно было открутить сзади и посмотрел