-
Notifications
You must be signed in to change notification settings - Fork 146
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
Verify Usage of Opensearch Core System and Hidden Indices #1203
Comments
Have same confusion like opensearch-project/OpenSearch#9239 (comment)
ml-commons is using security protected indices, not system you defined as
Should we close this issue for now? |
@ylwu-amzn I think, we need to figure out what is the purpose of index here. If the index holds some important info related to system/plugin and if we don't want a regular user to play around with index then it makes sense to define the index as system index. I want to make sure we are not intermixing both system index and security provided protected indices, both are different concepts and are completely decoupled. It's upto plugin owners to decide which indices should be |
Some confusion here @Rishikesh1159. Security Plugin introduced the concept of system indices with commit[4], this is a new feature while deprecating protected indices[5]. That said coming back to the original issue, ML-Commons has 2 use cases:
I hope this helps. This is how most plugins are configured to use today. Closing this issue, let me know if you need anything else. [1] https://github.com/opensearch-project/OpenSearch/blob/main/server/src/main/java/org/opensearch/plugins/SystemIndexPlugin.java |
Hi @saratvemulapalli , as part of this activity we want to move the indices created by the plugins to have a standardization. If your team feels that they should not onboard to system indices, they can create the indices with hidden property true(more details in the meta issue). Though I would strongly recommend that verify if you need special handling for the index created by your plugin by core and onboard to system indices.
I think we are confusing the system indices with how a user can access the indices or not in non fgac or fgac setting. You can take the following issues/PR/code on how other plugins are handling it: |
Regarding this comment, I feel like we should re-visit our system indices implementation especially for encryption key. Currently we need to depend on security plugin, which is a bottleneck for us. |
I think we should follow same logic as AD opensearch-project/anomaly-detection#975 (comment)
It's same for ml-commons, we don't want to impact the overall system performance |
Sorry about the initial confusion, the system indices of core has no correlation with accessibility and have updated the comment. Thanks! |
What all operations we do on the system indices of ml-commons? Are we doing heavy ingestion/search on these indices? |
We save model/task related data into system indices when user create/update. User can get/search these data. No heavy ingestion/search on these indices. |
@Arpit-Bandejiya |
I think there is some confusion here:
As far as I understood, we can move the ml-commons indices to system indices of core as well(Do not change anything in system indices list of security plugin). This will be helpfull for cases when the backpressure is applied and the ml-common plugin is being ingest/searched. We won't be rejecting those requests and the plugin functionality won't be impacted. |
Description/Concept of System Indices and Hidden Indices on Opensearch core:
System Index - An index must extend system index plugin for a index to be called as system index.
Example: Security Plugin correctly extends and uses system Indices, more info here
Hidden index - An index must have hidden SETTING_INDEX_HIDDEN = "index.hidden" set on the index setting to call it as hidden. It doesn't matter if it starts with "." or not.
Example: Asynchronous-Search plugin correctly sets the index setting value here
Misconception:
Many plugins still misunderstand the actual definition of system and hidden indices. Usual misconception is that any index starting with
.
like.indexName
is a system or hidden index, but this is incorrect. Any user can create an index with.indexName
which is neither a system or hidden index. So users can mistakenly still create index starting with "." there is nothing stopping them from doing it.To avoid this misconception all plugins should adopt/on-board with concept of system and hidden indices defined in opensearch core.
Goal:
The main ask of this issue is to make sure all plugins having/using system and hidden indices must on-board/adopt with concept defined in opensearch core.
Any plugin already on-board with opensearch core defined concept of system and hidden indices can ignore this issue and close the issue as completed on the plugin repo.
Additional info:
The following info provided below is not necessary for system/hidden indices, but might be useful info for plugins using system indices :
If your system indices need additonal security features/benefits provided by security plugin, follow the steps provided here. But to make sure these are additonal features provided by security plugin and it is completely decoupled from concept of system indices. It is upto the plugin owners to decide if they need these additional security benefits.
Open questions
In case of any questions or issues, please post it in core issue
The text was updated successfully, but these errors were encountered: