It works for a single rabbit (or a simple 3 node ceph/ceph deployment) because codepath is different as config variables are different for single and multiple rabbit units.
When deployment has only one rabbit unit, config variable is called "rabbit_host", singular, and glance_simplestreams_sync.py gets the variable as is, get("rabbit_host", None), which works.
When deployment has more than one rabbit unit, config variable is called "rabbit_hosts", plural, and after retrieving the value it tries to get the first element of the hosts list, which is a char given hosts is a string. A split(",") is missing there.
It works for a single rabbit (or a simple 3 node ceph/ceph deployment) because codepath is different as config variables are different for single and multiple rabbit units.
When deployment has only one rabbit unit, config variable is called "rabbit_host", singular, and glance_ simplestreams_ sync.py gets the variable as is, get("rabbit_host", None), which works.
When deployment has more than one rabbit unit, config variable is called "rabbit_hosts", plural, and after retrieving the value it tries to get the first element of the hosts list, which is a char given hosts is a string. A split(",") is missing there.