Please check the type of change your PR introduces:
[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):
What is the current behavior?
Problem of unavailability some hosts at the time of cluster creation. Storage/Database object moved to "Ready" status only when all NodeSet provisioned and Ready. We should be able not to wait for all hosts to start and only check the creation and preparing of all necessary objects.
Issue Number: YDBOPS-9613
What is the new behavior?
Status.state DatabaseNodeSetPreparing and StorageNodeSetPreparing to determine handleResourceSync step first running
New conditions for NodeSet* objects:
NodeSetPreparedCondition to determine that all child resources created
NodeSetProvisionedCondition to determine that all pods are created and have status.phase=="Running"
NodeSetReadyCondition to determine that all conditions are True and last Reconcile successfully moved to Ready status
NodeSetPausedCondition to determine that all conditions are True and last Reconcile successfully moved to Paused status
Set "Unknown" status for condition and change value of .status.state on step first run
Set "False" status for condition if non-Kubernetes error inside current Reconcile run
Set "True" status for condition if non-True status was set previously
Other information
Move handler for .spec.operatorSync to handleResourcesSync step
I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en
Pull request type
Please check the type of change your PR introduces:
What is the current behavior?
Problem of unavailability some hosts at the time of cluster creation. Storage/Database object moved to "Ready" status only when all NodeSet provisioned and Ready. We should be able not to wait for all hosts to start and only check the creation and preparing of all necessary objects.
Issue Number: YDBOPS-9613
What is the new behavior?
DatabaseNodeSetPreparing
andStorageNodeSetPreparing
to determinehandleResourceSync
step first runningNodeSetPreparedCondition
to determine that all child resources createdNodeSetProvisionedCondition
to determine that all pods are created and havestatus.phase=="Running"
NodeSetReadyCondition
to determine that all conditions are True and last Reconcile successfully moved toReady
statusNodeSetPausedCondition
to determine that all conditions are True and last Reconcile successfully moved toPaused
status.status.state
on step first runOther information
.spec.operatorSync
tohandleResourcesSync
step