Повышаем безопасность стека web-приложений (виртуализация LAMP, шаг 3/6)

в 5:00, , рубрики: Apache, CentOS, lamp, memcached, nfs, nfsv4, nginx, Веб-разработка, Серверная оптимизация, Серверное администрирование

Настройка Memcached-сервера кэширования

Перейдем к третьем практическому уроку серии и поговорим о настройке Memcached-сервера

Memcached может ускорить работу с базами данных динамического  web-сайта. Она должна быть развернута в доверенной сети, где vm01 и vm02 клиенты могут свободно подключиться к нашему серверу. Вам нужно будет ввести следующие команды на vm03 с IP-адресом 192.168.1.12.

Установка Memcached-сервера на vm03

Введите следующую команду yum-менеджера для установки Memcached-сервера на RHEL-подобных операционных системах:

# yum install -y memcached

Установка Memcached-клиента на vm01 и vm02

Возможно, вам придется установить один из следующих пакетов на виртуальных машинах vm01 и vm02 (сервер php5 + Apache / Lighttpd):

  1. Perl-Cache-Memcached: Perl клиент (библиотека) для работы с Memcached сервером.
  2. Python-Memcached: Python клиент (библиотека) для работы с Memcached-сервером.
  3. PHP-PECL-Memcache: PHP расширения для работы с Memcached-сервером.

Настройка memcached

Отредактируем файл конфигурации /etc/sysconfig/memcached введя следующую команду:

# vi /etc/sysconfig/memcached

Пример настройки:

PORT="11211";
USER="memcached";
MAXCONN="1024";
CACHESIZE="512";
## make sure we accept connection from vm01 and vm02 on 192.168.1.12:11211
OPTIONS="-l 192.168.1.12 -L"

Сохраним и закроем файл. Запустим memcached-сервер:

# chkconfig memcached on
# /sbin/service memcached start

Отредактируем файл конфигурации /etc/sysconfig/iptables и убедимся, что только виртуальные сервера vm01 и vm02 имеют соответствующие права на подсоединение к нашему серверу:

## открываем tcp/udp порты vm01 and vm02 для доступа к memcached-серверу ##
-A INPUT -m state --state NEW -s 192.168.1.10 -m tcp -p tcp --dport 11211 -j ACCEPT
-A INPUT -m state --state NEW -s 192.168.1.11 -m udp -p udp --dport 11211 -j ACCEPT
-A INPUT -m state --state NEW -s 192.168.1.10 -m udp -p udp --dport 11211 -j ACCEPT
-A INPUT -m state --state NEW -s 192.168.1.11 -m tcp -p tcp --dport 11211 -j ACCEPT

Сохраним и закроем файл. Перезапустим службу iptables следующей командой:

# /sbin/service iptables restart
# /sbin/iptables -L -v -n

Увеличение лимитов дескрипторов файлов и портов на vm03

Для нагруженных memcached-серверов следует увеличить количество дескрипторов файлов и IP-портов:

# Увеличить лимит дескрипторов файлов
fs.file-max = 50000
# Увеличить число IP-портов
net.ipv4.ip_local_port_range = 2000 65000

Применим sysctl-команду, что бы измененные параметры ядра Linux-системы вступили в силу:

# sysctl -p

Материалы по теме:

Автор: danielnewman

* - обязательные к заполнению поля