
Memcachedは、無料のオープンソースの高性能インメモリキーバリューデータストアです。これは、データベース呼び出しの結果からさまざまなオブジェクトをキャッシュすることにより、アプリケーションを高速化するために最も一般的に使用されます。
このチュートリアルでは、Ubuntu18.04に最新バージョンのMemcachedをインストールして構成するプロセスについて説明します。同じ手順がUbuntu16.04とUbuntuベースのディストリビューションにも当てはまります。
前提条件#
このチュートリアルを続行する前に、sudo権限を持つユーザーとしてログインしていることを確認してください。
Memcachedのインストール#
Memcachedパッケージは、デフォルトのUbuntu18.04リポジトリに含まれています。インストールは非常に簡単です。以下の手順に従ってください。
-
aptパッケージリストを更新することから始めます:
sudo apt update
-
次のように入力してMemcachedをインストールします:
sudo apt install memcached libmemcached-tools
libmemcached-tools
パッケージは、Memcachedサーバーを管理するためのいくつかのコマンドラインツールを提供します。 -
インストールが完了すると、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がUbuntu18.04サーバーにインストールされて実行されています。
Memcachedの構成#
Memcachedは、/etc/memcached.conf
を編集して構成できます。 ファイル。ほとんどのユーザーにとって、デフォルトの構成設定で十分です。
デフォルトでは、Memcachedはローカルホストでのみリッスンするように構成されています。サーバーに接続しているクライアントも同じホストで実行されている場合は、デフォルトの構成ファイルを変更する必要はありません。
不適切に構成された場合、Memcachedを使用して分散型サービス拒否(DDoS)攻撃を実行できます。 Memcachedサーバーへのリモートアクセスを許可する場合は、ファイアウォールを構成し、信頼できるクライアントからのみMemcachedUDPポート11211へのアクセスを許可する必要があります。
次の例では、プライベートネットワークを介して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
。
# 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をWordPress、Drupal、Joomlaor MagentoなどのPHPアプリケーションのキャッシュデータベースとして使用するには、php-memcached
をインストールする必要があります。 拡張子:
sudo apt install php-memcached
Python#
memcacheと対話するためのPythonライブラリがいくつかあります。 pipを使用して好みのライブラリをインストールできます:
pip install pymemcache
pip install python-memcached