Module - tripleo_derive_hci_parameters

This module provides for the following ansible plugin:

  • tripleo_derive_hci_parameters

Module Documentation

When collocating Ceph OSDs on Nova Compute hosts (hyperconverged or hci) the Nova Scheduler does not take into account the CPU/Memory needs of the OSDs. This module returns recommended NovaReservedHostMemory and NovaCPUAllocationRatio parmaters so that the host reseves memory and CPU for Ceph. The values are based on workload description, deployment configuration, and Ironic data. The workload description is the expected average_guest_cpu_utilization_percentage and average_guest_memory_size_in_mb.

Options

tripleo_environment_parameters

Map from key environment_parameters from output of the tripleo_get_flatten_stack module stack_data. Used to determine number of OSDs in deployment per role

tripleo_role_name

TripleO role name whose parameters are being derived

introspection_data

Output of the tripleo_get_introspected_data module. Used to determine available memory and CPU of each instance from any role with the CephOSD service

average_guest_cpu_utilization_percentage

Percentage of CPU utilization expected for average guest, e.g. 99 means 99% and 10 means 10%

average_guest_memory_size_in_mb

Amount of memory in MB required by the average guest

derived_parameters

any previously derived parameters which should be included in the final result

new_heat_environment_path

Path to file new where resultant derived parameters will be written; result will be valid input to TripleO client, e.g. /home/stack/derived_paramaters.yaml

report_path

Path to file new where a report on how HCI paramters were derived be written, e.g. /home/stack/hci_derived_paramaters.txt

Authors

John Fulton (fultonj)

Example Tasks

- name: Add Derived HCI parameters to existing derived parameters for ComputeHCI role
  tripleo_derive_hci_parameters:
    tripleo_environment_parameters: '{{ tripleo_environment_parameters }}'
    introspection_data: '{{ hw_data }}'
    derived_parameters: '{{ derived_parameters }}'
    tripleo_role_name: ComputeHCI
    average_guest_cpu_utilization_percentage: 90
    average_guest_memory_size_in_mb: 8192
    new_heat_environment_path: /home/stack/hci_result.yaml
    report_path: /home/stack/hci_report.txt
  register: derived_parameters_result
- name: Show derived HCI Memory result
  debug:
    msg: "{{ derived_parameters_result['derived_parameters']['ComputeHCIParameters']['NovaReservedHostMemory']\
      \ }}"
- name: Show derived HCI CPU result
  debug:
    msg: "{{ derived_parameters_result['derived_parameters']['ComputeHCIParameters']['NovaCPUAllocationRatio']\
      \ }}"
- name: Update deployment plan with derived_parameters
  tripleo_plan_parameters_update:
    container: '{{ plan }}'
    parameter_key: derived_parameters
    parameters: "{{ derived_parameters_result['derived_parameters'] }}"
    validate: true