Pcsd: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Thomas (Diskussion | Beiträge) (→Links) |
|||
Zeile 22: | Zeile 22: | ||
</source> | </source> | ||
+ | ==Die Einrichtung abschließen und den Cluster starten== | ||
*root@adin:~# pcs cluster setup --name mycluster adin keks --force | *root@adin:~# pcs cluster setup --name mycluster adin keks --force | ||
− | |||
*root@adin:~# pcs cluster start --all | *root@adin:~# pcs cluster start --all | ||
Zeile 129: | Zeile 129: | ||
=Apache2 als Cluster-Service= | =Apache2 als Cluster-Service= | ||
+ | ==Apache2 installieren== | ||
*apt-get install apache2 | *apt-get install apache2 | ||
− | + | ==Testsite erstellen== | |
*vi /var/www/html/index.html | *vi /var/www/html/index.html | ||
<source lang=bash> | <source lang=bash> | ||
Zeile 137: | Zeile 138: | ||
</html> | </html> | ||
</source> | </source> | ||
− | + | ==status.conf anpassen== | |
*vi /etc/apache2/conf-available/status.conf | *vi /etc/apache2/conf-available/status.conf | ||
<source lang=bash> | <source lang=bash> | ||
Zeile 147: | Zeile 148: | ||
</Location> | </Location> | ||
</source> | </source> | ||
− | + | ==Die status.conf verlinken/aktivieren== | |
*cd /etc/apache2/conf-enabled/ | *cd /etc/apache2/conf-enabled/ | ||
*ln -s ../conf-available/status.conf . | *ln -s ../conf-available/status.conf . | ||
− | + | ==Die Resource erstellen== | |
*pcs resource create WebSite ocf:heartbeat:apache \ | *pcs resource create WebSite ocf:heartbeat:apache \ | ||
* >configfile=/etc/apache2/apache2.conf \ | * >configfile=/etc/apache2/apache2.conf \ | ||
Zeile 267: | Zeile 268: | ||
corosync: active/enabled | corosync: active/enabled | ||
pacemaker: active/enabled | pacemaker: active/enabled | ||
− | + | pcsd: active/enabled | |
</source> | </source> | ||
*crm_simulate -sL (zum Anzeigen der placement scores) | *crm_simulate -sL (zum Anzeigen der placement scores) | ||
Zeile 315: | Zeile 316: | ||
PCSD Status: | PCSD Status: | ||
− | + | francis: Online | |
claire: Online | claire: Online | ||
Version vom 27. Oktober 2016, 07:46 Uhr
Install
Configure
Aktiviren des systemd scripts auf beiden nodes=
root@adin:~# systemctl enable pcsd
root@adin:~# systemctl enable pcsd
passwort des clusters setzen auf beiden nodes
root@adin:~# passwd hacluster
root@keks:~# passwd hacluster
die nodes an dem ha cluster anmelden auf beiden nodes
root@adin:~# pcs cluster auth adin keks
Username: hacluster
Password:
keks: Authorized
adin: Authorized
Die Einrichtung abschließen und den Cluster starten
- root@adin:~# pcs cluster setup --name mycluster adin keks --force
- root@adin:~# pcs cluster start --all
Die Installation verifizieren
- root@adin:~# corosync-cfgtool -s
Printing ring status.
Local node ID 1
RING ID 0
id = 192.168.50.51
status = ring 0 active with no faults
- root@adin:~# corosync-cmapctl | grep members
runtime.totem.pg.mrp.srp.members.1.config_version (u64) = 0
runtime.totem.pg.mrp.srp.members.1.ip (str) = r(0) ip(192.168.50.51)
runtime.totem.pg.mrp.srp.members.1.join_count (u32) = 1
runtime.totem.pg.mrp.srp.members.1.status (str) = joined
runtime.totem.pg.mrp.srp.members.2.config_version (u64) = 0
runtime.totem.pg.mrp.srp.members.2.ip (str) = r(0) ip(192.168.50.52)
runtime.totem.pg.mrp.srp.members.2.join_count (u32) = 1
runtime.totem.pg.mrp.srp.members.2.status (str) = joined
STONEIT deaktivieren
- pcs property set stonith-enabled=false
- crm_verify -L
pcs hilfe anzeigen
- root@adin:~# pcs
Usage: pcs [-f file] [-h] [commands]...
Control and configure pacemaker and corosync.
Options:
-h, --help Display usage and exit
-f file Perform actions on file instead of active CIB
--debug Print all network traffic and external commands run
--version Print pcs version information
Commands:
cluster Configure cluster options and nodes
resource Manage cluster resources
stonith Configure fence devices
constraint Set resource constraints
property Set pacemaker properties
acl Set pacemaker access control lists
status View cluster status
config View and manage cluster configuration
pcsd Manage pcs daemon
node Manage cluster nodes
- root@adin:~# pcs status help
Usage: pcs status [commands]...
View current cluster and resource status
Commands:
[status] [--full | --hide-inactive]
View all information about the cluster and resources (--full provides
more details, --hide-inactive hides inactive resources)
resources
View current status of cluster resources
groups
View currently configured groups and their resources
cluster
View current cluster status
corosync
View current membership information as seen by corosync
nodes [corosync|both|config]
View current status of nodes from pacemaker. If 'corosync' is
specified, print nodes currently configured in corosync, if 'both'
is specified, print nodes from both corosync & pacemaker. If 'config'
is specified, print nodes from corosync & pacemaker configuration.
pcsd [<node>] ...
Show the current status of pcsd on the specified nodes.
When no nodes are specified, status of all nodes is displayed.
xml
View xml version of status (output from crm_mon -r -1 -X)
Eine Ressource (ClusterIP) hinzufügen
- root@francis:~# pcs resource create ClusterIP ocf:heartbeat:IPaddr2 \
- > ip=192.168.242.151 cidr_netmask=21 op monitor interval=30s
- root@francis:~# pcs resource show --full
root@francis:~# pcs resource show --full
Resource: ClusterIP (class=ocf provider=heartbeat type=IPaddr2)
Attributes: ip=192.168.242.151 cidr_netmask=21
Operations: start interval=0s timeout=20s (ClusterIP-start-interval-0s)
stop interval=0s timeout=20s (ClusterIP-stop-interval-0s)
monitor interval=30s (ClusterIP-monitor-interval-30s)
Apache2 als Cluster-Service
Apache2 installieren
- apt-get install apache2
Testsite erstellen
- vi /var/www/html/index.html
<html>
<body>My Test Site - $(hostname)</body>
</html>
status.conf anpassen
- vi /etc/apache2/conf-available/status.conf
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Location>
Die status.conf verlinken/aktivieren
- cd /etc/apache2/conf-enabled/
- ln -s ../conf-available/status.conf .
Die Resource erstellen
- pcs resource create WebSite ocf:heartbeat:apache \
- >configfile=/etc/apache2/apache2.conf \
- >statusurl="http://localhost/server-status" \
- >op monitor interval=1min
- pcs status
Cluster name: underwood
Last updated: Wed Oct 26 11:25:04 2016 Last change: Wed Oct 26 11:23:36 2016 by root via cibadmin on francis
Stack: corosync
Current DC: francis (version 1.1.14-70404b0) - partition with quorum
2 nodes and 2 resources configured
Online: [ claire francis ]
Full list of resources:
VirtualIP (ocf::heartbeat:IPaddr2): Started claire
WebSite (ocf::heartbeat:apache): Started francis
PCSD Status:
francis: Online
claire: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
Abhängigkeiten erstellen
- pcs constraint colocation add WebSite with VirtualIP INFINITY
- pcs constraint
Location Constraints:
Ordering Constraints:
Colocation Constraints:
WebSite with VirtualIP (score:INFINITY)
- pcs status
Cluster name: underwood
Last updated: Wed Oct 26 11:28:03 2016 Last change: Wed Oct 26 11:27:39 2016 by root via cibadmin on francis
Stack: corosync
Current DC: francis (version 1.1.14-70404b0) - partition with quorum
2 nodes and 2 resources configured
Online: [ claire francis ]
Full list of resources:
VirtualIP (ocf::heartbeat:IPaddr2): Started claire
WebSite (ocf::heartbeat:apache): Started claire
PCSD Status:
francis: Online
claire: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
Reihenfolge erstellen
- pcs constraint order VirtualIP then WebSite
Adding VirtualIP WebSite (kind: Mandatory) (Options: first-action=start then-action=start)
- pcs constraint
Location Constraints:
Ordering Constraints:
start VirtualIP then start WebSite (kind:Mandatory)
Colocation Constraints:
WebSite with VirtualIP (score:INFINITY)
Eine bestimmte Node bevorzugen
- pcs constraint location WebSite prefers francis=50
- pcs constraint location VirtualIP prefers francis=50
- pcs constraint
Location Constraints:
Resource: VirtualIP
Enabled on: francis (score:50)
Resource: WebSite
Enabled on: francis (score:50)
Ordering Constraints:
start VirtualIP then start WebSite (kind:Mandatory)
Colocation Constraints:
WebSite with VirtualIP (score:INFINITY)
- pcs status
Cluster name: underwood
Last updated: Wed Oct 26 11:37:21 2016 Last change: Wed Oct 26 11:35:11 2016 by root via cibadmin on francis
Stack: corosync
Current DC: francis (version 1.1.14-70404b0) - partition with quorum
2 nodes and 2 resources configured
201M 0 201M 0% /run/user/0
root@francis:~#
Online: [ claire francis ]
Full list of resources:
VirtualIP (ocf::heartbeat:IPaddr2): Started francis
WebSite (ocf::heartbeat:apache): Started francis
PCSD Status:
francis: Online
claire: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
- crm_simulate -sL (zum Anzeigen der placement scores)
Current cluster status:
Online: [ claire francis ]
VirtualIP (ocf::heartbeat:IPaddr2): Started francis
WebSite (ocf::heartbeat:apache): Started francis
Allocation scores:
native_color: VirtualIP allocation score on claire: 0
native_color: VirtualIP allocation score on francis: 100
native_color: WebSite allocation score on claire: -INFINITY
native_color: WebSite allocation score on francis: 50
Manuelles Verschieben einer Resource
- pcs constraint location WebSite prefers claire=INFINITY
- pcs constraint
Location Constraints:
Resource: VirtualIP
Enabled on: francis (score:50)
Resource: WebSite
Enabled on: francis (score:50)
Enabled on: claire (score:INFINITY)
Ordering Constraints:
start VirtualIP then start WebSite (kind:Mandatory)
Colocation Constraints:
WebSite with VirtualIP (score:INFINITY)
- pcs status
Cluster name: underwood
Last updated: Wed Oct 26 11:44:02 2016 Last change: Wed Oct 26 11:43:18 2016 by root via cibadmin on francis
Stack: corosync
Current DC: francis (version 1.1.14-70404b0) - partition with quorum
2 nodes and 2 resources configured
Online: [ claire francis ]
Full list of resources:
VirtualIP (ocf::heartbeat:IPaddr2): Started claire
WebSite (ocf::heartbeat:apache): Started claire
PCSD Status:
francis: Online
claire: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
DRBD erstellen
- apt-get install drbd8-utils
Die Partionen mit LVM erstellen
- pvcreate /dev/sdb
- vgcreate ubuntu-francis /dev/sdb
- lvcreate --name drbd-demo --size 1G ubuntu-francis
(Für andere Seite wiederholen)
DRBD konfigurieren
Die folgenden Anweißungen müssen auf beiden Nodes ausgeführt werden
- vi /etc/drbd.d/wwwdata.res
resource wwwdata {
protocol C;
meta-disk internal;
device /dev/drbd1;
syncer {
verify-alg sha1;
}
net {
allow-two-primaries;
}
on francis {
disk /dev/ubuntu-francis/drbd-demo;
address 192.168.50.51:7789;
}
on claire {
disk /dev/ubuntu-claire/drbd-demo;
address 192.168.50.52:7789;
}
}
- drbdadm create-md wwwdata
initializing activity log
NOT initializing bitmap
Writing meta data...
New drbd meta data block successfully created.
- modprobe drbd
- drbdadm up wwwdata
Die folgenden Befehle müssen nur auf der Node ausgeführt werden, die später die primäre Node sein soll
- drbdadm primary --force wwwdata
- mkfs.xfs /dev/drbd1
meta-data=/dev/drbd1 isize=512 agcount=4, agsize=131066 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=0
data = bsize=4096 blocks=524263, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =Internes Protokoll bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =keine extsz=4096 blocks=0, rtextents=0
- mount /dev/drbd1 /mnt
- vi /mnt/index.html
<html>
<body>My Test Site - DRBD</body>
</html>
- umount /dev/drbd1
Resource anlegen
- pcs cluster cib drbd_cfg
- pcs -f drbd_cfg resource create WebData ocf:linbit:drbd \
- >drbd_resource=wwwdata op monitor interval=60s
- pcs -f drbd_cfg resource master WebDataClone WebData \
- >master-max=1 master-node-max=1 clone-max=2 clone-node-max=1 \
- >notify=true
- pcs -f drbd_cfg resource show
VirtualIP (ocf::heartbeat:IPaddr2): Started francis
WebSite (ocf::heartbeat:apache): Started francis
Master/Slave Set: WebDataClone [WebData]
Stopped: [ claire francis ]
- pcs cluster cib-push drbd_cfg
CIB updated
- pcs status
Cluster name: underwood
Last updated: Wed Oct 26 16:07:39 2016 Last change: Wed Oct 26 16:07:29 2016 by root via cibadmin on francis
Stack: corosync
Current DC: claire (version 1.1.14-70404b0) - partition with quorum
2 nodes and 4 resources configured
Online: [ claire francis ]
Full list of resources:
VirtualIP (ocf::heartbeat:IPaddr2): Started francis
WebSite (ocf::heartbeat:apache): Started francis
Master/Slave Set: WebDataClone [WebData]
Masters: [ francis ]
Slaves: [ claire ]
PCSD Status:
francis: Online
claire: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
- pcs cluster cib fs_cfg
- pcs -f fs_cfg resource create WebFS Filesystem \
- > device="/dev/drbd1" directory="/var/www/html" fstype="xfs"
- pcs -f fs_cfg constraint colocation add WebFS with WebDataClone INFINITY with-rsc-role=Master
- pcs -f fs_cfg constraint order promote WebDataClone then start WebFS
Adding WebDataClone WebFS (kind: Mandatory) (Options: first-action=promote then-action=start)
- pcs -f fs_cfg constraint colocation add WebSite with WebFS INFINITY
- pcs -f fs_cfg constraint order WebFS then WebSite
Adding WebFS WebSite (kind: Mandatory) (Options: first-action=start then-action=start)
- pcs -f fs_cfg constraint
Location Constraints:
Resource: VirtualIP
Enabled on: francis (score:50)
Resource: WebSite
Enabled on: francis (score:50)
Enabled on: claire (score:0)
Ordering Constraints:
start VirtualIP then start WebSite (kind:Mandatory)
promote WebDataClone then start WebFS (kind:Mandatory)
start WebFS then start WebSite (kind:Mandatory)
Colocation Constraints:
WebSite with VirtualIP (score:INFINITY)
WebFS with WebDataClone (score:INFINITY) (with-rsc-role:Master)
WebSite with WebFS (score:INFINITY)
- pcs -f fs_cfg resource show
VirtualIP (ocf::heartbeat:IPaddr2): Started francis
WebSite (ocf::heartbeat:apache): Started francis
Master/Slave Set: WebDataClone [WebData]
Masters: [ francis ]
Slaves: [ claire ]
WebFS (ocf::heartbeat:Filesystem): Stopped
- pcs cluster cib-push fs_cfg
CIB updated
- pcs status
Cluster name: underwood
Last updated: Wed Oct 26 16:18:08 2016 Last change: Wed Oct 26 16:18:02 2016 by root via cibadmin on francis
Stack: corosync
Current DC: claire (version 1.1.14-70404b0) - partition with quorum
2 nodes and 5 resources configured
Online: [ claire francis ]
Full list of resources:
VirtualIP (ocf::heartbeat:IPaddr2): Started francis
WebSite (ocf::heartbeat:apache): Started francis
Master/Slave Set: WebDataClone [WebData]
Masters: [ francis ]
Slaves: [ claire ]
WebFS (ocf::heartbeat:Filesystem): Started francis
PCSD Status:
francis: Online
claire: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
Den Cluster testen
- pcs status
Cluster name: underwood
Last updated: Wed Oct 26 16:27:41 2016 Last change: Wed Oct 26 16:18:02 2016 by root via cibadmin on francis
Stack: corosync
Current DC: claire (version 1.1.14-70404b0) - partition with quorum
2 nodes and 5 resources configured
Online: [ claire francis ]
Full list of resources:
VirtualIP (ocf::heartbeat:IPaddr2): Started francis
WebSite (ocf::heartbeat:apache): Started francis
Master/Slave Set: WebDataClone [WebData]
Masters: [ francis ]
Slaves: [ claire ]
WebFS (ocf::heartbeat:Filesystem): Started francis
PCSD Status:
francis: Online
claire: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
- pcs cluster standby francis
- pcs status
Cluster name: underwood
Last updated: Wed Oct 26 16:27:58 2016 Last change: Wed Oct 26 16:27:54 2016 by root via crm_attribute on francis
Stack: corosync
Current DC: claire (version 1.1.14-70404b0) - partition with quorum
2 nodes and 5 resources configured
Node francis: standby
Online: [ claire ]
Full list of resources:
VirtualIP (ocf::heartbeat:IPaddr2): Started claire
WebSite (ocf::heartbeat:apache): Started claire
Master/Slave Set: WebDataClone [WebData]
Masters: [ claire ]
Stopped: [ francis ]
WebFS (ocf::heartbeat:Filesystem): Started claire
PCSD Status:
francis: Online
claire: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
- pcs cluster unstandby francis
- pcs status
Cluster name: underwood
Last updated: Wed Oct 26 16:28:13 2016 Last change: Wed Oct 26 16:28:11 2016 by root via crm_attribute on francis
Stack: corosync
Current DC: claire (version 1.1.14-70404b0) - partition with quorum
2 nodes and 5 resources configured
Online: [ claire francis ]
Full list of resources:
VirtualIP (ocf::heartbeat:IPaddr2): Started francis
WebSite (ocf::heartbeat:apache): Started francis
Master/Slave Set: WebDataClone [WebData]
Masters: [ francis ]
Slaves: [ claire ]
WebFS (ocf::heartbeat:Filesystem): Started francis
PCSD Status:
francis: Online
claire: Online
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled
Libvirt
Webinterface
- https://<nodename>:2224