Installation - polaris-gslb/polaris-gslb GitHub Wiki
Dependencies
- PowerDNS Authoritative Server + remote backend.
- memcache
- Python3.4.3+
- pyyaml
- python-memcached
- python-daemon-3K
CentOS 7 dependencies installation example
yum install -y epel-release
yum install -y python34 python34-pip python34-PyYAML pdns pdns-backend-remote memcached
pip3 install python3-memcached python-daemon-3K
Install Polaris GSLB
git clone https://github.com/polaris-gslb/polaris-gslb.git
cd polaris-gslb
python3 setup.py install
This should also install pyyaml, python-memcached and python-daemon-3K libraries via PIP.
The following files are created:
/opt/polaris/
├── bin
│ ├── check-pdns
│ ├── polaris-health
│ ├── polaris-health-control
│ ├── polaris-memcache-control
│ ├── polaris-pdns
│ └── polaris-pdns-control
├── etc
│ ├── pdns.conf.dist
│ ├── polaris-health.yaml.dist
│ ├── polaris-lb.yaml.dist
│ ├── polaris-pdns.yaml.dist
│ └── polaris-topology.yaml.dist
└── run
/etc/default/polaris
Ensure /etc/default/polaris has a correct PATH to py3 executable, e.g.:
export PATH=$PATH:/opt/python3/bin
export POLARIS_INSTALL_PREFIX=/opt/polaris
Install the Polaris-specific PDNS configuration file
cp /opt/polaris/etc/pdns.conf.dist /etc/pdns/pdns.conf
Copy /opt/polaris/etc/*.dist files into *.yaml or create new ones and configure:
- polaris-lb.yaml - LB configuration
- polaris-topology.yaml - topology configuration
- polaris-health.yaml - Polaris health general parameters
- polaris-pdns.yaml - Polaris PDNS general parameters
Start pdns
Use /opt/polaris/bin/polaris-health [status|start|start-debug|stop|restart]
to control the Polaris health application.
/opt/polaris/bin/polaris-memcache-control 127.0.0.1 [get-generic-state|get-ppdns-state|get-heartbeat|check-heartbeat]
can be used to display various memcache values set by Polaris.
get-ppdns-state
shows the state table used for query distributionget-generic-state
shows the full health table