Park: Stop or Start Cloud Resources

Note:

This topic describes features that are available in the new design of the user interface. This new design is enabled by default. If you switched to the legacy design, click New Feature Toggle button in the navigation bar of the user interface and then turn on the toggle to re-enable the new design. For more information, see this New Design for the User Interface.

Overview

Turbonomic supports 'parking' actions for cloud resources. These user-initiated actions stop your cloud resources for a given period of time to help you reduce your cloud expenses, and then start these resources later when you need them. You can enforce parking actions on demand, or automatically through parking schedules and policies.

When you click Park on the main menu, the user interface displays a list of parkable entities.

Parking page with a list of parkable entities

Parkable Entities

Currently, Turbonomic supports parking actions for the following entities:

Supported Entity

Parkable Resources

Virtual Machine

Virtual machines in AWS, Azure, and Google Cloud

Virtual Machine Spec

AWS Auto Scaling groups and Azure Virtual Machine Scale Sets

Points to consider:

  • Auto Scaling groups and Azure Virtual Machine Scale Sets in the Parking page are only available in the new design of the user interface.

  • Currently, the following entities are not discovered as Virtual Machine Specs and are not parkable:

    • Auto Scaling groups in Amazon Elastic Kubernetes Service (EKS)

    • Virtual Machine Scale Sets in Azure Kubernetes Service (AKS)

    • Virtual Machine Scale Sets that apply multiple autoscale profiles

Database Server

AWS RDS instances

  • AWS provides guidelines and caveats for parking actions. For example, your accounts will continue to incur certain charges while instances are stopped. For details, visit this AWS page.

  • AWS RDS clusters and cluster members are not parkable.

Database

Azure dedicated SQL pools (used in Azure Synapse Analytics)

Turbonomic analysis can also generate suspend actions for idle SQL pools. Suspend actions have the same effect as stop actions. For details, see Suspend Actions for Dedicated SQL Pools

Some entities that display in the Parking page may be unparkable when you view them because the entities apply a parking policy that disables parking actions. The Unparkable column indicates if such a policy currently applies. These entities cannot be parked on demand or automatically.

Parking page with a list of unparkable entities

For example, you may have virtual machines in your production environment that must be running all the time. You can prevent the enforcement of parking actions by creating a parking policy that disables parking actions.

How Parking Works

Cloud workloads that become idle for a period of time (for example, after business hours) and those that undergo regular maintenance are ideal for parking. When parking actions are enforced, Turbonomic reverses any conflicting actions on these entities. For example, when a VM has been started via Turbonomic and a user stops the VM via the cloud provider, Turbonomic will start the VM after a subsequent discovery cycle.

When a scaling action for a VM or Database Server is in progress, Turbonomic postpones a stop or start action until the scaling action completes.

Enforcing Parking Actions

There are several ways to enforce parking actions.

  • Execute actions on demand.

    Use the Parking page to execute parking actions on individual entities. For details, see Executing Parking Actions.

  • Attach a parking schedule to one or several entities.

    Use the Parking page to attach a parking schedule to one or several entities. You must create parking schedules as a prerequisite. For details, see Managing Parking Schedules and Scheduling Parking Actions.

    Note:

    When you execute a parking action on demand and the affected entity has an existing schedule, a system prompt notifies you to pause the schedule before executing the action. This prevents potential conflicts between on-demand and scheduled parking actions.

  • Create parking policies.

    Use parking policies to enforce actions dynamically and at scale. For example, you can create a parking policy at the cloud provider level so that all existing and newly discovered parkable entities from a specific cloud provider are parked uniformly.

    Use the Policy Management page to create parking policies. For details, see Parking Policies.

Parking policies take precedence over the other enforcement methods. For example, if a parking policy dictates that a VM must be running everyday from 9:00 AM to 6:00 PM, and a Turbonomic user manually stopped the VM from the Parking page at 3:00 PM, the VM will be started to comply with the parking policy.

Working with the Parking Page

After discovering parkable entities, Turbonomic adds them to the Parking page and shows their state (stopped or running) at the time of discovery. Use the Parking page to execute parking actions or attach parking schedules to these entities.

Parking page

Users with the Site Administrator, Administrator, Automator, or Parker role can manage the parking actions and settings in the Parking page. Users with other roles have read-only access to the page. For details about roles, see Managing User Accounts.

General tasks:

  • For a long list of entities, you can type a search keyword or add filters to narrow the results.

    For filters, valid values display in a dropdown list. These filters support regular expressions and partial keyword matching to help you narrow down the values further.

  • To set an entity as your scope, click the entity name.

  • To download the data in the Parking page, click the download button.

Be aware of the following as you manage parking actions.

  • To see and download a list of parking (and non-parking) actions that have been executed successfully, add the All Actions chart to your dashboard and use the tabular view.

  • Actual savings associated with parking actions are reflected in the Savings and Cumulative Savings charts, but not in the Parking page.

    For an entity that is currently running, the Cost column in the Parking page shows the hourly on-demand rate for that entity, for your reference.

Details for AWS Auto Scaling Groups and Azure Virtual Machine Scale Sets

The table in the Parking page shows individual AWS Auto Scaling Groups and Azure Virtual Machine Scale Sets, but not the member instances. To view member instances, click the information icon in the table.

Parking page

A new page opens and includes the following tabs:

Details for a parking group

Tab Name

Details

Details

This tab shows the instances discovered from an AWS Auto Scaling group or Azure Virtual Machine Scale Set that is currently running.

Settings

This tab shows the following scaling limits:

  • Discovered – The current scaling limits as discovered from AWS or Azure

  • After start action – After a start action is executed, the Auto Scaling group or Virtual Machine Scale Set applies the scaling limits assigned to it before it was stopped.

  • After stop action – After a stop action is executed, scaling limits become zero.

    Turbonomic persists the scaling limits before the stop action was executed and then assigns the same limits to the Auto Scaling group or Virtual Machine Scale Set when it is started later.

The scaling limits that display vary by cloud provider.

  • For AWS, the min, max, and desired values shown in Turbonomic are the scaling limits that you configured in AWS.

  • For Azure:

    • For Virtual Machine Scale Sets that apply an autoscale profile that scales instances dynamically based on metrics, the default, minimum, and maximum values are the scaling limits that you configured in the profile.

    • For Virtual Machine Scale Sets that apply a manual autoscale profile or a custom autoscale profile that scales instances to a specific count, the default value is the fixed instance count that you configured in the profile. Minimum and maximum values do not apply and are not shown.

Schedules

This tab shows the schedule that is currently assigned to the Auto Scaling group or Virtual Machine Scale Set.

Tags

This tab shows the tags that are currently assigned to the Auto Scaling group or Virtual Machine Scale Set, and the individual instances.

Executing Parking Actions On Demand

Parking actions can only be executed from the Parking page. The Pending Actions, Potential Savings, and Top Accounts charts in the Home Page only show the non-parking actions that you can execute.

To execute a parking action, select one or several entities with the same state, and then click Stop or Start. In the following example, the selected entities are currently stopped and will be started.

Start button on Parking page

In the All Actions chart, the tabular view shows the following information for the parking actions that you executed:

All Actions chart tabular view
  • Execution: Manually Accepted

  • Risk Type: Savings (stop actions) or Efficiency Improvement (start actions)

Scheduling Parking Actions

Attach a parking schedule to one or several entities to ensure that parking actions occur automatically at the appropriate times. You must create parking schedules as a prerequisite. For instructions on creating parking schedules, see Managing Parking Schedules.

Note:

Use parking policies to schedule parking actions at scale. The parking schedules that you set up can be reused in these policies.

Parking actions cannot be scheduled using automation policies. Automation policies (and the schedules configured in these policies) only apply to scale actions.

To attach a schedule, select one or several entities without a schedule and then select Attach from the dropdown menu.

Process of selecting schedules for entities using Attach option from the drop down and Parking Schedule page

In the Parking Schedule page, choose from a list of previously configured schedules.

List of parking schedules

If no schedule is suitable or available, create one by clicking Create schedule. Be aware that a schedule created this way will immediately apply to the entities in scope. If this is not your preference, create a new schedule by navigating to Settings > Schedule and then clicking New Schedule > Parking Schedule.

After attaching a schedule, the name of the schedule appears in the Schedule column.

List of parking schedules

Click the schedule name to view the settings for that schedule. To edit the settings, navigate to Settings > Schedule and then open the schedule for editing.

In the All Actions chart, the tabular view shows the following information for scheduled parking actions that have been executed:

All Actions chart tabular view
  • Execution: Automatically Accepted

  • Risk Type: Savings (stop actions) or Efficiency Improvement (start actions)

Pausing a Parking Schedule

You can pause schedule enforcement for a given period of time. For example, you can pause during non-typical work hours or when an unanticipated maintenance window requires automation outside Turbonomic to start and stop workloads. If the entity was running, it keeps running. If it was stopped, it stays stopped.

To pause a parking schedule, select one or several entities with a schedule, and then select Pause Schedule from the dropdown menu.

Process of pausing schedules for entities using Pause option from the drop down and Pause Schedule page

In the Pause Schedule page, specify the duration of the pause.

Pause Schedule page

In the Parking page, an icon appears before the name of the schedule to indicate that it has been paused.

Schedule Page with a list of paused schedules

The parking schedule will resume automatically when the pause period is over. To manually resume the schedule, select the affected entities and then select Resume Schedule from the dropdown menu.

Process of resuming schedules for entities using Attach option from the drop down and Parking Schedule page
Note:

When you execute a parking action on demand and the affected entity has an existing schedule, a system prompt notifies you to pause the schedule before executing the action. This prevents potential conflicts between on-demand and scheduled parking actions.

Detaching a Parking Schedule

You can detach parking schedules anytime. Select one or several entities with schedules, and then select Detach Schedule from the dropdown menu.

Process of detaching schedules for entities using Detach option from the drop down

Notice for Updated Turbonomic Instances

If you updated your Turbonomic instance from version 8.7.0 (or older) and noticed that the parking feature is missing in the user interface, perform the following steps in your updated instance:

  1. Open charts_v1alpha1_xl_cr.yaml for editing.

    vi /opt/turbonomic/kubernetes/operator/deploy/crds/charts_v1alpha1_xl_cr.yaml
  2. In the suspend section, change the value for enabled to true.

      # Suspend service selector
      suspend:
          enabled: true
  3. Apply the change.

    kubectl apply -f /opt/turbonomic/kubernetes/operator/deploy/crds/charts_v1alpha1_xl_cr.yaml
  4. Restart the UI and API pods.

    kubectl delete pod <ui-podname>
    kubectl delete pod <api-podname>