Как установить Memcached в Ubuntu 18.04

Memcached — это бесплатное высокопроизводительное хранилище данных типа "ключ-значение" в памяти с открытым исходным кодом. Чаще всего он используется для ускорения работы приложений путем кэширования различных объектов из результатов вызовов базы данных.

В этом руководстве мы рассмотрим процесс установки и настройки последней версии Memcached в Ubuntu 18.04. Те же инструкции применимы для Ubuntu 16.04 и любого дистрибутива на основе Ubuntu.

Подготовка

Прежде чем продолжить это руководство, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .

Установка Memcached

Пакеты Memcached включены в репозитории Ubuntu 18.04 по умолчанию. Установка довольно проста, просто выполните следующие действия:

  1. Начните с обновления списка пакетов apt:

     sudo apt update
  2. Установите Memcached, набрав:

     sudo apt install memcached libmemcached-tools

    Пакет libmemcached-tools предоставляет несколько инструментов командной строки для управления сервером Memcached.

  3. После завершения установки служба Memcached запустится автоматически. Чтобы проверить статус службы, введите следующую команду:

     sudo systemctl status memcached

    Результат будет выглядеть так:

     ● memcached.service - memcached daemon Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2019-04-30 15:13:41 PDT; 37s ago Docs: man:memcached(1) Main PID: 10753 (memcached) Tasks: 10 (limit: 2319) CGroup: /system.slice/memcached.service `-10753 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1 -P /var/run/memcached/memcached.pid

Вот и все, на данный момент у вас установлен и запущен Memcached на вашем сервере Ubuntu 18.04.

Настройка Memcached

Memcached можно настроить, отредактировав файл /etc/memcached.conf . Для большинства пользователей достаточно настроек конфигурации по умолчанию.

По умолчанию Memcached настроен на прослушивание только на локальном хосте. Если клиент, подключающийся к серверу, также работает на том же хосте, вам не нужно изменять файл конфигурации по умолчанию.

Удаленный доступ

При неправильной настройке Memcached может использоваться для выполнения распределенной атаки типа «отказ в обслуживании» (DDoS). Если вы хотите разрешить удаленный доступ к вашему серверу Memcached, вам необходимо настроить брандмауэр и разрешить доступ к UDP-порту 11211 Memcached только для доверенных клиентов.

В следующем примере предполагается, что вы хотите подключиться к серверу Memcached через частную сеть. IP-адрес сервера — 192.168.100.20 а IP-адрес клиента — 192.168.100.30

Ubuntu поставляется с инструментом настройки брандмауэра под названием UFW. По умолчанию UFW установлен, но не включен. Перед включением брандмауэра UFW сначала добавьте правило, разрешающее входящие соединения SSH:

sudo ufw allow 22

Разрешить оценку с IP-адреса удаленного клиента:

sudo ufw allow from 192.168.100.30 to any port 11211

Включите UFW, набрав:

sudo ufw status

После того, как ваш брандмауэр настроен, следующим шагом будет редактирование конфигурации Memcached и установка службы Memcached для прослушивания интерфейса частной сети сервера:

Для этого откройте файл конфигурации memcached.conf :

sudo nano /etc/memcached.conf

Найдите строку, которая начинается с -l 127.0.0.1 и замените 127.0.0.1 на IP-адрес сервера 192.168.100.20 .

/etc/memcached.conf
# Specify which IP address to listen on. The default is to listen on all IP addresses
# This parameter is one of the only security measures that memcached has, so make sure
# it's listening on a firewalled interface.
-l 192.168.100.20

Перезапустите службу Memcached, чтобы изменения вступили в силу:

sudo systemctl restart memcached

Теперь вы можете подключиться к серверу Memcached из вашего удаленного местоположения.

Подключение к Memcached

Для подключения к серверу Memcached вам необходимо использовать клиент для конкретного языка.

PHP

Чтобы использовать Memcached в качестве кэширующей базы данных для вашего PHP- приложения, такого как WordPress , Drupal , Joomla или Magento , вам необходимо установить расширение php-memcached :

sudo apt install php-memcached

Python

Есть несколько библиотек Python для взаимодействия с memcache. Вы можете установить предпочитаемую библиотеку с помощью pip :

pip install pymemcache
pip install python-memcached

Выводы

Вы узнали, как установить Memcached на свой сервер Ubuntu. Для получения дополнительной информации по этой теме обратитесь к Memcached Wiki .

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии ниже.

Оставьте комментарий