linux系统管理自动化工具集
pybofh的Python项目详细描述
pybofh
==
Linux系统管理自动化工具集。
pybofh import xen
操作
----
“/media/tmp2”]
mountpool=blockdevice.mountpool(tmp_mnts)
使用mountpool.mount('/dev/sda1')作为sda1_mountpoint:
/dev/sda1现在已安装
使用mountpoint.mount('/dev/sda2')作为sda2 mountpoint:
/dev/sda2现在已安装
使用mountpoint.mount('/dev/sda3')作为sda3_挂载点:
失败,不再有可用的挂载点
pass
/dev/sda1和/dev/sda2现在已卸载
例如,从lvm上的磁盘创建新的vm:
lvm.createlv(“my_vg”,“my_vm”,“10gb”)
blockdevice.create_filesystem('/dev/my_vg/my_vm')
…
您可能会在lv上留下一个不一致的文件系统。更糟糕的是,一旦修复了问题并再次尝试运行此操作,“create lv”将失败,因为lv已经存在,因此您必须手动创建vm或修复脚本。
在这种情况下,上下文管理器没有任何意义:如果所有操作都成功,则不希望删除lv。必须跟踪所执行的操作,如果出现故障,则回滚。当然,您可以手动完成,但这并不好玩:
atomic()作为atomic:
atomic.lvm.create lv(“my_vg”,“my_vm”,“10gb”)
blockdevice.create_filesystem('/dev/my_vg/my_vm')
现在,只有当上下文管理器中的**操作失败时,才会删除lv。如果您有多个“atomic”调用,它将跟踪它们,并按执行它们的相反顺序回滚它们。
虽然“atomic”预先打包了一些知识,“atomicoperationsequence”是操作不可知的-它通过定义回滚函数来工作:
def f1():
print“f1 executed”
def reverse(f,args,Kwargs):
如果f==f1:
打印“f1 reversed”
那是什么名字?
----------
这是对[来自地狱的混蛋运营商](http://en.wikipedia.org/wiki/bastart_operator_from_hell)故事的致敬
------------
https://github.com/goncalopp/pybofh
==
Linux系统管理自动化工具集。
pybofh import xen
操作
----
“/media/tmp2”]
mountpool=blockdevice.mountpool(tmp_mnts)
使用mountpool.mount('/dev/sda1')作为sda1_mountpoint:
/dev/sda1现在已安装
使用mountpoint.mount('/dev/sda2')作为sda2 mountpoint:
/dev/sda2现在已安装
使用mountpoint.mount('/dev/sda3')作为sda3_挂载点:
失败,不再有可用的挂载点
pass
/dev/sda1和/dev/sda2现在已卸载
例如,从lvm上的磁盘创建新的vm:
lvm.createlv(“my_vg”,“my_vm”,“10gb”)
blockdevice.create_filesystem('/dev/my_vg/my_vm')
…
您可能会在lv上留下一个不一致的文件系统。更糟糕的是,一旦修复了问题并再次尝试运行此操作,“create lv”将失败,因为lv已经存在,因此您必须手动创建vm或修复脚本。
在这种情况下,上下文管理器没有任何意义:如果所有操作都成功,则不希望删除lv。必须跟踪所执行的操作,如果出现故障,则回滚。当然,您可以手动完成,但这并不好玩:
atomic()作为atomic:
atomic.lvm.create lv(“my_vg”,“my_vm”,“10gb”)
blockdevice.create_filesystem('/dev/my_vg/my_vm')
现在,只有当上下文管理器中的**操作失败时,才会删除lv。如果您有多个“atomic”调用,它将跟踪它们,并按执行它们的相反顺序回滚它们。
虽然“atomic”预先打包了一些知识,“atomicoperationsequence”是操作不可知的-它通过定义回滚函数来工作:
def f1():
print“f1 executed”
def reverse(f,args,Kwargs):
如果f==f1:
打印“f1 reversed”
那是什么名字?
----------
这是对[来自地狱的混蛋运营商](http://en.wikipedia.org/wiki/bastart_operator_from_hell)故事的致敬
------------
https://github.com/goncalopp/pybofh