diff options
author | Jan Pokorný <jpokorny@redhat.com> | 2013-09-03 23:55:03 +0200 |
---|---|---|
committer | Jan Pokorný <jpokorny@redhat.com> | 2013-09-03 23:55:03 +0200 |
commit | 6fe3fd7c17bf0f103aa223787889115e05dc608e (patch) | |
tree | 144138e9783765f76b122bba9135a4d0ce472e3a /cluster-cman.py | |
parent | 084147648db3d6465cb37f320de7be417e721294 (diff) | |
download | cluster-overview-6fe3fd7c17bf0f103aa223787889115e05dc608e.tar.gz cluster-overview-6fe3fd7c17bf0f103aa223787889115e05dc608e.tar.xz cluster-overview-6fe3fd7c17bf0f103aa223787889115e05dc608e.zip |
Break down fence devices
Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
Diffstat (limited to 'cluster-cman.py')
-rwxr-xr-x | cluster-cman.py | 69 |
1 files changed, 44 insertions, 25 deletions
diff --git a/cluster-cman.py b/cluster-cman.py index fe2b423..8c14ae7 100755 --- a/cluster-cman.py +++ b/cluster-cman.py @@ -302,14 +302,17 @@ graph = lambda\ # cluster services layer # ) - ,SubgraphStandard('cluster.shared-storage' + ,SubgraphStandard('cluster.shared-devices' # - # shared storage + # shared devices (storage and switch/es) # - ,label='shared storage' + ,label='shared devices' ,_nodes=\ [StorageDevice('nas' ,label='NAS' + ) + ,StorageDevice('switch' + ,label='switch' )] ) ,SubgraphStandard('cluster.fence' @@ -318,17 +321,17 @@ graph = lambda\ # ,label='fence devices' ,_subgraphs=\ - [SubgraphStandard('cluster.power-fence' + [SubgraphStandard('cluster.direct-fence' # - # power fencing + # direct fencing # - ,label='power fence' + ,label='direct fence' ,_subgraphs=\ [SubgraphStandard('cluster.hypervisor' # # hypervisor (in a role of power fence executor) # - ,label='hypervisor\n(when cluster is virtualized)' + ,label='hypervisor as controller\n(when cluster virtualized)' ,rank='same' ,_nodes=\ [Daemon('fence_virtd' @@ -343,18 +346,28 @@ graph = lambda\ )] )] ,_nodes=\ - [FenceDevice('power-fence' - ,label='Power fence\ndevice(s)\n(DRAC/drac,\nHP iLO/ilo, …)' + [FenceDevice('direct-fence' + ,label='control card\n(drac,ilo,…)\n/power control\n(apc,…)' + )] + ) + ,SubgraphStandard('cluster.storage-based-fence' + # + # storage-based fencing + # + ,label='storage-based' + ,_nodes=\ + [FenceDevice('storage-based-fence' + ,label='blocking writes\n(scsi)/attesting\nliveness (sanlock)' )] ) - ,SubgraphStandard('cluster.storage-fence' + ,SubgraphStandard('cluster.link-based-fence' # - # storage fence + # switch-based fencing # - ,label='storage fence' + ,label='switch-based' ,_nodes=\ - [FenceDevice('storage-fence' - ,label='Direct use of\nshared storage\n(scsi, sanlock)' + [FenceDevice('switch-based-fence' + ,label='Ethernet (ifmib)/\nFibre Channel\n(brocade,…)/…' )] )] # @@ -395,11 +408,11 @@ graph = lambda\ [Delegate\ ('node_b-fence_virt' ,'fence_virtd' - ,label='multicast/serial port' + ,label='serial port/\nVMChannel\n/TCP,\nmulticast' ) ,Delegate\ ('node_b-fence_agent' - ,'power-fence' + ,'direct-fence' ,ltail='cluster.node_b-fence-agents' ,lhead='cluster.fence' ) @@ -411,48 +424,54 @@ graph = lambda\ # this has to be enabled as using kernel instead of ricci # destroys the intended depiction :-/ ,ltail='cluster.node_a' - ,lhead='cluster.shared-storage' + ,lhead='cluster.shared-devices' ,headport='e' ) ,Databus\ ('node_b-io' ,'nas' #,ltail='cluster.node_b' - ,lhead='cluster.shared-storage' + ,lhead='cluster.shared-devices' ,headport='n' ) ,Databus\ ('node_c-kernel' ,'nas' #,ltail='cluster.node_c' - ,lhead='cluster.shared-storage' + ,lhead='cluster.shared-devices' # cluster devices layer - cluster nodes layer (fence execution) )]+\ [FencedBy\ ('node_a-ricci' - ,'power-fence' + ,'direct-fence' ,ltail='cluster.node_a' - ,lhead='cluster.power-fence' + ,lhead='cluster.direct-fence' ) ,FencedBy\ ('node_b-clumond.sock' ,'libvirt' ,ltail='cluster.node_b' - ,lhead='cluster.power-fence' + ,lhead='cluster.direct-fence' ) ,FencedBy\ ('node_c-ricci' ,'libvirt' ,ltail='cluster.node_c' - ,lhead='cluster.power-fence' + ,lhead='cluster.direct-fence' ,minlen='2' ,weight='3' ) ,FencedBy\ + ('switch' + ,'switch-based-fence' + #,ltail='cluster.node_c' + ,lhead='cluster.storage-based-fence' + ) + ,FencedBy\ ('nas' - ,'storage-fence' + ,'storage-based-fence' #,ltail='cluster.node_c' - ,lhead='cluster.storage-fence' + ,lhead='cluster.storage-based-fence' )] )] ,_edges=\ |