summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Pokorný <jpokorny@redhat.com>2013-09-05 17:54:27 +0200
committerJan Pokorný <jpokorny@redhat.com>2013-09-05 17:54:27 +0200
commitc7d125b7892ac34c2d3c8f15403fd8183b11411d (patch)
treeffc284200ec546e9885bcb3008e79286c140db51
parent38d316ed053bc83dd641a750da20e5a697d4cd13 (diff)
downloadcluster-overview-c7d125b7892ac34c2d3c8f15403fd8183b11411d.tar.gz
cluster-overview-c7d125b7892ac34c2d3c8f15403fd8183b11411d.tar.xz
cluster-overview-c7d125b7892ac34c2d3c8f15403fd8183b11411d.zip
There is no physical storage-based fence device
...which made the schema confusing Also enhance the resource agents part, depicting clustered services as related to all rgmanager instances. Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
-rwxr-xr-xcluster-cman.py125
1 files changed, 83 insertions, 42 deletions
diff --git a/cluster-cman.py b/cluster-cman.py
index db52eb5..dcbc757 100755
--- a/cluster-cman.py
+++ b/cluster-cman.py
@@ -195,17 +195,20 @@ graph = lambda\
,label='fence agents'
,_nodes=\
[Executable('node_b-fence_virt'
- ,label='fence_{virt,xvm}'
+ ,label='virt,xvm'
)
- ,Executable('node_b-fence_agent'
- ,label='fence_*'
+ ,Executable('node_b-fence_others'
+ ,label='others'
+ )
+ ,Executable('node_b-fence_scsi-sanlock'
+ ,label='scsi\,sanlock'
)]
)
,SubgraphStandard('cluster.node_b-resource-agents'
#
# node b - resource agents
#
- ,label='resource agents'
+ ,label='resource agents (/usr/share/cluster/*)'
,_subgraphs=\
[SubgraphStandard('cluster.node_b-resources-aux'
,label='auxiliary'
@@ -253,6 +256,9 @@ graph = lambda\
,_nodes=\
[Executable('httpd'
,label='Apache\nHTTP server'
+ )
+ ,Executable('other-services'
+ ,label='…'
)]
)
,SubgraphStandard('cluster.node_b-initscripts'
@@ -261,8 +267,8 @@ graph = lambda\
#
,label='initscripts'
,_nodes=\
- [Executable('foo'
- ,label='foo'
+ [Executable('other-initscripts'
+ ,label='…'
)]
)
,SubgraphStandard('cluster.node_b-kernel'
@@ -324,7 +330,7 @@ graph = lambda\
)
,Delegate\
('script.sh'
- ,'foo'
+ ,'other-initscripts'
,lhead='cluster.node_b-initscripts'
)
,Delegate\
@@ -342,8 +348,8 @@ graph = lambda\
('fs.sh'
,'node_b-io'
,ltail='cluster.node_b-resources-aux'
- ,headport='n'
- ,constraint='false'
+ #,headport='n'
+ #,constraint='false'
)]
)
,SubgraphImportant('cluster.node_a'
@@ -382,6 +388,12 @@ graph = lambda\
,_nodes=\
[Program('apache-node_b'
,label='apache@B'
+ )
+ ,Program('mysql-node_c'
+ ,label='mysql@C'
+ )
+ ,Program('other-clustered-services'
+ ,label='…'
)]
)
,SubgraphStandard('cluster.networking'
@@ -440,16 +452,16 @@ graph = lambda\
,label='control card\n(drac,…)/power\ncontrol (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-based-fence'
+ ##
+ ## storage-based fencing
+ ##
+ #,label='storage-based'
+ #,_nodes=\
+ # [FenceDevice('storage-based-fence'
+ # ,label='blocking writes\n(scsi)/attesting\nliveness (sanlock)'
+ # )]
+ #)
,SubgraphStandard('cluster.switch-based-fence'
#
# switch-based fencing
@@ -466,17 +478,20 @@ graph = lambda\
[Exchange\
('node_a-modclusterd'
,'node_b-modclusterd'
- ,label='port 16851 (either direction)'
+ ,label='port 16851\n(either direction)'
+ ,weight='1'
)
,Exchange\
('node_a-modclusterd'
,'node_c-modclusterd'
- ,label='port 16851 (either direction)'
+ ,label='port 16851\n(either direction)'
+ ,weight='1'
)
,Exchange\
('node_b-modclusterd'
,'node_c-modclusterd'
- ,label='port 16851 (either direction)'
+ ,label='port 16851\n(either direction)'
+ ,weight='1'
)
,EdgeInvisible\
('node_a-modclusterd'
@@ -501,22 +516,29 @@ graph = lambda\
,label='serial port/\nVMChannel\n/TCP (virt),\nmcast (xvm)'
)
,Delegate\
- ('node_b-fence_agent'
+ ('node_b-fence_others'
,'direct-fence'
,label='telnet,\nssh,\nsoap,\n…'
,ltail='cluster.node_b-fence-agents'
,lhead='cluster.fence'
)
+ ,Delegate\
+ ('node_b-fence_scsi-sanlock'
+ ,'nas'
+ ,label='telnet,\nssh,\nsoap,\n…'
+ #,ltail='cluster.node_b-fence-agents'
+ #,lhead='cluster.fence'
+ )
# shared storage
]+\
[Databus\
- ('node_a-ricci'
- ,'nas'
+ ('node_a-kernel'
+ ,'switch-ethernet'
# this has to be enabled as using kernel instead of ricci
# destroys the intended depiction :-/
- ,ltail='cluster.node_a'
+ #,ltail='cluster.node_a'
,lhead='cluster.networking'
- #,headport='e'
+ ,tailport='nw'
#,constraint='false'
)
,Databus\
@@ -537,19 +559,21 @@ graph = lambda\
# cluster devices layer - cluster nodes layer (fence execution)
]+\
[FencedBy\
- ('node_a-ricci'
+ ('node_a-kernel'
,'direct-fence'
,ltail='cluster.node_a'
,lhead='cluster.direct-fence'
+ ,tailport='w'
)
,FencedBy\
- ('node_b-clumond.sock'
+ ('node_b-io'
,'libvirt'
,ltail='cluster.node_b'
,lhead='cluster.direct-fence'
+ ,constraint='false'
)
,FencedBy\
- ('node_c-ricci'
+ ('node_c-kernel'
,'libvirt'
,ltail='cluster.node_c'
,lhead='cluster.direct-fence'
@@ -568,12 +592,12 @@ graph = lambda\
#,ltail='cluster.switch'
#,lhead='cluster.switch-based-fence'
,constraint='false'
- )
- ,FencedBy\
- ('nas'
- ,'storage-based-fence'
- #,ltail='cluster.node_c'
- ,lhead='cluster.storage-based-fence'
+ #)
+ #,FencedBy\
+ #('nas'
+ #,'storage-based-fence'
+ ##,ltail='cluster.node_c'
+ #,lhead='cluster.storage-based-fence'
)]
)]
,_edges=\
@@ -612,12 +636,29 @@ graph = lambda\
,DelegateCIM\
('wbemcli'
,'node_b-cimserver'
- #)
- ## node b/rgmamanger - cluster services layer
- #]+\
- #[Delegate\
- #('node_b-rgmanager'
- #,'apache-node_b'
+ )
+ # node b/rgmamanger - cluster services layer
+ ]+\
+ [Delegate\
+ ('node_a-rgmanager'
+ ,'apache-node_b'
+ #,contraint='false'
+ ,lhead='cluster.services'
+ ,weight='2',
+ )
+ ,Delegate\
+ ('node_b-rgmanager'
+ ,'apache-node_b'
+ #,contraint='false'
+ ,lhead='cluster.services'
+ ,weight='1',
+ )
+ ,Delegate\
+ ('node_c-rgmanager'
+ ,'apache-node_b'
+ #,contraint='false'
+ ,lhead='cluster.services'
+ ,weight='1',
)]
)