-
-
Notifications
You must be signed in to change notification settings - Fork 74
Description
Affected Puppet, Ruby, OS and module versions/distributions
- Puppet: 3.8.7
- Ruby: 2.3.1p112
- Distribution: Ubuntu 16.04
- Module version: 3.0.0
- Gluster version: 3.10.3
How to reproduce (e.g Puppet code you use)
class { ::gluster:
repo => false,
server => true,
client => false,
}Exported resources enabled.
What are you seeing
The first gluster node (test-gluster1.local in this example) comes up fine. The second node (test-gluster2.local) comes up and probes test-gluster1.local as expected. test-gluster1.local then completes the handshaking by probing test-gluster2.local.
However, test-gluster2.local seems to believe it needs to continue probing test-gluster1.local on each puppet run:
2017-06-27 15:22:19 +0100 /Stage[main]/Gluster/Gluster::Peer[test-gluster1.local]/Exec[gluster peer probe test-gluster1.local]/returns (notice): executed successfully
On test-gluster2.local, if you run
facter --puppet gluster_peer_list
It shows the ip address of test-gluster1.local rather than the hostname, this is what I believe is causing the peer probe to be called each time as this does not match the gluster::peer resource title in puppetdb
Looking at the code for the gluster_peer_list fact, it determines the peers from the value of Hostname: in the gluster peer status command. If you run this command though, the correct hostname appears under "Other names:"
gluster peer status Number of Peers: 1 Hostname: 192.168.1.2 Uuid: 36ab6e63-8d4a-4ac9-a7a8-15734b76213a State: Peer in Cluster (Connected) Other names: test-gluster1.local
What behaviour did you expect instead
Puppet run without any changes.