Project

General

Profile

Bug #46698

RadosGW - Swift + loadbalancer

Added by Sylvain St-Germain 16 days ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
% Done:

0%

Source:
Community (user)
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
ceph-ansible
Pull request ID:
Crash signature:

Description

I try to configure a simple rados gateway with three nodes and I add a virtual IP address for the load balancer. I make calls to the gateway using S3 and SWIFT.

In the case of S3 everything works, I can make requests directly on the node where there is a gateway or use the virtual address and it responds well.

In the case of SWIFT, I can query the nodes and it's fine, but when I use the virtual IP address it doesn't respond. The call sequence is the same for the nodes and the virtual IP address.

Version Info
ceph version : 15.2.4 (7447c15c6ff58d7fce91843b705a268a1917325c) octopus (stable)
OS : CentOS 8

Host file (ceph-ansible)
...
[rgws]
node-01
node-02
node-03

[rgwloadbalancers]
node-01
node-02
node-03
...

rgwloadbalancers.yml (ceph-ansible) ###########
  1. GENERAL # ###########
    haproxy_frontend_port: 80
    haproxy_frontend_ssl_port: 443
    haproxy_frontend_ssl_certificate:
    haproxy_ssl_dh_param: 4096
    haproxy_ssl_ciphers:
    - EECDH+AESGCM
    - EDH+AESGCM
    haproxy_ssl_options:
    - no-sslv3
    - no-tlsv10
    - no-tlsv11
    - no-tls-tickets #
    virtual_ips:
    - XXX.XXX.XXX.189 #
    virtual_ip_netmask: 24
    virtual_ip_interface: eno5

/etc/ceph/ceph.conf (node1 example)
[client.node1.rgw0]
host = node1
keyring = /var/lib/ceph/radosgw/ceph-rgw. node1.rgw0/keyring
log file = /var/log/ceph/ceph-rgw-node1.rgw0.log
rgw frontends = beast endpoint=xxx.xxx.xxx.190:8080 rgw thread pool size = 512

[client.rgw.node2.rgw0]
host = node2
keyring = /var/lib/ceph/radosgw/ceph-rgw.node2.rgw0/keyring
log file = /var/log/ceph/ceph-rgw- node2.rgw0.log
rgw frontends = beast endpoint=xxx.xxx.xxx.191:8080 rgw thread pool size = 512

[client.rgw.node3.rgw0]
host = node3
keyring = /var/lib/ceph/radosgw/ceph-rgw.node3.rgw0/keyring
log file = /var/log/ceph/ceph-rgw-node3.rgw0.log
rgw frontends = beast endpoint=xxx.xxx.xxx.192:8080 rgw thread pool size = 512

Also available in: Atom PDF