pikesaku’s blog

個人的なプログラム勉強メモです。記載内容について一切の責任は持ちません。

OpenStack調査メモ

参考URL

Memcached

そもそもMemcachedとは?
第1回 memcachedの基本:memcachedを知り尽くす|gihyo.jp … 技術評論社

データをキャッシュする。メモリを利用。
Webアプリなどで一時的なデータを格納される。停止するとデータは消える。

OpenStackの各コンポーネントも利用している。
通常コントローラでmemcachedサーバが動く

openstackではoslo.cache が管理。
複数の Memcached サーバーの使用時に全プロジェクト間で一貫性を保証。以下は 3 ノードの設定例。

Memcached_servers = controller1:11211,controller2:11211,controller3:11211

デフォルトで controller1 がキャッシュサービスを処理。
そのホストが停止している場合、 controller2 または controller3 がサービスを実施

https://docs.openstack.org/ja/ha-guide/environment-memcached.html

DB

冗長化する方法
Galera Cluster を使用
Galera Cluster は、MySQLInnoDB ストレージエンジンをベース
同期型のマルチマスターデータベースクラスタ
最低3ホスト必要

OpenStack Docs: データベース (Galera クラスター) の高可用性
https://docs.openstack.org/ja/ha-guide/shared-database-manage.html

以下3パターンのデプロイ方法があり。

①OpenStack各サービスに利用するDBを複数設定?
②HAProxy使いActive/Active
③HAProxy使いActive/Passive
 デッドロック問題に対応
 http://lists.openstack.org/pipermail/openstack-dev/2014-May/035264.html
 http://www.joinfu.com/2015/01/understanding-reservations-concurrency-locking-in-nova/