Записки сисадмина

Или помойное ведро идей


Выделенные сервера от $130
VDS/VPS от $20

Уменьшение потребления памяти MySQL

В основном это касается Virtual Dedicated Server (VDS/VPS), т.к. дефолтная установка MySQL на CeontOS/Fedora/RHEL с дефолтным my.cnf делает malloc на сотню с лишним мегабайт.

Конечно на потребляемую память MySQL влияют такие параметры как key_buffer, query_cache_size и т.п. Но они по дефолту идут минимальные, а кеш запросов вообще по моему отключен по дефолту.

Так вот все очень просто. Добавляем в my.cnf:

skip-innodb
skip-bdb

Это выключит хандлеры InnoDB и BerkeleyDB и всю потребляемую ими память. Ну конечно делать это нужно если вы не используете вышеприведенные типы таблиц.

Далее рестартуем мускуль и видим в топе что он занимает десяток-другой мегабайт.

PS: в большинстве случаев не помешает опция и skip-networking. А вот thread_cache_size я советую поставить в значение 5-15 (в зависимости от нагрузки) :)

Теги: ,,,,,

27.03.2009 Автор admin | FixIT, HOWTO, Базы Данных, Виртуализация, Очумелые ручки, Тюнинг | 9 comments

Статья: Что такое VDS хостинг?

Вышла моя статья на ресурсе Master-X на тему VDS хостинга и его преимуществах.

Статья доступна здесь: http://www.master-x.com/articles/article/438/

Теги: ,,,,

19.03.2009 Автор admin | Статьи | no comments

Yum + VPS + low memory

Бывает такая фигня с yum‘ом на VPSках с памятью <=256M, когда пытаешься сделать какое то телодвижение с yum‘ом, он вываливается с таким бектрасом:

-bash-3.2# yum search foobar
Loading «fastestmirror» plugin
Loading mirror speeds from cached hostfile
* epel: ftp.nluug.nl
Traceback (most recent call last):
File «/usr/bin/yum», line 29, in ?
yummain.main(sys.argv[1:])
File «/usr/share/yum-cli/yummain.py», line 105, in main
result, resultmsgs = base.doCommands()
File «/usr/share/yum-cli/cli.py», line 293, in doCommands
return self.yum_cli_commands[self.basecmd].doCommand(self, self.basecmd, self.extcmds)
File «/usr/share/yum-cli/yumcommands.py», line 383, in doCommand
return base.search(extcmds)
File «/usr/share/yum-cli/cli.py», line 867, in search
for (po, matched_value) in matching:
File «/usr/lib/python2.4/site-packages/yum/__init__.py», line 1313, in searchGenerator
for sack in self.pkgSack.sacks.values():
File «/usr/lib/python2.4/site-packages/yum/__init__.py», line 537, in <lambda>
pkgSack = property(fget=lambda self: self._getSacks(),
File «/usr/lib/python2.4/site-packages/yum/__init__.py», line 392, in _getSacks
self.repos.populateSack(which=repos)
File «/usr/lib/python2.4/site-packages/yum/repos.py», line 214, in populateSack
self.doSetup()
File «/usr/lib/python2.4/site-packages/yum/repos.py», line 66, in doSetup
self.ayum.plugins.run(‘postreposetup’)
File «/usr/lib/python2.4/site-packages/yum/plugins.py», line 169, in run
func(conduitcls(self, self.base, conf, **kwargs))
File «/usr/lib/yum-plugins/fastestmirror.py», line 90, in postreposetup_hook
repomirrors[str(repo)] = FastestMirror(repo.urls).get_mirrorlist()
File «/usr/lib/yum-plugins/fastestmirror.py», line 142, in get_mirrorlist
self._poll_mirrors()
File «/usr/lib/yum-plugins/fastestmirror.py», line 155, in _poll_mirrors
pollThread.start()
File «/usr/lib/python2.4/threading.py», line 416, in start
_start_new_thread(self.__bootstrap, ())
thread.error: can’t start new thread

Это означает что у него есть плагин «fastestmirror«, который жрет много памяти в пике. Ессесно ее не получает, т.к. память лимитирована.

Лечится добавлением –noplugins к команде yum‘а или добавлением памяти на VDS.

Теги: ,,,,,

02.03.2009 Автор admin | FixIT, HOWTO | no comments

Особенности настройки DirectAdmin на VPS

Поскольку в VPS память лимитирована, а директадмин ставится с размахом, то нужно поубавить его аппетиты. Ну не столько его, сколько приложений.

1. Редактируем /usr/local/directadmin/conf/directadmin.conf:
numservers=2

2. Редактируем /etc/dovecot.conf:
protocols = imap pop3
(можно вообще pop3 оставить)
login_processes_count= (здесь от 2 до 5)

3.  /etc/httpd/conf/extra/httpd-mpm.conf

Ну здесь надо расчитать по памяти конечно. Значения могут быть и больше.

# prefork MPM
StartServers 2
MinSpareServers 2
MaxSpareServers 5
ServerLimit 32
MaxClients 32

Можно подумать на счет целесообразности KeepAlive.

Ну и затем рестартануть VPS.

Теги: ,,

27.02.2009 Автор admin | FixIT, Виртуализация, Очумелые ручки, Тюнинг | no comments