-
Notifications
You must be signed in to change notification settings - Fork 25
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
Remote node CRD #75
Comments
Should RemoteYsaurusSpec be a separate CRD, or just described in a config map? |
We discussed this matter with k8s-experienced colleagues, and it seems like having CRD for such case is a common practice. Configmap is unschematized object, and CRD is schematized, which is much less error-prone. In general, CRD does not necessarily require a designated controller, it may be a part of a more complex CRD like in our case. |
I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en First PR for #75 Currently we have test coverage for YTsaurus config generating code only for master and scheduler. Here I added tests for other components, so config generator can be easily refactored if needed. Changes are only in test code and existing tests behaviour is not changed. --- Pull Request resolved: #83
This change will be separated in a chain of PRs to ease codereviewing.
|
To be clear, |
We'd like to have an opportunity to describe a group of nodes (dat/exe/tab) as a separate CRD, providing the endpoints of a remote cluster. Such group of nodes (called remote nodes) will work the same as if they were described within the ytsaurus CRD, but they can belong to a different k8s cluster, which may be useful.
I'd suggest having a CRD RemoteNodeGroup, which looks exactly the same as dataNodes/execNodes/tabletNodes (and, ideally, reuses as much of existing code as possible).
The main difference is that there should be a field "remoteClusterSpec" which must be a reference to a resource (CRD) of type RemoteYtsaurusSpec.
RemoteYtsaurusSpec must describe necessary information for connecting a node to a remote cluster. remoteClusterSpec must be a structure, currently containing one field:
But in the future it will probably be extended by various other fields.
When ytsaurus/ytsaurus#248 completes:
When authentication in native protocol is employed:
The text was updated successfully, but these errors were encountered: