OpenStack 環境全体の認証機能を提供する 認証サービス( Keystone )では、認証トークンをキャッシュするために Memcached を使用します。このセクションでは、Memcached の導入について紹介します。

openstack-rocky の yum リポジトリ(CentOS-Openstack-rocky.repo)を使って、 Memcached のパッケージをインストールします。インストールは、コントローラーノードで実施します。

[root@controller ~]# yum --enablerepo=centos-openstack-rocky -y install memcached python-memcached
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.nara.wide.ad.jp
 * extras: ftp.nara.wide.ad.jp
 * updates: ftp.nara.wide.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ memcached.x86_64 0:1.5.6-1.el7 を インストール
--> 依存性の処理をしています: libevent-2.0.so.5()(64bit) のパッケージ: memcached-1.5.6-1.el7.x86_64
---> パッケージ python-memcached.noarch 0:1.58-1.el7 を インストール
--> トランザクションの確認を実行しています。
---> パッケージ libevent.x86_64 0:2.0.21-4.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
 Package             アーキテクチャー
                               バージョン       リポジトリー               容量
================================================================================
インストール中:
 memcached           x86_64    1.5.6-1.el7      centos-openstack-rocky    124 k
 python-memcached    noarch    1.58-1.el7       centos-openstack-rocky     38 k
依存性関連でのインストールをします:
 libevent            x86_64    2.0.21-4.el7     base                      214 k

トランザクションの要約
================================================================================
インストール  2 パッケージ (+1 個の依存関係のパッケージ)

総ダウンロード容量: 376 k
インストール容量: 1.1 M
Downloading packages:
(1/3): libevent-2.0.21-4.el7.x86_64.rpm                    | 214 kB   00:00     
(2/3): python-memcached-1.58-1.el7.noarch.rpm              |  38 kB   00:01     
(3/3): memcached-1.5.6-1.el7.x86_64.rpm                    | 124 kB   00:02     
--------------------------------------------------------------------------------
合計                                               154 kB/s | 376 kB  00:02     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : libevent-2.0.21-4.el7.x86_64                    1/3 
  インストール中          : memcached-1.5.6-1.el7.x86_64                    2/3 
  インストール中          : python-memcached-1.58-1.el7.noarch              3/3 
  検証中                  : python-memcached-1.58-1.el7.noarch              1/3 
  検証中                  : libevent-2.0.21-4.el7.x86_64                    2/3 
  検証中                  : memcached-1.5.6-1.el7.x86_64                    3/3 

インストール:
  memcached.x86_64 0:1.5.6-1.el7      python-memcached.noarch 0:1.58-1.el7     

依存性関連をインストールしました:
  libevent.x86_64 0:2.0.21-4.el7                                                

完了しました!
[root@controller ~]#

Memcachedの設定ファイル( /etc/sysconfig/memcached )を、以下編集します。

[root@controller ~]# vi /etc/sysconfig/memcached 

OPTIONS="-l 127.0.0.1,::1"
↓
OPTIONS="-l 127.0.0.1,::1,controller"

Memcached で必要となる TCP 11211 通信を firewalld で許可します。

[root@controller ~]# firewall-cmd --add-port=11211/tcp --zone=public --permanent
success
[root@controller ~]# 

firewalld をリロードし、設定を反映します。

[root@controller ~]# firewall-cmd --reload
success
[root@controller ~]# 

Memcached の自動起動を有効化します。

■ 自動起動の有効化
[root@controller ~]# systemctl enable memcached.service
Created symlink from /etc/systemd/system/multi-user.target.wants/memcached.service to /usr/lib/systemd/system/memcached.service.
[root@controller ~]# 

■ 自動起動の状態確認
[root@controller ~]# systemctl is-enabled memcached.service
enabled
[root@controller ~]# 

Memcached を再起動します。

■ 再起動
[root@controller ~]# systemctl restart memcached.service
[root@controller ~]# 

■ 起動状態の確認
[root@controller ~]# systemctl status memcached.service
● memcached.service - memcached daemon
   Loaded: loaded (/usr/lib/systemd/system/memcached.service; enabled; vendor preset: disabled)
   Active: active (running) since 日 2018-10-21 02:55:42 JST; 5s ago
 Main PID: 10050 (memcached)
   CGroup: /system.slice/memcached.service
           └─10050 /usr/bin/memcached -p 11211 -u memcached -m 64 -c 1024 -l ...

10月 21 02:55:42 controller systemd[1]: Started memcached daemon.
10月 21 02:55:42 controller systemd[1]: Starting memcached daemon...
[root@controller ~]#