-
Notifications
You must be signed in to change notification settings - Fork 959
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
Implement vineyard runtime engine and controller #3649
Changes from all commits
61c159d
2e28ab7
2ebe774
4bf3a4a
7ead256
7ff8f78
abc9bcf
40eb104
fafa8d8
2a08a70
987923c
e04d56c
270bab2
f4562bf
51bb822
ec2ef82
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -91,6 +91,11 @@ spec: | |
- --spill_upper_rate | ||
- "{{ include "vineyard.spill.upperRate" . }}" | ||
{{- end }} | ||
{{- if not .Values.disablePrometheus }} | ||
- --metrics | ||
- --log_dir | ||
- /var/log/vineyard | ||
TrafalgarZZZ marked this conversation as resolved.
Show resolved
Hide resolved
|
||
{{- end }} | ||
env: | ||
- name: VINEYARDD_NAME | ||
value: {{ template "vineyard.fullname" . }}-vineyardd | ||
|
@@ -150,9 +155,25 @@ spec: | |
volumeMounts: | ||
- name: vineyard-socket-volume | ||
mountPath: /var/run/vineyard | ||
{{- if not .Values.disablePrometheus }} | ||
- name: log | ||
mountPath: /var/log/vineyard | ||
{{- end }} | ||
{{- if eq (include "vineyard.checkTieredStore" .) "true" }} | ||
{{- include "vineyard.worker.tieredstoreVolumeMounts" . }} | ||
{{- end }} | ||
{{- if not .Values.disablePrometheus }} | ||
- name: metrics | ||
image: vineyardcloudnative/vineyardd-grok-exporter | ||
imagePullPolicy: {{ .Values.worker.imagePullPolicy }} | ||
ports: | ||
- name: exporter | ||
containerPort: {{ int .Values.worker.ports.exporter }} | ||
protocol: TCP | ||
volumeMounts: | ||
- name: log | ||
TrafalgarZZZ marked this conversation as resolved.
Show resolved
Hide resolved
|
||
mountPath: /var/log/vineyard | ||
{{- end }} | ||
volumes: | ||
{{- if eq (include "vineyard.checkTieredStore" .) "true" }} | ||
{{- include "vineyard.worker.tieredstoreVolume" . }} | ||
|
@@ -161,6 +182,10 @@ spec: | |
hostPath: | ||
path: /runtime-mnt/vineyard/{{ .Release.Namespace }}/{{ $fullName }} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Make sense to me. |
||
type: DirectoryOrCreate | ||
{{- if not .Values.disablePrometheus }} | ||
- name: log | ||
emptyDir: {} | ||
{{- end }} | ||
affinity: | ||
podAntiAffinity: | ||
requiredDuringSchedulingIgnoredDuringExecution: | ||
|
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.
Does it mean that vineyard reports metrics via exporter? But how vineyardd manage to find out which is the allocated exporter port?
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.
By vineyardd itself. The
--metrics
field means vineyardd will print internal metrics info (only about vineyard object) to the stdout and thelog_dir
field means vineyard will store these metrics info under a directory.vineyardd doesn't need to know the port, we have an external exporter to convert these logs (/var/log/vineyard) to metrics via https://github.com/fluid-cloudnative/fluid/pull/3649/files#diff-6109bb7b99b63ccc2d90ea9d7c1ca8dece4d3873aabfc77280196643e7f6593cR162.
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.
Thanks! Got it now. One more question is that, does Vineyardd automatically rotate its log messages? And what will happen if the external exporter fail over? Will the external exporter recover all the metrics from the all the logs?
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.
No, vineyardd will preserve all log messages.
It will convert all logs to metrics again.
Yes, from the log file.