diff --git a/Cargo.lock b/Cargo.lock index 1dcf864bd..4d8f03585 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -311,7 +311,7 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "agent" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-debug-echo", "akri-discovery-utils", @@ -376,7 +376,7 @@ dependencies = [ [[package]] name = "akri-debug-echo" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-discovery-utils", "akri-shared", @@ -395,7 +395,7 @@ dependencies = [ [[package]] name = "akri-discovery-utils" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-shared", "anyhow", @@ -415,7 +415,7 @@ dependencies = [ [[package]] name = "akri-onvif" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-discovery-utils", "akri-shared", @@ -443,7 +443,7 @@ dependencies = [ [[package]] name = "akri-opcua" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-discovery-utils", "akri-shared", @@ -466,7 +466,7 @@ dependencies = [ [[package]] name = "akri-shared" -version = "0.6.3" +version = "0.6.4" dependencies = [ "anyhow", "async-trait", @@ -495,7 +495,7 @@ dependencies = [ [[package]] name = "akri-udev" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-discovery-utils", "anyhow", @@ -1036,7 +1036,7 @@ checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" [[package]] name = "controller" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-shared", "anyhow", @@ -1203,7 +1203,7 @@ dependencies = [ [[package]] name = "debug-echo-discovery-handler" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-debug-echo", "akri-discovery-utils", @@ -2382,7 +2382,7 @@ checksum = "af8b08b04175473088b46763e51ee54da5f9a164bc162f615b91bc179dbf15a3" [[package]] name = "onvif-discovery-handler" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-discovery-utils", "akri-onvif", @@ -2448,7 +2448,7 @@ dependencies = [ [[package]] name = "opcua-discovery-handler" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-discovery-utils", "akri-opcua", @@ -4516,7 +4516,7 @@ dependencies = [ [[package]] name = "udev-discovery-handler" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-discovery-utils", "akri-udev", @@ -4527,7 +4527,7 @@ dependencies = [ [[package]] name = "udev-video-broker" -version = "0.6.3" +version = "0.6.4" dependencies = [ "akri-shared", "env_logger", @@ -4821,7 +4821,7 @@ dependencies = [ [[package]] name = "webhook-configuration" -version = "0.6.3" +version = "0.6.4" dependencies = [ "actix", "actix-rt", diff --git a/agent/Cargo.toml b/agent/Cargo.toml index 9e4320336..453e64ef2 100644 --- a/agent/Cargo.toml +++ b/agent/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "agent" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring ", ""] edition = "2018" diff --git a/controller/Cargo.toml b/controller/Cargo.toml index 7fb3db5f6..fb07d51a0 100644 --- a/controller/Cargo.toml +++ b/controller/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "controller" -version = "0.6.3" +version = "0.6.4" authors = [""] edition = "2018" diff --git a/deployment/helm/Chart.yaml b/deployment/helm/Chart.yaml index 3797aaa82..d17e0b140 100644 --- a/deployment/helm/Chart.yaml +++ b/deployment/helm/Chart.yaml @@ -15,9 +15,9 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. # Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.6.3 +version: 0.6.4 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. -appVersion: 0.6.3 +appVersion: 0.6.4 diff --git a/deployment/helm/templates/agent.yaml b/deployment/helm/templates/agent.yaml index bf501a410..478857530 100644 --- a/deployment/helm/templates/agent.yaml +++ b/deployment/helm/templates/agent.yaml @@ -43,6 +43,13 @@ spec: {{- with .Values.agent.image.pullPolicy }} imagePullPolicy: {{ . }} {{- end }} + resources: + requests: + memory: {{ .Values.agent.resources.memoryRequest }} + cpu: {{ .Values.agent.resources.cpuRequest }} + limits: + memory: {{ .Values.agent.resources.memoryLimit }} + cpu: {{ .Values.agent.resources.cpuLimit }} {{- if .Values.agent.securityContext }} securityContext: {{- toYaml .Values.agent.securityContext | nindent 10 }} diff --git a/deployment/helm/templates/controller.yaml b/deployment/helm/templates/controller.yaml index d471e20c9..81599acb6 100644 --- a/deployment/helm/templates/controller.yaml +++ b/deployment/helm/templates/controller.yaml @@ -34,6 +34,13 @@ spec: {{- with .Values.controller.image.pullPolicy }} imagePullPolicy: {{ . }} {{- end }} + resources: + requests: + memory: {{ .Values.controller.resources.memoryRequest }} + cpu: {{ .Values.controller.resources.cpuRequest }} + limits: + memory: {{ .Values.controller.resources.memoryLimit }} + cpu: {{ .Values.controller.resources.cpuLimit }} {{- if .Values.prometheus.enabled }} ports: - name: {{ .Values.prometheus.portName | quote }} diff --git a/deployment/helm/templates/custom-configuration.yaml b/deployment/helm/templates/custom-configuration.yaml index 02255b925..9f38a927b 100644 --- a/deployment/helm/templates/custom-configuration.yaml +++ b/deployment/helm/templates/custom-configuration.yaml @@ -16,8 +16,14 @@ spec: imagePullPolicy: {{ . }} {{- end }} resources: + requests: + {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.custom.configuration.brokerPod.resources.memoryRequest }} + cpu: {{ .Values.custom.configuration.brokerPod.resources.cpuRequest }} limits: {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.custom.configuration.brokerPod.resources.memoryLimit }} + cpu: {{ .Values.custom.configuration.brokerPod.resources.cpuLimit }} {{- with .Values.imagePullSecrets }} imagePullSecrets: {{- toYaml . | nindent 6 }} diff --git a/deployment/helm/templates/custom-discovery-handler.yaml b/deployment/helm/templates/custom-discovery-handler.yaml index 54653526d..e13ccd9dd 100644 --- a/deployment/helm/templates/custom-discovery-handler.yaml +++ b/deployment/helm/templates/custom-discovery-handler.yaml @@ -18,6 +18,13 @@ spec: {{- with .Values.custom.discovery.image.pullPolicy }} imagePullPolicy: {{ . }} {{- end}} + resources: + requests: + memory: {{ .Values.custom.discovery.resources.memoryRequest }} + cpu: {{ .Values.custom.discovery.resources.cpuRequest }} + limits: + memory: {{ .Values.custom.discovery.resources.memoryLimit }} + cpu: {{ .Values.custom.discovery.resources.cpuLimit }} volumeMounts: - name: agent-registration mountPath: /var/lib/akri diff --git a/deployment/helm/templates/debug-echo-configuration.yaml b/deployment/helm/templates/debug-echo-configuration.yaml index 2b76c4705..a85d59afb 100644 --- a/deployment/helm/templates/debug-echo-configuration.yaml +++ b/deployment/helm/templates/debug-echo-configuration.yaml @@ -22,8 +22,14 @@ spec: imagePullPolicy: {{ . }} {{- end }} resources: + requests: + {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.debugEcho.configuration.brokerPod.resources.memoryRequest }} + cpu: {{ .Values.debugEcho.configuration.brokerPod.resources.cpuRequest }} limits: {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.debugEcho.configuration.brokerPod.resources.memoryLimit }} + cpu: {{ .Values.debugEcho.configuration.brokerPod.resources.cpuLimit }} {{- with .Values.imagePullSecrets }} imagePullSecrets: {{- toYaml . | nindent 6 }} @@ -57,5 +63,5 @@ spec: {{- else }} brokerProperties: {} {{- end }} - capacity: {{ .Values.debugEcho.configuration.capacity }} + capacity: 2 {{- end }} \ No newline at end of file diff --git a/deployment/helm/templates/debug-echo-discovery-handler.yaml b/deployment/helm/templates/debug-echo-discovery-handler.yaml index 512597562..c6c3ecea3 100644 --- a/deployment/helm/templates/debug-echo-discovery-handler.yaml +++ b/deployment/helm/templates/debug-echo-discovery-handler.yaml @@ -30,6 +30,13 @@ spec: {{- with .Values.debugEcho.discovery.image.pullPolicy }} imagePullPolicy: {{ . }} {{- end}} + resources: + requests: + memory: {{ .Values.debugEcho.discovery.resources.memoryRequest }} + cpu: {{ .Values.debugEcho.discovery.resources.cpuRequest }} + limits: + memory: {{ .Values.debugEcho.discovery.resources.memoryLimit }} + cpu: {{ .Values.debugEcho.discovery.resources.cpuLimit }} {{- if .Values.debugEcho.discovery.useNetworkConnection }} ports: - name: discovery diff --git a/deployment/helm/templates/onvif-configuration.yaml b/deployment/helm/templates/onvif-configuration.yaml index 516a7b5ff..c8118800f 100644 --- a/deployment/helm/templates/onvif-configuration.yaml +++ b/deployment/helm/templates/onvif-configuration.yaml @@ -49,8 +49,14 @@ spec: {{- end }} {{- end }} resources: + requests: + {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.onvif.configuration.brokerPod.resources.memoryRequest }} + cpu: {{ .Values.onvif.configuration.brokerPod.resources.cpuRequest }} limits: {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.onvif.configuration.brokerPod.resources.memoryLimit }} + cpu: {{ .Values.onvif.configuration.brokerPod.resources.cpuLimit }} {{- with .Values.imagePullSecrets }} imagePullSecrets: {{- toYaml . | nindent 6 }} diff --git a/deployment/helm/templates/onvif-discovery-handler.yaml b/deployment/helm/templates/onvif-discovery-handler.yaml index 327cdaeff..bf04069c5 100644 --- a/deployment/helm/templates/onvif-discovery-handler.yaml +++ b/deployment/helm/templates/onvif-discovery-handler.yaml @@ -32,7 +32,14 @@ spec: {{- with .Values.onvif.discovery.image.pullPolicy }} imagePullPolicy: {{ . }} {{- end}} - {{- if .Values.debugEcho.discovery.useNetworkConnection }} + resources: + requests: + memory: {{ .Values.onvif.discovery.resources.memoryRequest }} + cpu: {{ .Values.onvif.discovery.resources.cpuRequest }} + limits: + memory: {{ .Values.onvif.discovery.resources.memoryLimit }} + cpu: {{ .Values.onvif.discovery.resources.cpuLimit }} + {{- if .Values.onvif.discovery.useNetworkConnection }} ports: - name: discovery containerPort: {{ .Values.onvif.discovery.port }} diff --git a/deployment/helm/templates/opcua-configuration.yaml b/deployment/helm/templates/opcua-configuration.yaml index 653243716..088ab62ea 100644 --- a/deployment/helm/templates/opcua-configuration.yaml +++ b/deployment/helm/templates/opcua-configuration.yaml @@ -36,8 +36,14 @@ spec: {{- end }} {{- end }} resources: + requests: + {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.opcua.configuration.brokerPod.resources.memoryRequest }} + cpu: {{ .Values.opcua.configuration.brokerPod.resources.cpuRequest }} limits: {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.opcua.configuration.brokerPod.resources.memoryLimit }} + cpu: {{ .Values.opcua.configuration.brokerPod.resources.cpuLimit }} {{- if .Values.opcua.configuration.mountCertificates}} volumeMounts: - name: credentials diff --git a/deployment/helm/templates/opcua-discovery-handler.yaml b/deployment/helm/templates/opcua-discovery-handler.yaml index 5eb520040..5b0ad33a2 100644 --- a/deployment/helm/templates/opcua-discovery-handler.yaml +++ b/deployment/helm/templates/opcua-discovery-handler.yaml @@ -30,6 +30,13 @@ spec: {{- with .Values.opcua.discovery.image.pullPolicy }} imagePullPolicy: {{ . }} {{- end}} + resources: + requests: + memory: {{ .Values.opcua.discovery.resources.memoryRequest }} + cpu: {{ .Values.opcua.discovery.resources.cpuRequest }} + limits: + memory: {{ .Values.opcua.discovery.resources.memoryLimit }} + cpu: {{ .Values.opcua.discovery.resources.cpuLimit }} {{- if .Values.opcua.discovery.useNetworkConnection }} ports: - name: discovery diff --git a/deployment/helm/templates/udev-configuration.yaml b/deployment/helm/templates/udev-configuration.yaml index bc8fe1783..a58247530 100644 --- a/deployment/helm/templates/udev-configuration.yaml +++ b/deployment/helm/templates/udev-configuration.yaml @@ -32,8 +32,14 @@ spec: privileged: true {{- end}} resources: + requests: + {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.udev.configuration.brokerPod.resources.memoryRequest }} + cpu: {{ .Values.udev.configuration.brokerPod.resources.cpuRequest }} limits: {{`"{{PLACEHOLDER}}"`}} : "1" + memory: {{ .Values.udev.configuration.brokerPod.resources.memoryLimit }} + cpu: {{ .Values.udev.configuration.brokerPod.resources.cpuLimit }} {{- with .Values.imagePullSecrets }} imagePullSecrets: {{- toYaml . | nindent 6 }} diff --git a/deployment/helm/templates/udev-discovery-handler.yaml b/deployment/helm/templates/udev-discovery-handler.yaml index a3e181c44..4921b032c 100644 --- a/deployment/helm/templates/udev-discovery-handler.yaml +++ b/deployment/helm/templates/udev-discovery-handler.yaml @@ -32,6 +32,13 @@ spec: {{- with .Values.udev.discovery.image.pullPolicy }} imagePullPolicy: {{ . }} {{- end}} + resources: + requests: + memory: {{ .Values.udev.discovery.resources.memoryRequest }} + cpu: {{ .Values.udev.discovery.resources.cpuRequest }} + limits: + memory: {{ .Values.udev.discovery.resources.memoryLimit }} + cpu: {{ .Values.udev.discovery.resources.cpuLimit }} {{- if .Values.udev.discovery.useNetworkConnection }} ports: - name: discovery diff --git a/deployment/helm/templates/webhook-configuration.yaml b/deployment/helm/templates/webhook-configuration.yaml index a23db98c2..5b5eae7ac 100644 --- a/deployment/helm/templates/webhook-configuration.yaml +++ b/deployment/helm/templates/webhook-configuration.yaml @@ -64,6 +64,13 @@ items: {{- end }} {{- end }} imagePullPolicy: {{ .Values.webhookConfiguration.image.pullPolicy }} + resources: + requests: + memory: {{ .Values.webhookConfiguration.resources.memoryRequest }} + cpu: {{ .Values.webhookConfiguration.resources.cpuRequest }} + limits: + memory: {{ .Values.webhookConfiguration.resources.memoryLimit }} + cpu: {{ .Values.webhookConfiguration.resources.cpuLimit }} command: - /server args: diff --git a/deployment/helm/values.yaml b/deployment/helm/values.yaml index d9e4bf490..1265ea33c 100644 --- a/deployment/helm/values.yaml +++ b/deployment/helm/values.yaml @@ -59,6 +59,17 @@ controller: # nodeSelectors is the array of nodeSelectors used to target nodes for the Akri Controller to run on # This can be set from the helm command line using `--set controller.nodeSelectors.label="value"` nodeSelectors: {} + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 11Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 100Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 26m agent: # enabled defines whether to apply the Akri Agent @@ -93,6 +104,17 @@ agent: allowDebugEcho: false # linuxOnly dictates whether the Akri Agent will only run on a linux node linuxOnly: true + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 11Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 79Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 26m custom: configuration: @@ -120,6 +142,17 @@ custom: tag: latest # pullPolicy is the custom pull policy pullPolicy: "" + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 11Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 24Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 24m # createInstanceServices is specified if a service should automatically be # created for each broker pod createInstanceServices: true @@ -165,6 +198,17 @@ custom: # nodeSelectors is the array of nodeSelectors used to target nodes for the discovery handler to run on # This can be set from the helm command line using `--set custom.discovery.nodeSelectors.label="value"` nodeSelectors: {} + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 11Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 24Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 24m debugEcho: configuration: @@ -197,6 +241,17 @@ debugEcho: tag: stable-alpine # pullPolicy is the debugEcho pull policy pullPolicy: "" + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 10Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 30Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 29m # createInstanceServices is specified if a service should automatically be # created for each broker pod createInstanceServices: true @@ -246,7 +301,17 @@ debugEcho: # nodeSelectors is the array of nodeSelectors used to target nodes for the discovery handler to run on # This can be set from the helm command line using `--set debugEcho.discovery.nodeSelectors.label="value"` nodeSelectors: {} - + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 11Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 24Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 26m onvif: configuration: @@ -280,6 +345,17 @@ onvif: tag: latest # pullPolicy is the Akri onvif broker pull policy pullPolicy: "" + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 98Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 134m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 400Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 2800m # createInstanceServices is specified if a service should automatically be # created for each broker pod createInstanceServices: true @@ -333,6 +409,17 @@ onvif: # nodeSelectors is the array of nodeSelectors used to target nodes for the discovery handler to run on # This can be set from the helm command line using `--set onvif.discovery.nodeSelectors.label="value"` nodeSelectors: {} + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 11Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 24Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 24m opcua: configuration: @@ -369,6 +456,17 @@ opcua: tag: latest # pullPolicy is the OPC UA broker pull policy pullPolicy: "" + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 76Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 9m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 200Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 30m # createInstanceServices is specified if a service should automatically be # created for each broker pod createInstanceServices: true @@ -418,7 +516,17 @@ opcua: # nodeSelectors is the array of nodeSelectors used to target nodes for the discovery handler to run on # This can be set from the helm command line using `--set opcua.discovery.nodeSelectors.label="value"` nodeSelectors: {} - + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 11Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 24Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 24m udev: configuration: @@ -487,6 +595,17 @@ udev: tag: # pullPolicy is the pull policy pullPolicy: "" + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 10Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 30Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 29m # useNetworkConnection specifies whether the discovery handler should make a networked connection # with Agents, using its pod IP address when registering useNetworkConnection: false @@ -498,6 +617,17 @@ udev: host: # udev is the node path of udev, usually at `/run/udev` udev: + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 11Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 10m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 24Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 24m # Admission Controllers (Webhooks) webhookConfiguration: @@ -527,3 +657,14 @@ webhookConfiguration: # nodeSelectors is the array of nodeSelectors used to target nodes for the Akri Webhook to run on # This can be set from the helm command line using `--set webhookConfiguration.nodeSelectors.label="value"` nodeSelectors: {} + resources: + # memoryRequest defines the minimum amount of RAM that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + memoryRequest: 100Mi + # cpuRequest defines the minimum amount of CPU that must be available to this Pod + # for it to be scheduled by the Kubernetes Scheduler + cpuRequest: 15m + # memoryLimit defines the maximum amount of RAM this Pod can consume. + memoryLimit: 100Mi + # cpuLimit defines the maximum amount of CPU this Pod can consume. + cpuLimit: 26m diff --git a/discovery-handler-modules/debug-echo-discovery-handler/Cargo.toml b/discovery-handler-modules/debug-echo-discovery-handler/Cargo.toml index 9e17ab0e8..dc08fd394 100644 --- a/discovery-handler-modules/debug-echo-discovery-handler/Cargo.toml +++ b/discovery-handler-modules/debug-echo-discovery-handler/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "debug-echo-discovery-handler" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring "] edition = "2018" diff --git a/discovery-handler-modules/onvif-discovery-handler/Cargo.toml b/discovery-handler-modules/onvif-discovery-handler/Cargo.toml index 504890b6f..894d2cbd4 100644 --- a/discovery-handler-modules/onvif-discovery-handler/Cargo.toml +++ b/discovery-handler-modules/onvif-discovery-handler/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "onvif-discovery-handler" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring "] edition = "2018" diff --git a/discovery-handler-modules/opcua-discovery-handler/Cargo.toml b/discovery-handler-modules/opcua-discovery-handler/Cargo.toml index e20b79a63..36f7fa327 100644 --- a/discovery-handler-modules/opcua-discovery-handler/Cargo.toml +++ b/discovery-handler-modules/opcua-discovery-handler/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "opcua-discovery-handler" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring "] edition = "2018" diff --git a/discovery-handler-modules/udev-discovery-handler/Cargo.toml b/discovery-handler-modules/udev-discovery-handler/Cargo.toml index 4a0791ad7..a69361a1b 100644 --- a/discovery-handler-modules/udev-discovery-handler/Cargo.toml +++ b/discovery-handler-modules/udev-discovery-handler/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "udev-discovery-handler" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring "] edition = "2018" diff --git a/discovery-handlers/debug-echo/Cargo.toml b/discovery-handlers/debug-echo/Cargo.toml index 5472b6cda..a5cf42dd1 100644 --- a/discovery-handlers/debug-echo/Cargo.toml +++ b/discovery-handlers/debug-echo/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "akri-debug-echo" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring "] edition = "2018" diff --git a/discovery-handlers/onvif/Cargo.toml b/discovery-handlers/onvif/Cargo.toml index 6b6601572..a3050f42a 100644 --- a/discovery-handlers/onvif/Cargo.toml +++ b/discovery-handlers/onvif/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "akri-onvif" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring "] edition = "2018" diff --git a/discovery-handlers/opcua/Cargo.toml b/discovery-handlers/opcua/Cargo.toml index 58a72f855..bf22c3dfd 100644 --- a/discovery-handlers/opcua/Cargo.toml +++ b/discovery-handlers/opcua/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "akri-opcua" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring "] edition = "2018" diff --git a/discovery-handlers/udev/Cargo.toml b/discovery-handlers/udev/Cargo.toml index 6f9997cc3..260cbde5d 100644 --- a/discovery-handlers/udev/Cargo.toml +++ b/discovery-handlers/udev/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "akri-udev" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring "] edition = "2018" diff --git a/discovery-utils/Cargo.toml b/discovery-utils/Cargo.toml index a7cc6f421..22d0ce55e 100644 --- a/discovery-utils/Cargo.toml +++ b/discovery-utils/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "akri-discovery-utils" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring "] edition = "2018" diff --git a/docs/broker-development.md b/docs/broker-development.md index 17fe62bca..3c61d3794 100644 --- a/docs/broker-development.md +++ b/docs/broker-development.md @@ -75,6 +75,16 @@ helm install akri akri-helm-charts/akri-dev \ --set udev.configuration.brokerPod.image.repository="ghcr.io/brokers/camera-broker" \ --set udev.configuration.brokerPod.image.tag="v0.0.1" ``` +### Setting compute resource requests and limits for your broker +The default broker Pod memory and CPU resource request and limits in Akri's Helm chart are based off the requirements of Akri's sample brokers. The following brokers were created for demo purposes: +| Discovery Handler | Akri Sample Broker Pod image | Description | +|---|---|---| +| debugEcho | `nginx:stable-alpine` | standard nginx image for testing | +| ONVIF | `ghcr.io/deislabs/akri/onvif-video-broker:latest` | .NET camera frame server | +| OPC UA | `ghcr.io/deislabs/akri/opcua-monitoring-broker:latest` | .Net App subscribes to specific NodeID and serves latest value | +| udev | `ghcr.io/deislabs/akri/udev-video-broker:latest` | Rust camera frame server | + +The limit and request bounds were obtained using Kubernetes' [Vertical Pod Autoscaler (VPA)](https://github.com/kubernetes/autoscaler/tree/master/vertical-pod-autoscaler). You should choose bounds appropriate to your broker Pod. [This blog](https://pretired.dazwilkin.com/posts/210305/#vertical-pod-autoscaler-vpa) is a good starting point for learning how to use the VPA to choose bounds. ## Specifying additional broker environment variables in a Configuration You can request that additional environment variables are set in Pods that request devices discovered via an Akri diff --git a/docs/opcua-configuration.md b/docs/opcua-configuration.md index a19493515..ac1b203bf 100644 --- a/docs/opcua-configuration.md +++ b/docs/opcua-configuration.md @@ -102,6 +102,7 @@ If you know the DiscoveryURLs for the OPC UA Servers you want Akri to discover, ```bash helm repo add akri-helm-charts https://deislabs.github.io/akri/ helm install akri akri-helm-charts/akri-dev \ + --set opcua.discovery.enabled=true \ --set opcua.configuration.enabled=true \ --set opcua.configuration.discoveryDetails.discoveryUrls[0]="opc.tcp://10.123.456.7:4855/" ``` diff --git a/samples/brokers/udev-video-broker/Cargo.toml b/samples/brokers/udev-video-broker/Cargo.toml index 1674cc053..7fc8a0ef6 100644 --- a/samples/brokers/udev-video-broker/Cargo.toml +++ b/samples/brokers/udev-video-broker/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "udev-video-broker" -version = "0.6.3" +version = "0.6.4" authors = ["Kate Goldenring ", ""] edition = "2018" diff --git a/shared/Cargo.toml b/shared/Cargo.toml index 44126093f..f1acf76b2 100644 --- a/shared/Cargo.toml +++ b/shared/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "akri-shared" -version = "0.6.3" +version = "0.6.4" authors = [""] edition = "2018" diff --git a/test/run-end-to-end.py b/test/run-end-to-end.py index 51df0411a..8f116ef1b 100644 --- a/test/run-end-to-end.py +++ b/test/run-end-to-end.py @@ -36,7 +36,7 @@ def main(): --set agent.full=true \ --set debugEcho.configuration.enabled=true \ --set debugEcho.configuration.name={config_name} \ - --set debugEcho.configuration.shared=true \ + --set debugEcho.configuration.shared=false \ --set debugEcho.configuration.discoveryDetails.descriptions[0]='{description_prefix}0' \ --set debugEcho.configuration.discoveryDetails.descriptions[1]='{description_prefix}1' \ --set debugEcho.configuration.brokerProperties.{res_width_key}={res_width_val} \ diff --git a/version.txt b/version.txt index 844f6a91a..d2b13eb64 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -0.6.3 +0.6.4 diff --git a/webhooks/validating/configuration/Cargo.toml b/webhooks/validating/configuration/Cargo.toml index 18430ae2c..486ee193d 100644 --- a/webhooks/validating/configuration/Cargo.toml +++ b/webhooks/validating/configuration/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "webhook-configuration" -version = "0.6.3" +version = "0.6.4" authors = ["DazWilkin "] edition = "2018"