Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

server: store instance ID and network addresses of SQL pods #64475

Closed
knz opened this issue Apr 30, 2021 · 2 comments · Fixed by #66600
Closed

server: store instance ID and network addresses of SQL pods #64475

knz opened this issue Apr 30, 2021 · 2 comments · Fixed by #66600
Assignees
Labels
A-cc-enablement Pertains to current CC production issues or short-term projects A-cli-server CLI commands that pertain to CockroachDB server processes A-multitenancy Related to multi-tenancy A-server-networking Pertains to network addressing,routing,initialization C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) X-server-triaged-202105

Comments

@knz
Copy link
Contributor

knz commented Apr 30, 2021

Since we wish to create RPC fan-outs from one SQL pod process to another (to implement cross-pods HTTP APIs), we need to store and retrieve the network addresses of SQL pods within a tenant.

Today, the SQL pods for a given tenant do not know their respective identities (instance IDs, see #64474) nor their network addresses.

This should be solved by storing the instance ID and pod network addresses inside a per-tenant system table. Perhaps system.sqlliveness can be used for this purpose, or perhaps a new system table needs to be created.

Epic: CRDB-8505

@knz knz added C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) A-multitenancy Related to multi-tenancy A-cli-server CLI commands that pertain to CockroachDB server processes labels Apr 30, 2021
@knz
Copy link
Contributor Author

knz commented Apr 30, 2021

cc @dhartunian

@ajwerner
Copy link
Contributor

Relates to #62818.

dhartunian added a commit to dhartunian/cockroach that referenced this issue May 26, 2021
In order to implement fan out requests between
SQL pods, we need a place to store their HTTP
addresses so the pods can independently know how 
to talk to other tenants.

This commit adds a column `http_addr` to the
`system.sqlliveness` table and populates it with
the HTTP listening address of the tenant pod on
startup.

Resolves cockroachdb#64475

Release note: None
@dhartunian dhartunian assigned rimadeodhar and unassigned dhartunian Jun 8, 2021
@jlinder jlinder added the T-server-and-security DB Server & Security label Jun 16, 2021
@exalate-issue-sync exalate-issue-sync bot removed the T-server-and-security DB Server & Security label Jun 16, 2021
@knz knz added A-server-networking Pertains to network addressing,routing,initialization A-cc-enablement Pertains to current CC production issues or short-term projects labels Jul 29, 2021
@craig craig bot closed this as completed in 9758387 Aug 3, 2021
@exalate-issue-sync exalate-issue-sync bot changed the title server: store instance ID and network addresses of SQL pods server: store instance ID and network addresses of SQL pods Feb 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-cc-enablement Pertains to current CC production issues or short-term projects A-cli-server CLI commands that pertain to CockroachDB server processes A-multitenancy Related to multi-tenancy A-server-networking Pertains to network addressing,routing,initialization C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) X-server-triaged-202105
Projects
None yet
5 participants