[openstack-dev] [Murano] Errors on $.instance.deploy() ... WHEN RUNNING WITHOUT MURANO-AGENT RABBIT
Waines, Greg
Greg.Waines at windriver.com
Tue Mar 7 00:49:55 UTC 2017
Thanks Stan … we’ll try this out.
Greg.
From: Stan Lagun <slagun at mirantis.com>
Date: Monday, March 6, 2017 at 6:10 PM
To: "openstack-dev at lists.openstack.org" <openstack-dev at lists.openstack.org>, Greg Waines <Greg.Waines at windriver.com>
Cc: "Sun, Yicheng (Jerry)" <Jerry.Sun at windriver.com>
Subject: Re: [openstack-dev] [Murano] Errors on $.instance.deploy() ... WHEN RUNNING WITHOUT MURANO-AGENT RABBIT
Hi Greg,
this is yet another similar bug in another place.
Here is the fix for you: https://review.openstack.org/#/c/442198/
Also please consider using LinuxInstance class instead of LinuxMuranoInstance.
LinuxInstance doesn't try to build agent config and push it through cloud-init and thus should not
have such problems
Regards,
Stan
On March 6, 2017 at 6:51:11 AM, Waines, Greg (greg.waines at windriver.com<mailto:greg.waines at windriver.com>) wrote:
Hey Stan,
We tried doing the changes from https://review.openstack.org/#/c/441477/
i.e.
changing the first couple of lines in the __init__ of AgentListener in agent_listener.py
class AgentListener(object):
def __init__(self, name):
- self._enabled = False
- if CONF.engine.disable_murano_agent:
- return
- self._enabled = True
+ self._enabled = not CONF.engine.disable_murano_agent
self._results_queue = str('-execution-results-%s' % name.lower())
self._subscriptions = {}
self._receive_thread = None
But still get the following issue: ??? Any suggestions ???
Greg.
2017-03-06 14:24:01.870 28884 ERROR murano.common.engine [-]
AttributeError: 'Agent' object has no attribute '_queue'
Traceback (most recent call last):
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/Environment.yaml", line 120:9 in method deploy of type io.murano.Environment
$.applications.pselect($.deploy())
File "/tmp/murano-packages-cache/wrs.titanium.murano.examples.VmFip_NoAppDeploy/0.0.0/829a861c408a4516b0589d04cce23248/Classes/VmFip_NoAppDeploy.yaml", line 41:13 in method deploy of type wrs.titanium.murano.examples.VmFip_NoAppDeploy
$.instance.deploy()
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/resources/Instance.yaml", line 193:9 in method deploy of type io.murano.resources.Instance
$this.beginDeploy()
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/resources/Instance.yaml", line 131:28 in method beginDeploy of type io.murano.resources.Instance
$.prepareUserData()
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/resources/LinuxMuranoInstance.yaml", line 14:19 in method prepareUserData of type io.murano.resources.LinuxMuranoInstance
$.generateUserData()
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/resources/LinuxMuranoInstance.yaml", line 80:39 in method generateUserData of type io.murano.resources.LinuxMuranoInstance
$.agent.queueName()
File "/usr/lib/python2.7/site-packages/murano/dsl/helpers.py", line 58 in method evaluate
for d_key, d_value in six.iteritems(value))
File "/usr/lib/python2.7/site-packages/yaql/language/utils.py", line 122 in method __init__
self._d = dict(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/murano/dsl/helpers.py", line 58 in method <genexpr>
for d_key, d_value in six.iteritems(value))
File "/usr/lib/python2.7/site-packages/murano/dsl/helpers.py", line 53 in method evaluate
return value(context)
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_expression.py", line 85 in method __call__
return self._parsed_expression.evaluate(context=context)
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 165 in method evaluate
return self(utils.NO_VALUE, context, self.engine)
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 156 in method __call__
return super(Statement, self).__call__(receiver, context, engine)
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 37 in method __call__
return context(self.name<http://self.name>, engine, receiver, context)(*self.args)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 49 in method call
name, all_overloads, engine, receiver, data_context, args, kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 117 in method choose_overload
args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 117 in method <genexpr>
args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 113 in method <lambda>
and not isinstance(arg, expressions.Constant))
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 37 in method __call__
return context(self.name<http://self.name>, engine, receiver, context)(*self.args)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 51 in method call
result = delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 142 in method <lambda>
return lambda: delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_functions.py", line 183 in method op_dot
return operator(ctx2, receiver, expr)
File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py", line 323 in method func
new_name, engine, new_receiver, new_context)(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 51 in method call
result = delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 142 in method <lambda>
return lambda: delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_functions.py", line 183 in method op_dot
return operator(ctx2, receiver, expr)
File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py", line 323 in method func
new_name, engine, new_receiver, new_context)(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 51 in method call
result = delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 142 in method <lambda>
return lambda: delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/yaql/standard_library/system.py", line 34 in method op_dot
return expr(receiver)
File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py", line 269 in method func
engine, args, kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py", line 236 in method _call
result = value(receiver, context, engine)
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 37 in method __call__
return context(self.name<http://self.name>, engine, receiver, context)(*self.args)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 51 in method call
result = delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 142 in method <lambda>
return lambda: delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_integration.py", line 246 in method payload
__receiver, args, kwargs, __context, True), __context)
File "/usr/lib/python2.7/site-packages/murano/dsl/murano_method.py", line 230 in method invoke
self, this, context, args, kwargs, skip_stub)
File "/usr/lib/python2.7/site-packages/murano/dsl/executor.py", line 163 in method invoke_method
result = call()
File "/usr/lib/python2.7/site-packages/murano/dsl/executor.py", line 153 in method call
yaql_engine, context, native_this)(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 60 in method func
return self.get_delegate(receiver, engine, context, args, kwargs)()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_integration.py", line 192 in method payload
return body(__self.extension, *args, **kwargs)
File "/usr/lib/python2.7/site-packages/murano/engine/system/agent.py", line 71 in method queue_name
return self._queue
From: Stan Lagun <slagun at mirantis.com<mailto:slagun at mirantis.com>>
Reply-To: "openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>" <openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>>
Date: Friday, March 3, 2017 at 4:16 PM
To: "openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>" <openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>>
Subject: Re: [openstack-dev] [Murano] Errors on $.instance.deploy() ... WHEN RUNNING WITHOUT MURANO-AGENT RABBIT
Greg,
you're right in everything you said.
This was fixed in master in https://review.openstack.org/#/c/387993/ with intent to fix tests and unblock the gate. But since those tests were introduced in Ocata the fix was not backported to Newton.
So I've just did a partial packport of the root cause fix. Here it is: https://review.openstack.org/#/c/441477/
Sincerely yours,
Stan Lagun
Principal Software Engineer @ Mirantis
On Fri, Mar 3, 2017 at 11:49 AM, Waines, Greg <Greg.Waines at windriver.com<mailto:Greg.Waines at windriver.com>> wrote:
Looking for guidance on fixing the following error (end of email) that we are seeing when ‘deploying’ a very simple murano package/app on a Murano deployment WITHOUT the second rabbit server for murano-agent.
So we have a NEWTON-version of MURANO integrated into our OpenStack solution.
We have modified murano.conf:
…
# Disallow the use of murano-agent (boolean value)
disable_murano_agent = true
…
We are NOT even running the second rabbit server for communication with murano-agent.
With a very simple murano package/app, that basically just does a “ $.instance.deploy() “ in its deploy method of its main class.
( NOTE: I have tested this murano package/app on other Murano setups and it works … although those Murano setups had murano-agent and second rabbit enabled. )
And we get the following traceback error (see end of email).
Questions:
- I believe this is a valid configuration
- but does anyone actually run Murano in this type of setup ? I am guessing not many … so is this an upstream murano bug that I am seeing ? … that nobody else sees because basically no one runs in this mode ?
- if this should work, and works in other setups,
… any guidance on how to resolve / debug what is going on here ?
Thanks in advance,
Greg.
2017-03-03 17:46:35.175 12568 ERROR murano.common.engine [-]
AttributeError: 'AgentListener' object has no attribute '_results_queue'
Traceback (most recent call last):
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/Environment.yaml", line 120:9 in method deploy of type io.murano.Environment
$.applications.pselect($.deploy())
File "/tmp/murano-packages-cache/wrs.titanium.murano.examples.VmFip_NoAppDeploy/0.0.0/829a861c408a4516b0589d04cce23248/Classes/VmFip_NoAppDeploy.yaml", line 41:13 in method deploy of type wrs.titanium.murano.examples.VmFip_NoAppDeploy
$.instance.deploy()
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/resources/Instance.yaml", line 193:9 in method deploy of type io.murano.resources.Instance
$this.beginDeploy()
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/resources/Instance.yaml", line 131:28 in method beginDeploy of type io.murano.resources.Instance
$.prepareUserData()
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/resources/LinuxMuranoInstance.yaml", line 14:19 in method prepareUserData of type io.murano.resources.LinuxMuranoInstance
$.generateUserData()
File "/tmp/murano-packages-cache/io.murano/0.0.0/3317e706ecd1417bb748361a6a3385d2/Classes/resources/LinuxMuranoInstance.yaml", line 81:31 in method generateUserData of type io.murano.resources.LinuxMuranoInstance
$region.agentListener.queueName()
File "/usr/lib/python2.7/site-packages/murano/dsl/helpers.py", line 58 in method evaluate
for d_key, d_value in six.iteritems(value))
File "/usr/lib/python2.7/site-packages/yaql/language/utils.py", line 122 in method __init__
self._d = dict(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/murano/dsl/helpers.py", line 58 in method <genexpr>
for d_key, d_value in six.iteritems(value))
File "/usr/lib/python2.7/site-packages/murano/dsl/helpers.py", line 53 in method evaluate
return value(context)
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_expression.py", line 85 in method __call__
return self._parsed_expression.evaluate(context=context)
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 165 in method evaluate
return self(utils.NO_VALUE, context, self.engine)
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 156 in method __call__
return super(Statement, self).__call__(receiver, context, engine)
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 37 in method __call__
return context(self.name<http://self.name>, engine, receiver, context)(*self.args)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 49 in method call
name, all_overloads, engine, receiver, data_context, args, kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 117 in method choose_overload
args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 117 in method <genexpr>
args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 113 in method <lambda>
and not isinstance(arg, expressions.Constant))
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 37 in method __call__
return context(self.name<http://self.name>, engine, receiver, context)(*self.args)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 51 in method call
result = delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 142 in method <lambda>
return lambda: delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_functions.py", line 183 in method op_dot
return operator(ctx2, receiver, expr)
File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py", line 323 in method func
new_name, engine, new_receiver, new_context)(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 51 in method call
result = delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 142 in method <lambda>
return lambda: delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_functions.py", line 183 in method op_dot
return operator(ctx2, receiver, expr)
File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py", line 323 in method func
new_name, engine, new_receiver, new_context)(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 51 in method call
result = delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 142 in method <lambda>
return lambda: delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/yaql/standard_library/system.py", line 34 in method op_dot
return expr(receiver)
File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py", line 269 in method func
engine, args, kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py", line 236 in method _call
result = value(receiver, context, engine)
File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py", line 37 in method __call__
return context(self.name<http://self.name>, engine, receiver, context)(*self.args)
File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line 65 in method <lambda>
data_context, use_convention, function_filter)
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 51 in method call
result = delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line 142 in method <lambda>
return lambda: delegate()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_integration.py", line 246 in method payload
__receiver, args, kwargs, __context, True), __context)
File "/usr/lib/python2.7/site-packages/murano/dsl/murano_method.py", line 230 in method invoke
self, this, context, args, kwargs, skip_stub)
File "/usr/lib/python2.7/site-packages/murano/dsl/executor.py", line 163 in method invoke_method
result = call()
File "/usr/lib/python2.7/site-packages/murano/dsl/executor.py", line 153 in method call
yaql_engine, context, native_this)(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 60 in method func
return self.get_delegate(receiver, engine, context, args, kwargs)()
File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line 341 in method func
six.iteritems(keyword_args)))
File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_integration.py", line 192 in method payload
return body(__self.extension, *args, **kwargs)
File "/usr/lib/python2.7/site-packages/murano/engine/system/agent_listener.py", line 58 in method queue_name
return self._results_queue
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe<http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20170307/e05a9f7c/attachment.html>
More information about the OpenStack-dev
mailing list