--- /dev/null
+tasks:
+- cephadm.apply:
+ specs:
+ - service_type: rgw
+ service_id: foo
+ placement:
+ count: 4
+ host_pattern: "*"
+ spec:
+ rgw_frontend_port: 8000
+ - service_type: ingress
+ service_id: rgw.foo
+ placement:
+ count: 2
+ spec:
+ backend_service: rgw.foo
+ frontend_port: 9000
+ monitor_port: 9001
+ virtual_ip: {{VIP}}
+- cephadm.shell:
+ host.a:
+ - |
+ while ! ceph orch ls | grep ^rgw.foo | grep 4/4; do sleep 1; done
+ while ! ceph orch ls | grep ^ingress.rgw.foo | grep 2/2; do sleep 1; done
+ curl http://{{VIP}}/
+
+ # stop each rgw in turn
+ for rgw in `ceph orch ps | grep ^rgw.foo.`; do
+ ceph orch daemon stop $rgw
+ while ! ceph orch ls | grep ^rgw.foo | grep 3/4; do sleep 1; done
+ curl http://{{VIP}}/
+ ceph orch daemon start $rgw
+ while ! ceph orch ls | grep ^rgw.foo | grep 4/4; do sleep 1; done
+ done
+- sleep:
+ interval: 60