-
Notifications
You must be signed in to change notification settings - Fork 17
feature iotdb operator #23
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
Conversation
phamour
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
another problem related to the design: validating webhooks are not used to prohibit the situation where datanode replicas > the number of worker nodes thus extra pods would just stuck in pending status with a scheduling failure event.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
most of the types defined here seem to exist in k8s go-client, for instance, the one for resource requirements may be replaced directly by ResourceRequirements in corev1. Others like the volume claim template also have official implementation. are there any reasons to redefine those types here ?
| storageClassName: "standard" | ||
| resources: | ||
| requests: | ||
| storage: 1Gi No newline at end of file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
newline at EOF?
| persistentVolumeReclaimPolicy: Delete | ||
| hostPath: | ||
| path: /data/k8s_iotdb/data/confignode1 | ||
| type: DirectoryOrCreate No newline at end of file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
newline at EOF?
| persistentVolumeReclaimPolicy: Delete | ||
| hostPath: | ||
| path: /data/k8s_iotdb/data/datanode1 | ||
| type: DirectoryOrCreate No newline at end of file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
newline at EOF?
| spec: | ||
| capacity: | ||
| storage: 1Gi | ||
| storageClassName: standard |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for me personally setting a storage class name in PV could be confusing
| spec: | ||
| capacity: | ||
| storage: 1Gi | ||
| storageClassName: standard |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for me personally setting a storage class name in PV could be confusing
| name: iotdb-datanode | ||
| spec: | ||
| image: apache/iotdb:1.3.2-datanode | ||
| replicas: 2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it might be more reasonable to let the whole sample deploy a standalone IoTDB cluster. then the datanode replicas could be 1 and the datanode pv2 could be ignored.
| controllerutil.SetControllerReference(configNode, statefulset, r.Scheme) | ||
| return statefulset | ||
| } else { | ||
| //todo add check |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if only one template is allowed, why not just make the field to accept a single value instead of a list ?
| } | ||
|
|
||
| func (r *ConfigNodeReconciler) constructServicesForConfigNode(configNode *iotdbv1.ConfigNode) ([]corev1.Service, error) { | ||
| // 创建Headless Service |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
English comments should be preferred ?
|
|
||
| services := []corev1.Service{*headlessService} | ||
|
|
||
| // 检查是否需要创建NodePort Service |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
English comments should be preferred ?
phamour
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
feature iotdb operator