Openstack Swift HA with HAproxy
Introduction
We used five
machines for swift setup . In that, 3 machines will act as
swift-proxy servers and all 5 machines will act as swift-storage
nodes.
Swift
with HA proxy setup
We have installed HA
proxy service in all three proxy servers. The KeepAlived service will
monitor the HA proxy health and assign the floating virtual IP
address(192.168.1.xxx) to the high priority HA proxy server. (102 is
master, 101 is slave1, 100 is slave2)
The HA Proxy will
check all three proxy servers and send the request in round robin
method. If one proxy server fails, it will automatically sends the
request to the other two proxy servers only, until the failed proxy
server is back online.
Swift
Proxy Node setup
We have configured
three swift proxy nodes in the public network(192.168.1.xxx) and it
is connected to all the storage nodes through a private
network(172.0.0.xxx).
Rings
The ring builder has
created an account ring, container ring and object ring to identify
the details and the location of the object file in the physical
partition. It creates partition for each tenant and generates a
token. The partition will set any three storage nodes as
primary/replica (one primary and two replicas) and it will set two
storage nodes as handoff devices.
Keystone setup
Keystone provides
authentication for the swift setup. It is installed in one server
only. Proxy server will refer the tenant id provided by the keystone
to identify the request.
Ceilometer
setup
Ceilometer is
installed in one server. It connects the proxy servers through
ceilometer-api and collects the inbound and outbound data metrics. It
also collects the container and object information through the
reseller admin user role.
Swift Storage Node setup
We have configured 5
storage nodes. Three will be primary/replica devices and two will be
handoff devices. Based on the ring’s partition, the data will be
stored in the primary/replica devices. If any primary/replica is
failed, then the data will be stored in the handoff device and once
the primary/replica is online, the handoff device will move the data
to that and remove the data.
Comments