如何在 Ubuntu 18.04 上安装 Memcached

2020-05-11 16:11:10 浏览数 (1)

Memcached 是一个免费并且开源的高性能内存键值数据库。它主要用于系统缓存,通过缓存数据库中的结果来提高应用的响应速度。

在这篇指南中,我们将会讲述如何在 Ubuntu 18.04 上安装和配置最新版本的 Memcached。同样的指令,适用于 Ubuntu16.04 和其他任何基于 Ubuntu 的发行版。

一、前提条件

在继续这个指南之前,确保你已经以 有 sudo 权限的用户身份登录系统。

二、安装 Memcached

Memcached 软件包被包含在默认的 18.04 软件源中。这个安装非常直接,仅仅跟着下面的步骤来:

01.开始更新 apt 软件包列表:

代码语言:javascript复制
sudo apt update

02.安装 Memcached,输入:

代码语言:javascript复制
sudo apt install memcached libmemcached-tools

这个libmemcached-tools软件包包含了各种命令行工具用来管理 Memcached 服务器。

03.一旦安装完成,Memcached 服务将会被自动启动。想要检查服务状态,输入下面的命令:

代码语言:javascript复制
sudo systemctl status memcached

输出将会像下面这样:

代码语言:javascript复制
 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 被配置为仅仅监听本地 localhost。如果连接服务器的客户端和服务器在同一个主机上,你不需要修改默认的配置文件。

3.1 远程访问

当 Memcached 没有被正确配置时,它可以被用来执行拒绝服务攻击(DDos)。如果你想要允许远程访问 Memcached 服务,你需要配置你的防火墙,并且仅仅允许被信任的客户端通过 11211 UDP 端口访问 Memcached。

下面的例子,假设你想通过局域网连接你的 Memcached 服务器。服务器 IP 地址是192.168.100.20,并且客户端 IP 地址是192.168.100.30

Ubuntu 自带的防火墙配置工具被称为 UFW。默认情况下,UFW被安装,但是没有被启用。在启用 UFW 之前,首先添加一个规则允许 SSH 连接:

代码语言:javascript复制
sudo ufw allow 22

允许远程客户端 IP 地址的访问:

代码语言:javascript复制
sudo ufw allow from 192.168.100.30 to any port 11211

启用 UFW,输入:

代码语言:javascript复制
sudo ufw status

一旦防火墙被配置好了,下一步就是编辑 Memcached 配置并且设置 Memcached 服务监听服务器的局域网接口:

想要这么做,打开配置文件memcached.conf

代码语言:javascript复制
sudo nano /etc/memcached.conf

定位到这一行,以-l 127.0.0.1并且使用服务器的 IP 地址192.168.100.20替换127.0.0.1

代码语言:javascript复制
# 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 服务,使修改生效:

代码语言:javascript复制
sudo systemctl restart memcached

你可以从你的远程位置连接到 Memcached 服务器了。

四、 连接 Memcached

想要连接到 Memcached 服务器,你需要使用一个指定语言的客户端。

4.1 PHP

想要使用 Memcached 作为你的PHP应用例如Wordpress,Drupal,Joomla或者Magento的缓存数据库,你需要安装php-memcached扩展:

代码语言:javascript复制
sudo apt install php-memcached

4.2 Python

有一些 Python上的库可以用来和 memcache 交互,你可以使用pip来安装你喜欢的库:

代码语言:javascript复制
pip install pymemcache
代码语言:javascript复制
pip install python-memcached

五、总结

你已经学会了如何在你的 Ubuntu 服务器上安装 Memcached。想要了解更多关于这个主题的信息,翻阅 Memcached Wiki。

0 人点赞