From 669a596186e1966e8bccc45c80016ccbb2d79ae0 Mon Sep 17 00:00:00 2001 From: Dimitar Velinov <116083775+dimivel@users.noreply.github.com> Date: Thu, 1 Feb 2024 13:41:31 +0200 Subject: [PATCH] Add cpu weight config options (#380) --- .../templates/cloud_controller_ng.yml.erb | 2 ++ .../templates/cloud_controller_ng.yml.erb | 2 ++ jobs/cloud_controller_ng/spec | 8 ++++++++ .../templates/cloud_controller_ng.yml.erb | 2 ++ .../templates/cloud_controller_ng.yml.erb | 2 ++ .../cloud_controller_clock/cloud_controller_clock_spec.rb | 2 ++ .../cloud_controller_worker_spec.rb | 2 ++ 7 files changed, 20 insertions(+) diff --git a/jobs/cc_deployment_updater/templates/cloud_controller_ng.yml.erb b/jobs/cc_deployment_updater/templates/cloud_controller_ng.yml.erb index ac36596044..9d1a750190 100644 --- a/jobs/cc_deployment_updater/templates/cloud_controller_ng.yml.erb +++ b/jobs/cc_deployment_updater/templates/cloud_controller_ng.yml.erb @@ -272,4 +272,6 @@ statsd_port: <%= link("cloud_controller_internal").p("cc.statsd_port") %> max_labels_per_resource: <%= link("cloud_controller_internal").p("cc.max_labels_per_resource") %> max_annotations_per_resource: <%= link("cloud_controller_internal").p("cc.max_annotations_per_resource") %> +cpu_weight_min_memory: <%= link("cloud_controller_internal").p("cc.cpu_weight_min_memory") %> +cpu_weight_max_memory: <%= link("cloud_controller_internal").p("cc.cpu_weight_max_memory") %> custom_metric_tag_prefix_list: <%= link("cloud_controller_internal").p("cc.custom_metric_tag_prefix_list") %> diff --git a/jobs/cloud_controller_clock/templates/cloud_controller_ng.yml.erb b/jobs/cloud_controller_clock/templates/cloud_controller_ng.yml.erb index de212cd730..37ca7b31ac 100644 --- a/jobs/cloud_controller_clock/templates/cloud_controller_ng.yml.erb +++ b/jobs/cloud_controller_clock/templates/cloud_controller_ng.yml.erb @@ -352,4 +352,6 @@ statsd_port: <%= link("cloud_controller_internal").p("cc.statsd_port") %> max_labels_per_resource: <%= link("cloud_controller_internal").p("cc.max_labels_per_resource") %> max_annotations_per_resource: <%= link("cloud_controller_internal").p("cc.max_annotations_per_resource") %> +cpu_weight_min_memory: <%= link("cloud_controller_internal").p("cc.cpu_weight_min_memory") %> +cpu_weight_max_memory: <%= link("cloud_controller_internal").p("cc.cpu_weight_max_memory") %> custom_metric_tag_prefix_list: <%= link("cloud_controller_internal").p("cc.custom_metric_tag_prefix_list") %> diff --git a/jobs/cloud_controller_ng/spec b/jobs/cloud_controller_ng/spec index ac02124d5c..55d2f11f17 100644 --- a/jobs/cloud_controller_ng/spec +++ b/jobs/cloud_controller_ng/spec @@ -131,6 +131,8 @@ provides: - cc.buildpacks.webdav_config.private_endpoint - cc.buildpacks.webdav_config.public_endpoint - cc.buildpacks.webdav_config.username + - cc.cpu_weight_min_memory + - cc.cpu_weight_max_memory - cc.credential_references.interpolate_service_bindings - cc.custom_metric_tag_prefix_list - cc.database_encryption.current_key_label @@ -755,6 +757,12 @@ properties: default: false description: "Skip validations of database encryption properties" + cc.cpu_weight_min_memory: + default: 128 + description: "The default minimum application instance memory used for the CPU weight calculation" + cc.cpu_weight_max_memory: + default: 8192 + description: "The default maximum application instance memory used for the CPU weight calculation" cc.default_app_memory: default: 1024 description: "How much memory given to an app if not specified" diff --git a/jobs/cloud_controller_ng/templates/cloud_controller_ng.yml.erb b/jobs/cloud_controller_ng/templates/cloud_controller_ng.yml.erb index 0fe1ea6f09..33e0767d32 100644 --- a/jobs/cloud_controller_ng/templates/cloud_controller_ng.yml.erb +++ b/jobs/cloud_controller_ng/templates/cloud_controller_ng.yml.erb @@ -94,6 +94,8 @@ jobs: priorities: <%= priorities.to_json %> <% end %> +cpu_weight_min_memory: <%= p("cc.cpu_weight_min_memory") %> +cpu_weight_max_memory: <%= p("cc.cpu_weight_max_memory") %> default_app_memory: <%= p("cc.default_app_memory") %> default_app_disk_in_mb: <%= p("cc.default_app_disk_in_mb") %> maximum_app_disk_in_mb: <%= p("cc.maximum_app_disk_in_mb") %> diff --git a/jobs/cloud_controller_worker/templates/cloud_controller_ng.yml.erb b/jobs/cloud_controller_worker/templates/cloud_controller_ng.yml.erb index db2e0b56ad..f7fee73aa4 100644 --- a/jobs/cloud_controller_worker/templates/cloud_controller_ng.yml.erb +++ b/jobs/cloud_controller_worker/templates/cloud_controller_ng.yml.erb @@ -345,4 +345,6 @@ disable_private_domain_cross_space_context_path_route_sharing: <%= link("cloud_c max_labels_per_resource: <%= link("cloud_controller_internal").p("cc.max_labels_per_resource") %> max_annotations_per_resource: <%= link("cloud_controller_internal").p("cc.max_annotations_per_resource") %> custom_metric_tag_prefix_list: <%= link("cloud_controller_internal").p("cc.custom_metric_tag_prefix_list") %> +cpu_weight_min_memory: <%= link("cloud_controller_internal").p("cc.cpu_weight_min_memory") %> +cpu_weight_max_memory: <%= link("cloud_controller_internal").p("cc.cpu_weight_max_memory") %> max_manifest_service_binding_poll_duration_in_seconds: <%= p("cc.max_manifest_service_binding_poll_duration_in_seconds") %> diff --git a/spec/cloud_controller_clock/cloud_controller_clock_spec.rb b/spec/cloud_controller_clock/cloud_controller_clock_spec.rb index 110e65a7f1..dd506042dc 100644 --- a/spec/cloud_controller_clock/cloud_controller_clock_spec.rb +++ b/spec/cloud_controller_clock/cloud_controller_clock_spec.rb @@ -76,6 +76,8 @@ module Test 'max_labels_per_resource' => true, 'max_annotations_per_resource' => 'yus', 'disable_private_domain_cross_space_context_path_route_sharing' => false, + 'cpu_weight_min_memory' => 128, + 'cpu_weight_max_memory' => 8192, 'custom_metric_tag_prefix_list' => ['heck.yes.example.com'] } } diff --git a/spec/cloud_controller_worker/cloud_controller_worker_spec.rb b/spec/cloud_controller_worker/cloud_controller_worker_spec.rb index 8f149b971d..cacd6fb104 100644 --- a/spec/cloud_controller_worker/cloud_controller_worker_spec.rb +++ b/spec/cloud_controller_worker/cloud_controller_worker_spec.rb @@ -74,6 +74,8 @@ module Test 'max_labels_per_resource' => true, 'max_annotations_per_resource' => 'yus', 'disable_private_domain_cross_space_context_path_route_sharing' => false, + 'cpu_weight_min_memory' => 128, + 'cpu_weight_max_memory' => 8192, 'custom_metric_tag_prefix_list' => ['heck.yes.example.com'] } }