Hi
@Meher Pindiprolu 🙂
1. OPAL client will always try to automatically re-establish a websocket connection. No worries, it's automatic.
2. The OPAL client is configured with the OPAL server url (dns) - if you put your OPAL servers behind a static IP, fixed dns address or a load balancer you should be fine. (does not have to be the same OPAL server process, it can be another container).
3. On errors the client is configured to retry (you can control that retry behavior via config env vars). You can also
configure a callback from OPAL client, so it will report on failed updates.
4. OPAL server has an initial config that it pushes to the client when it first starts, or after a disconnection. See
OPAL_CONFIG_DATA_SOURCES. The entries in that config should represent the most up to date data you want to push to a fresh client. If you need to do custom queries, i suggest putting that behind an API OPAL can call to fetch the data.
5. Automatically done by OPAL, a restarted OPAL client will refetch the data according to the
OPAL_CONFIG_DATA_SOURCES
in the OPAL server.