cockroachdb / cockroach

CockroachDB — the cloud native, distributed SQL database designed for high availability, effortless scale, and control over data placement.
https://www.cockroachlabs.com
Other
30.12k stars 3.81k forks source link

roachprod: support running multiple CRDB clusters on the same roachprod cluster #129318

Open renatolabs opened 2 months ago

renatolabs commented 2 months ago

roachprod development started a long time ago, and one of the assumptions in a lot of the lower level functions is that only one cockroachdb cluster is running on a roachprod cluster. That was a reasonable assumption to make at the time, as it was meant to test crdb's beahaviour and we didn't have to worry about multiple clusters.

The reality today is different: we have multiple features that involve two CRDB clusters communicating with one another. It's useful to be able to allow multiple CRDB clusters to run on the same roachprod cluster, as that would allow us to test these features with roachtest and experiment using the roachprod CLI.

As an example, one of the features that currently breaks when you try to use multiple cockroachdb clusters in the same roachprod cluster is certificate management, as it assumes n1 will be started at some point when starting cockroach.

We have existing PCR roachtests, but they work around these issues by starting the CRDB cluster that n1 is a part of first, and sending certificates inline in the pgurl.

Jira issue: CRDB-41494

blathers-crl[bot] commented 2 months ago

cc @cockroachdb/test-eng