Pcs is a Corosync and Pacemaker configuration tool. It permits users to easily view, modify and create Pacemaker based clusters. Pcs contains pcsd, a pcs daemon, which operates as a remote server for pcs and provides a web UI.
There are two pcs branches currently: master * This is where pcs-0.10 lives. * Clusters running Pacemaker 2.x on top of Corosync 3.x are supported. * The main development happens here. pcs-0.9 * Clusters running Pacemaker 1.x on top of Corosync 2.x or Corosync 1.x with CMAN are supported. * This branch is in maintenance mode - bugs are being fixed but only a subset of new features lands here.
These are the runtime dependencies of pcs and pcsd:
python 3.6+
python3-distro (for python 3.8+)
python3-lxml
python3-pycurl
python3-setuptools
python3-pyOpenSSL (python3-openssl)
python3-pyparsing
python3-tornado 6.x
python dataclasses (pip install dataclasses
; required only for python 3.6,
already included in 3.7+)
dacite
ruby 2.2.0+
killall (package psmisc)
openssl
corosync 3.x
* pacemaker 2.x
It is also recommended to have these: python3-clufter liberation fonts (package liberation-sans-fonts or fonts-liberation or fonts-liberation2) * overpass fonts (package overpass-fonts)
Apart from the dependencies listed above, these are also required for installation:
During the installation, all required rubygems are automatically downloaded and compiled.
To install pcs and pcsd run the following in terminal:
# tar -xzvf pcs-0.10.1.tar.gz # cd pcs-0.10.1 # make install # make install_pcsd
If you are using GNU/Linux with systemd, it is now time to:
# systemctl daemon-reload
Start pcsd and make it start on boot:
# systemctl start pcsd # systemctl enable pcsd
Currently this is built into Fedora, RHEL and its clones and Debian and its derivates. Fedora package git repositories Current Fedora .spec * Debian-HA project home page
Set the same password for the hacluster
user on all nodes.
shell
# passwd hacluster
To authenticate the nodes, run the following command on one of the nodes
(replacing node1, node2, node3 with a list of nodes in your future cluster).
Specify all your cluster nodes in the command. Make sure pcsd is running on
all nodes.
shell
# pcs host auth node1 node2 node3 -u hacluster
To create a cluster run the following command on one node (replacing
cluster_name with a name of your cluster and node1, node2, node3 with a list
of nodes in the cluster). --start
and --enable
will start your cluster
and configure the nodes to start the cluster on boot respectively.
shell
# pcs cluster setup cluster_name node1 node2 node3 --start --enable
After a few moments the cluster should startup and you can get the status of
the cluster.
shell
# pcs status
After this you can add stonith agents and resources:
shell
# pcs -h stonith create
and
shell
# pcs -h resource create
Apart from command line interface you can use web user interface to view and configure your cluster. To access the web UI open a browser to the following URL (replace nodename with an address of your node):
https://nodename:2224
Login as the hacluster
user.
ClusterLabs website is an excellent place to learn more about Pacemaker clusters. ClusterLabs quick start Clusters from Scratch * ClusterLabs documentation page
If you have any bug reports or feature requests please feel free to open a github issue on the pcs project.
Alternatively you can use ClusterLabs users mailinglist which is also a great place to ask Pacemaker clusters related questions.