Skip to Main Content
Cloud Management and AIOps


This is an IBM Automation portal for Cloud Management, Technology Cost Management, Network Automation and AIOps products. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).

Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.

Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Not under consideration
Workspace IBM Turbonomic ARM
Created by Guest
Created on Jul 20, 2023

Create alternative container rightsizing action execution to directly update pod resource

The idea is mimc vertical pod autoscaler (VPA https://github.com/kubernetes/autoscaler/tree/master/vertical-pod-autoscaler) initial mode.

"Initial": VPA only assigns resource requests on pod creation and never changes them later.

This is just another way to apply the recommended actions for resize (vertical only) when pods are created. What is nice about this approach would be that we don't need to update the source of truth since the original Deployment/Statefulset/Daemonset/etc will be untouched, only the pod runtime settings will be changed with a mutating webhook. The challenge would be to persist/cache recommended sizes on the remote clusters so that the webhook is as quick as possible.


PM Update:

The feature under consideration is to provide alternative mechanisms to apply Container Spec rightsizing actions in a k8s cluster. Today the OOTB mechanism involves updating the parent controller, which is a good strategy to persist and propagate the change across all replicas. However k8s does provide alternatives that could be useful options for those that want to operationalize Turbo without changing the parent definition.

Under consideration that will be handled in separate Master Epics:

  1. Supporting in-place pod updates that would also not require a restart, which is beneficial to workloads that have a definition of state. Turbonomic will support when this project is beta. Current status is alpha as of 1.27: https://kubernetes.io/blog/2023/05/12/in-place-pod-resize-alpha/

  2. Provide a Turbo mutating webhook to be used in versions of k8s until in-place pod update is beta. Here Turbonomic should improve of what VPA does and apply the change to all running replicas, given that our analysis is designed to provide a better definition of consistent scaling across all replicas.

Idea priority Medium
  • Admin
    Eva Tuczai
    Reply
    |
    Jul 24, 2023

    We actually do not want to mimic VPA because by design VPA creates a copy of a pod that is no longer controlled by the Parent Controller, which makes it impossible to persist changes especially if the pod is killed (new pods will get the parent controller's spec).

    Instead we would like to consider supporting in-place pod updates that is alpha as of 1.27: https://kubernetes.io/blog/2023/05/12/in-place-pod-resize-alpha/