Support work with etcd as a cluster

In case if one member of a cluster is not available it will retry with
another one and fetch the new cluster configuration. Default timeout for
all requests to etcd is 5 seconds.
Initial cluster configuration can be resolved through:
1) /v2/members call on one of the cluster members on a client port
2) when it is possible to resolve hostname into multiple ip's  it will
iterate through list and try to perform action from 1)
3) If there is discovery_srv defined in etcd section of config file it
will resolve peer addresses of all cluster members and will fetch
cluster configuration with using peer protocol by doing /members call on
a peer port
This commit is contained in:
Alexander Kukushkin
2015-06-09 09:51:53 +02:00
parent fad2fbeae0
commit c79fba7656
12 changed files with 299 additions and 59 deletions
+2 -1
View File
@@ -4,7 +4,8 @@ python:
- "3.3"
- "3.4"
install:
- pip install -r requirements.txt
- [[ $TRAVIS_PYTHON_VERSION == 2* ]] && pip install -r requirements-py2.txt --use-mirrors
- [[ $TRAVIS_PYTHON_VERSION == 3* ]] && pip install -r requirements-py3.txt --use-mirrors
- pip install coveralls
script:
- python setup.py test