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

Original author: Vivek Gite
  • Translation

Настройка 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

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




Similar posts

AdBlock has stolen the banner, but banners are not teeth — they will be back

More
Ads

Comments 3

    0
    Оттягиваю момент публикации последних двух частей перевода до споров, рекеомендаций и прочего самого главного в таких статьях — до ваших комментариев.
      +1
      свеже-стабильный memcached из обычной epel-евой ямы не достается. если так хочется гонять все через яму, то рекомендуется установить и пользовать Atomic yum repository — там сейчас 1.4.13 против 1.4.5 лежащего в epel

      wget -q -O - www.atomicorp.com/installers/atomic | sh
      
        0
        Когда «залипают» коннекты memchaced, лечится так:

        echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
        echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
        echo 15 > /proc/sys/net/ipv4/tcp_fin_timeout
        

        Only users with full accounts can post comments. Log in, please.