-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sheepdog: Implement abstract methods of manage volume #77
base: manage_volume
Are you sure you want to change the base?
Conversation
We add the following SheepdogDriver method. - manage_existing - manage_existing_get_size
_stderr = e.kwargs['stderr'] | ||
with excutils.save_and_reraise_exception(): | ||
if _stderr.startswith(self.DOG_RESP_CONNECTION_ERROR): | ||
LOG.exception(_LE('Failed to connect sheep daemon. ' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
typo: Failed to connect to sheep daemon
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
修正しました。
unmanageメソッドの実装が漏れている。追加します。 unmanage時にはvolume-XXXのVDI名競合の可能性を排除するため、unmanage済みであることが分かるVDI名にrename(snapshot&clone)したいと思います。
どのフォーマットを選択するかは悩ましいところですが、もし元々の「volume-XXX」でgrepした際に対象となる様に3.の選択肢は除外。 |
finally: | ||
self.client.delete_snapshot(source_name, snapshot_name) | ||
|
||
self.client.delete(source_name) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
処理完了後に該当ボリュームを削除してますが、この操作実施前に作成した既存のSheepdog Volumeのsnapshotは管理者が手動で消すという整理にということですよね。
そういう整理にするという認識が合っていれば良いです。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
スナップショットについてはcloneを実行するブロックのfinally句にてdelete_snapshotしていますので、管理者が運用で対処する必要はないと考えています。
snapshotを作成した場合はrename処理の成否に関わらず必ず削除し、rename(snap+clone)が成功した場合には元のボリュームを削除、途中で失敗した場合には元のボリュームは残す整理としています。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
前の回答が質問の意図とずれていましたので再回答。
manage対象のVDIが元々持つスナップショットについては、manage_existing及びunmanageでは関与(操作)としません。
そちらのスナップショットが不要な場合には、管理者に手動で削除して頂くという整理となります。
We add the following SheepdogDriver method.