Memcachedは、無料のオープンソースの高性能メモリキー値データベースです。これは主に、結果をデータベースにキャッシュすることによってアプリケーションの応答速度を向上させるためのシステムキャッシングに使用されます。
このガイドでは、Ubuntu18.04に最新バージョンのMemcachedをインストールして構成する方法について説明します。同じ手順がUbuntu16.04およびその他のUbuntuベースのディストリビューションにも適用されます。
このガイドを続ける前に、sudo権限を持つユーザーとしてシステムにログインしていることを確認してください。
Memcachedパッケージは、デフォルトの18.04ソフトウェアソースに含まれています。インストールは非常に簡単です。以下の手順に従ってください。
sudo apt update
sudo apt install memcached libmemcached-tools
この libmemcached-tools
パッケージには、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-3015: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は、 / etc / memcached.conf
ファイルを編集することで構成できます。ほとんどのユーザーにとって、デフォルトの構成ファイルで十分です。
デフォルトでは、Memcachedはローカルlocalhostでのみリッスンするように構成されています。サーバーに接続しているクライアントとサーバーが同じホスト上にある場合は、デフォルトの構成ファイルを変更する必要はありません。
Memcachedが適切に構成されていない場合、Memcachedを使用してサービス拒否攻撃(DDos)を実行できます。 Memcachedサービスへのリモートアクセスを許可する場合は、ファイアウォールを構成し、信頼できるクライアントのみがポート11211UDPを介してMemcachedにアクセスできるようにする必要があります。
次の例では、LANを介してMemcachedサーバーに接続するとします。サーバーのIPアドレスは 192.168.100.20
で、クライアントのIPアドレスは 192.168.100.30
です。
Ubuntuに付属のファイアウォール構成ツールはUFWと呼ばれます。デフォルトでは、[UFW](https://www.itcoder.tech/posts/how-to-setup-a-firewall-with-ufw-on-ubuntu-18-04/)がインストールされていますが、有効になっていません。 UFWを有効にする前に、まずSSH接続を許可するルールを追加します。
sudo ufw allow 22
リモートクライアントのIPアドレスアクセスを許可する:
sudo ufw allow from192.168.100.30 to any port 11211
UFWを有効にするには、次のように入力します。
sudo ufw status
ファイアウォールが構成されたら、次のステップはMemcached構成を編集し、サーバーのLANインターフェースをリッスンするようにMemcachedサービスを設定することです。
これを行うには、構成ファイル memcached.conf
を開きます。
sudo nano /etc/memcached.conf
この行を見つけて、 127.0.0.1
を -l 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を[Wordpress](https://www.itcoder.tech/posts/how-to-install-wordpress-with-apache-on-ubuntu-18-04/)、[Drupal](https://www.itcoder.tech/posts/how-to-install-drupal-on-ubuntu-18-04/)、[Joomla](https://www.itcoder.tech/posts/how-to-install-joomla-with-apache-on-ubuntu-18-04/)、[Magento](https://www.itcoder.tech/posts/how-to-install-magento-2-on-ubuntu-18-04/)などの[PHP](https://www.itcoder.tech/posts/how-to-install-php-on-ubuntu-18-04/)アプリケーションとしてキャッシュデータベースとして使用するには、 をインストールする必要があります。 php-memcached
拡張機能:
sudo apt install php-memcached
[Python](https://www.itcoder.tech/posts/how-to-install-python-3-7-on-ubuntu-18-04/)には、memcacheとの対話に使用できるライブラリがいくつかあります。[pip](https://www.itcoder.tech/posts/how-to-install-pip-on-ubuntu-18.04/)を使用して、お気に入りのライブラリをインストールできます。
pip install pymemcache
pip install python-memcached
UbuntuサーバーにMemcachedをインストールする方法を学びました。このトピックの詳細については、[Memcached Wiki](https://github.com/memcached/memcached/wiki)を参照してください。
Recommended Posts