summaryrefslogtreecommitdiffstats
path: root/vTC
diff options
context:
space:
mode:
authorDeepak S <deepak.s@linux.intel.com>2016-12-30 09:20:15 -0800
committerDeepak S <deepak.s@linux.intel.com>2017-01-19 08:26:54 +0530
commitff1b12cbd92e39503e37833b4a94f30574c3ccbb (patch)
tree8da929117b2b9d63e4989ee9e4426468cda9e30e /vTC
parent1462b444d539e68eb84ece4b12b6a8521d8c64b7 (diff)
Introducing the collector to subscribe/publish the KPIs for yardstick plot
v2: Added unit tests to keep test coverage :) JIRA: YARDSTICK-482 Change-Id: I9281b00a4b619cc04550cb623c027ee5765c4974 Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Diffstat (limited to 'vTC')
0 files changed, 0 insertions, 0 deletions
#n143'>143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209
heat_template_version: 2015-04-30
description: 'Common Block Storage Configuration'
parameters:
  Image:
    default: overcloud-cinder-volume
    type: string
  CinderEnableIscsiBackend:
    default: true
    description: Whether to enable or not the Iscsi backend for Cinder
    type: boolean
  CinderISCSIHelper:
    default: tgtadm
    description: The iSCSI helper to use with cinder.
    type: string
  CinderLVMLoopDeviceSize:
    default: 5000
    description: The size of the loopback file used by the cinder LVM driver.
    type: number
  CinderPassword:
    default: unset
    description: The password for the cinder service and db account, used by cinder-api.
    type: string
    hidden: true
  VirtualIP:
    default: ''
    type: string
  ExtraConfig:
    default: {}
    description: |
      Additional configuration to inject into the cluster. The JSON should have
      the following structure:
        {"FILEKEY":
          {"config":
            [{"section": "SECTIONNAME",
              "values":
                [{"option": "OPTIONNAME",
                  "value": "VALUENAME"
                 }
                ]
             }
            ]
          }
        }
      For instance:
        {"nova":
          {"config":
            [{"section": "default",
              "values":
                [{"option": "force_config_drive",
                  "value": "always"
                 }
                ]
             },
             {"section": "cells",
              "values":
                [{"option": "driver",
                  "value": "nova.cells.rpc_driver.CellsRPCDriver"
                 }
                ]
             }
            ]
          }
        }
    type: json
  Flavor:
    description: Flavor for block storage nodes to request when deploying.
    type: string
    constraints:
      - custom_constraint: nova.flavor
  GlancePort:
    default: "9292"
    description: Glance port.
    type: string
  KeyName:
    default: default
    description: Name of an existing EC2 KeyPair to enable SSH access to the instances
    type: string
  RabbitPassword:
    default: 'guest'
    type: string
  RabbitUserName:
    default: 'guest'
    type: string
  RabbitClientUseSSL:
    default: false
    description: >
        Rabbit client subscriber parameter to specify
        an SSL connection to the RabbitMQ host.
    type: string
  RabbitClientPort:
    default: 5672
    description: Set rabbit subscriber port, change this if using SSL
    type: number
  SnmpdReadonlyUserName:
    default: ro_snmp_user
    description: The user name for SNMPd with readonly rights running on all Overcloud nodes
    type: string
  SnmpdReadonlyUserPassword:
    default: unset
    description: The user password for SNMPd with readonly rights running on all Overcloud nodes
    type: string
    hidden: true
  UpdateIdentifier:
    default: ''
    type: string
    description: >
      Setting to a previously unused value during stack-update will trigger
      package update on all nodes
  Hostname:
    type: string
    default: '' # Defaults to Heat created hostname

resources:
  BlockStorage:
    type: OS::Nova::Server
    properties:
      image:
        {get_param: Image}
      flavor: {get_param: Flavor}
      key_name: {get_param: KeyName}
      networks:
        - network: ctlplane
      user_data_format: SOFTWARE_CONFIG
      user_data: {get_resource: NodeUserData}
      name: {get_param: Hostname}

  NodeUserData:
    type: OS::TripleO::NodeUserData

  InternalApiPort:
    type: OS::TripleO::BlockStorage::Ports::InternalApiPort
    properties:
      ControlPlaneIP: {get_attr: [BlockStorage, networks, ctlplane, 0]}

  StoragePort:
    type: OS::TripleO::BlockStorage::Ports::StoragePort
    properties:
      ControlPlaneIP: {get_attr: [BlockStorage, networks, ctlplane, 0]}

  StorageMgmtPort:
    type: OS::TripleO::BlockStorage::Ports::StorageMgmtPort
    properties:
      ControlPlaneIP: {get_attr: [BlockStorage, networks, ctlplane, 0]}

  NetworkConfig:
    type: OS::TripleO::BlockStorage::Net::SoftwareConfig
    properties:
      InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
      StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
      StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}

  NetworkDeployment:
    type: OS::TripleO::SoftwareDeployment
    properties:
      config: {get_resource: NetworkConfig}
      server: {get_resource: BlockStorage}

  BlockStorageDeployment:
    type: OS::Heat::StructuredDeployment
    properties:
      server: {get_resource: BlockStorage}
      config: {get_resource: BlockStorageConfig}
      input_values:
        controller_virtual_ip: {get_param: VirtualIP}
        cinder_dsn: {list_join: ['', ['mysql://cinder:', {get_param: CinderPassword}, '@', {get_param: VirtualIP} , '/cinder']]}
        snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName}
        snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
      signal_transport: NO_SIGNAL
  BlockStorageConfig:
    type: OS::Heat::StructuredConfig
    properties:
      group: os-apply-config
      config:
        keystone:
          host: {get_input: controller_virtual_ip}
        cinder:
          db: {get_input: cinder_dsn}
          volume_size_mb:
            get_param: CinderLVMLoopDeviceSize
          iscsi-helper:
            get_param: CinderISCSIHelper
        snmpd:
          export_MIB: UCD-SNMP-MIB
          readonly_user_name: {get_input: snmpd_readonly_user_name}
          readonly_user_password: {get_input: snmpd_readonly_user_password}
        rabbit:
          host: {get_input: controller_virtual_ip}
          username: {get_param: RabbitUserName}
          password: {get_param: RabbitPassword}
        glance:
          host: {get_input: controller_virtual_ip}
          port: {get_param: GlancePort}
outputs:
  hosts_entry:
    value:
      str_replace:
        template: "IP HOST"
        params:
          IP: {get_attr: [BlockStorage, networks, ctlplane, 0]}
          HOST: {get_attr: [BlockStorage, name]}
  internal_api_ip_address:
    description: IP address of the server in the internal_api network
    value: {get_attr: [InternalApiPort, ip_address]}
  storage_ip_address:
    description: IP address of the server in the storage network
    value: {get_attr: [StoragePort, ip_address]}
  storage_mgmt_ip_address:
    description: IP address of the server in the storage_mgmt network
    value: {get_attr: [StorageMgmtPort, ip_address]}