前回でCeph基盤ができたところで、まずはGlanceのイメージ保存先として利用します。
Cephを上手に運用出来れば、OSイメージとスナップショットの安全を確保できることになります。
リンク
ほぼこのページを参考にしています。パッケージのインストール
もし入っていなければ、この1つだけインストールしておきます。
1 |
apt-get install python-ceph |
Cephの設定
pool作成
Glance設定の rbd_store_pool の値と同じ名前のプールを作成します。
1 2 3 4 |
ceph osd pool create images 128 # 確認 rados lspools |
keyringの作成
Glance設定の rbd_store_user の値を使って client.xxxxxx という名前をCephに登録します。登録されたキーはローカルファイルに取り出しておきます。
1 2 3 4 5 6 7 8 9 10 11 |
# ユーザ登録 ceph auth get-or-create client.images \ mon 'allow r' \ osd 'allow class-read object_prefix rbd_children, allow rwx pool=images' # キーの取得 ceph auth get-or-create client.images | tee /etc/ceph/keyring.images chown glance:glance /etc/ceph/keyring.images # 確認 ceph auth list |
Ceph設定
imagesユーザが使う鍵ファイルの指定を追記します。/etc/ceph/ceph.conf
1 2 |
[client.images] keyring = /etc/ceph/keyring.images |
Glanceの設定
元々ローカルファイル保存でGlanceが動いていたとして、変更点のみ記載します。rbd_store_user はデフォルトでは glance になっていますが、コンポーネント名よりは利用用途の方がそれっぽいので images に変更しています。/etc/glance/glance-api.conf
1 2 3 4 5 6 7 |
[DEFAULT] default_store = rbd rbd_store_ceph_conf = /etc/ceph/ceph.conf rbd_store_user = images rbd_store_pool = images rbd_store_chunk_size = 8 |
もし、既に古い保存先にイメージを登録してある場合は消しておきます。
1 2 |
glance image-list glance image-delete <id> |
再起動してエラーが出ないことを確認します。
1 2 3 4 |
for init in /etc/init.d/glance-*; do $init restart; done # 確認 glance index |
イメージ登録
前に作成しておいたqcow2イメージを再登録してみます。
1 2 3 4 5 6 7 8 9 10 11 |
# コピー済みとし cd /data/vmimage ls -l debian-7.0.img # 登録 glance add name=Debian-7.0 is_public=true \ disk_format=qcow2 container_format=ovf < debian-7.0.img # 確認 glance index rbd --pool images ls -l |
もし失敗したら、python-ceph が入ってるか確認してください。
入れたら glance の restart が必要です。
入れたら glance の restart が必要です。
成功したら、RBDプールの1イメージとして保存されるので、
あとは実際にイメージを指定してVMを起動してみてください。
次回はCinderで利用してみたいと思います。