[Bug 1525800] Re: [SRU] ceilometer client error when create Alarm

Igor Meneguitte Ávila igoravila at gmail.com
Fri May 6 19:38:01 UTC 2016


Hi,

It's not working.

  web_server_scaleup_policy:
    type: OS::Heat::ScalingPolicy
    properties:
      adjustment_type: change_in_capacity
      auto_scaling_group_id: {get_resource: asg}
      cooldown: 60
      scaling_adjustment: 1
  web_server_scaledown_policy:
    type: OS::Heat::ScalingPolicy
    properties:
      adjustment_type: change_in_capacity
      auto_scaling_group_id: {get_resource: asg}
      cooldown: 60
      scaling_adjustment: -1
  cpu_alarm_high:
    type: OS::Ceilometer::Alarm
    properties:
      description: Scale-up if the average CPU > 20% for 1 minute
      meter_name: cpu_util
      statistic: avg
      period: 60
      evaluation_periods: 1
      threshold: 20
      alarm_actions:
        - {get_attr: [web_server_scaleup_policy, alarm_url]}
      matching_metadata: {'metadata.user_metadata.stack': {get_param: "OS::stack_id"}}
      comparison_operator: gt
  cpu_alarm_low:
    type: OS::Ceilometer::Alarm
    properties:
      description: Scale-down if the average CPU < 5% for 10 minutes
      meter_name: cpu_util
      statistic: avg
      period: 600
      evaluation_periods: 1
      threshold: 5
      alarm_actions:
        - {get_attr: [web_server_scaledown_policy, alarm_url]}
      matching_metadata: {'metadata.user_metadata.stack': {get_param: "OS::stack_id"}}
      comparison_operator: lt

Regards,

Igor

** Attachment added: "log-stack-autoscaling.txt"
   https://bugs.launchpad.net/cloud-archive/liberty/+bug/1525800/+attachment/4657487/+files/log-stack-autoscaling.txt

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to Ubuntu Cloud Archive.
https://bugs.launchpad.net/bugs/1525800

Title:
  [SRU] ceilometer client error when create Alarm

Status in Ubuntu Cloud Archive:
  Invalid
Status in Ubuntu Cloud Archive liberty series:
  Fix Committed
Status in heat:
  Fix Released
Status in heat package in Ubuntu:
  Invalid
Status in heat source package in Wily:
  Fix Released

Bug description:
  [Impact]

   * Creating a stack with e.g. OS::Ceilometer::Alarm is failing because
  Ceilometer client is being passed incorrect parameters. This patch
  fixes heat ceilometer client.

  [Test Case]

   * deploy Openstack Liberty
   * create a stack using a HOT template containing e.g. http://paste.ubuntu.com/15928508/
   * check that stack goes to CREATE_COMPLETE status

  [Regression Potential]

   * None

  I use OpenStack Liberty deployed by instruction for CentOS7 from docs.openstack.org
  I'm trying to create OS::Ceilometer::Alarm resource

  In heat-engine.log i have error

  2015-12-14 12:59:00.696 6672 ERROR heat.engine.resource BadRequest:
  Expecting to find domain in project - the server could not comply with
  the request since it is either malformed or otherwise incorrect. The
  client is assumed to be in error. (HTTP 400) (Request-ID: req-
  3d4ab42b-213b-4141-bd28-f8dbb2b79e96)

  environment
  [root at controller ~]# yum list installed | grep heat
  openstack-heat-api.noarch       1:5.0.0-1.el7          @centos-openstack-liberty
  openstack-heat-api-cfn.noarch   1:5.0.0-1.el7          @centos-openstack-liberty
  openstack-heat-common.noarch    1:5.0.0-1.el7          @centos-openstack-liberty
  openstack-heat-engine.noarch    1:5.0.0-1.el7          @centos-openstack-liberty
  python-heatclient.noarch        0.8.0-1.el7            @centos-openstack-liberty
  [root at controller ~]# yum list installed | grep ceilometer
  openstack-ceilometer-alarm.noarch
  openstack-ceilometer-api.noarch 1:5.0.0-1.el7          @centos-openstack-liberty
  python-ceilometer.noarch        1:5.0.0-1.el7          @centos-openstack-liberty
  python-ceilometerclient.noarch  1.5.0-1.el7            @centos-openstack-liberty

  my suggestion, bug in
  heat/engine/clients/os/ceilometer.py

  class CeilometerClientPlugin(client_plugin.ClientPlugin):

      ...

      def _create(self):
      ...
     args = {
              'auth_url': con.auth_url,
              'service_type': self.METERING,
              'project_name': con.tenant,          <--- HERE!!!
              'token': lambda: self.auth_token,
              'endpoint_type': endpoint_type,
              'os_endpoint': endpoint,
              'cacert': self._get_client_option('ceilometer', 'ca_file'),
              'cert_file': self._get_client_option('ceilometer', 'cert_file'),
              'key_file': self._get_client_option('ceilometer', 'key_file'),
              'insecure': self._get_client_option('ceilometer', 'insecure')
          }

  if use
         'project_id': con.tenant_id,
  instead
        'project_name': con.tenant,
  it works fine

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1525800/+subscriptions



More information about the Ubuntu-openstack-bugs mailing list