Etcd: Update cluster membership when replacing a node
Etcd: Update cluster membership when replacing a node

Add the ability to replace an overcloud node that's running the etcd
service by updating the etcd cluster's membership to delete the old
node (the one being replaced) with the new replacement node.

etcd maintains its cluster membership using each node's name and it's
cluster peer address on the internal_api network. This data typically
changes when replacing an overcloud node. The cluster membership is
updated using a shell script that's triggered to run after etcd is
deployed on the new node.

A new EtcdInitialClusterState parameter is introduced. It defaults
to "new," and only needs to be set to "existing" when the cluster
membership changes.

Change-Id: I8daa5500e7ee722eef64808306dc2aa5ca027a15

openstack/tripleo-heat-templates,openstack/tripleo-heat-templates