障害内容

  • cinder-volume 用のノードが複数あるOpenStack 環境で Cinder ボリュームを作成する際、ステータスの取得間隔を調整する方法を教えてほしい。
  • ボリュームを連続で作成した際、2つ目以降のボリューム作成時に、直前に作成したボリューム分の消費領域がステータスに反映されておらず、同じノードにスケジューリングされることがある。

システム

  • OS: Ubuntu 12.04.3
  • OpenStack: Grizzly

解析内容

  • 実機検証: 複数台構成の Cinder に対して連続でボリュームの作成を要求し、その挙動を調査。
  • Grizzly と Havana の Cinder ソースコードの差分を解析。

解析結果

1.ステータスは、ノードが定期的にスケジューラに送っており、その間隔は調整できるが、同期的にステータスを更新させる機能は見当たらない。

2.同期的なステータスの更新が実装されない理由を調査。 

  • Cinder 開発コミュニティにおいて、「連続作成で偏りが生じる可能性がある」という事象については不具合であるといったんは認識され、修正が行なわれたものの、別な不具合の修正によりデグレードしてしまっている状態であることが判明。