Read: ''rsync' not found in PATH', issue with rsync

Hi dear experts,
I have installed latest PXC from repo on CentOS 7 as well as rsync. But when i started second node to connect to primary it gave an error, indicating that there is no rsync installed.

In fact rsync is installed as dependency package from Percona repo.


[root@centos7-node2 ~]# rsync --version
rsync version 3.0.9 protocol version 30
Copyright (C) 1996-2011 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
append, ACLs, xattrs, iconv, symtimes

rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you
are welcome to redistribute it under certain conditions. See the GNU
General Public Licence for details.

[root@centos7-node2 ~]# which rsync
/usr/bin/rsync

my.cnf settings:


wsrep_provider=/usr/lib64/galera3/libgalera_smm.so
wsrep_cluster_address="gcomm://192.168.1.99,192.168.1.88,192.168.1.77"
wsrep_cluster_name='TestingCluster'
wsrep_node_address='192.168.1.88'
wsrep_node_name='node1'
wsrep_sst_method=rsync
wsrep_sst_auth=sstuser:12345
bind-address=0.0.0.0

Portion from error log:


2015-06-10 18:23:12 8378 [Note] WSREP: New cluster view: global state: 609ea286-0f5b-11e5-97a6-4342c2282781:6, view# 8: Primary, number of nodes: 2, my index: 1,
protocol version 3
2015-06-10 18:23:12 8378 [Warning] WSREP: Gap in state sequence. Need state transfer.
which: no rsync in (/usr/sbin:/sbin:/usr//bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)
2015-06-10 18:23:13 8378 [ERROR] WSREP: Failed to read 'ready <addr>' from: wsrep_sst_rsync --role 'joiner' --address '192.168.1.88' --auth 'sstuser:12345' --dat
adir '/var/lib/mysql/' --defaults-file '/etc/my.cnf' --defaults-group-suffix '' --parent '8378' ''
Read: ''rsync' not found in PATH'
2015-06-10 18:23:13 8378 [ERROR] WSREP: Process completed with error: wsrep_sst_rsync --role 'joiner' --address '192.168.1.88' --auth 'sstuser:12345' --datadir '/var/lib/mysql/' --defaults-file '/etc/my.cnf' --defaults-group-suffix '' --parent '8378' '' : 2 (No such file or directory)
2015-06-10 18:23:13 8378 [ERROR] WSREP: Failed to prepare for 'rsync' SST. Unrecoverable.
2015-06-10 18:23:13 8378 [ERROR] Aborting

Have you checked if any local machine firewall is blocking the access? Perhaps IPTables or even SELinux…

Another check you can do is the --rsync-path

After setting SElinux from enforcing to permissive secondary nodes started successfully.
But rather than permanently disabling SElinux, i decided to activate policy for galera:


yum install policycoreutils-python
grep mysql /var/log/audit/audit.log | audit2allow -M galera
semodule -i galera.pp

setenforce 1

Sounds good that it has worked…