Hi Yaguang,

[also posted this on dev]

Thanks, now one more question –

When I send the request out, I send it to the exchange ‘nova’ and routing key 
‘conductor’ (using RabbitMQ), this will take the message to the Nova Conductor 
on the controller, I have been able to do that much.
I do see that there is a ‘reply queue’ embedded in the above message so 
presumably the Nova Conductor will use that queue to send back the response, is 
that correct ?
If the above is correct, what is the ‘exchange’ used Nova Conductor to send 
back this response.

Regards
-Prashant

From: Yaguang Tang [mailto:[email protected]]
Sent: Wednesday, April 16, 2014 11:25 AM
To: Prashant Upadhyaya
Cc: [email protected]
Subject: Re: [Openstack] Question regarding Nova in Havana

Hi Prashant,
when the service starts, it checks if it has already registered in the 
database, if not, it will update the db to create an item for itself. you can 
see from the nova/service.py

149     def start(self):
150         verstr = version.version_string_with_package()
151         LOG.audit(_('Starting %(topic)s node (version %(version)s)'),
152                   {'topic': self.topic, 'version': verstr})
153         self.basic_config_check()
154         self.manager.init_host()
155         self.model_disconnected = False
156         ctxt = context.get_admin_context()
157         try:
158             self.service_ref = self.conductor_api.service_get_by_args(ctxt,
159                     self.host, self.binary)
160             self.service_id = self.service_ref['id']
161         except exception.NotFound:
162             self.service_ref = self._create_service_ref(ctxt)
I think you need to add this logic to your fake nova-compute service.


2014-04-16 12:04 GMT+08:00 Prashant Upadhyaya 
<[email protected]<mailto:[email protected]>>:
Hi,

I am writing a Compute Node Simulator.
The idea is that I would write a piece of software using C which honors the 
RabbitMQ interface towards the Controller, but will not actually do the real 
thing – everything on the Compute Node will be simulated by my simulator 
software.

The  problem I am facing, that I have not been able to get my simulated CN 
listed in the output of
nova-manage service list

I am on Havana, and my simulator is sending a periodic  ‘service_update’ and 
‘compute_node_update’ RPC messages to the ‘nova’ exchange and the ‘conductor’ 
routing key.
I can manipulate the above messages at will to fool the controller.
(I observe the messages from a real CN and take cues from there to construct a 
fake one from my simulator)

Question is – what causes the controller to add a new Nova Compute in its 
database, is it the ‘service_update’ RPC or something else.

Hopefully you can help me reverse engineer the interface.

Regards
-Prashant




"DISCLAIMER: This message is proprietary to Aricent and is intended solely for 
the use of the individual to whom it is addressed. It may contain privileged or 
confidential information and should not be circulated or used for any purpose 
other than for what it is intended. If you have received this message in error, 
please notify the originator immediately. If you are not the intended 
recipient, you are notified that you are strictly prohibited from using, 
copying, altering, or disclosing the contents of this message. Aricent accepts 
no responsibility for loss or damage arising from the use of the information 
transmitted by this email including damage from virus."

_______________________________________________
Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
Post to     : 
[email protected]<mailto:[email protected]>
Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack



--
Tang Yaguang

Canonical Ltd. | www.ubuntu.com<http://www.ubuntu.com> | 
www.canonical.com<http://www.canonical.com>
Mobile:  +86 152 1094 6968
gpg key: 0x187F664F



"DISCLAIMER: This message is proprietary to Aricent and is intended solely for 
the use of the individual to whom it is addressed. It may contain privileged or 
confidential information and should not be circulated or used for any purpose 
other than for what it is intended. If you have received this message in error, 
please notify the originator immediately. If you are not the intended 
recipient, you are notified that you are strictly prohibited from using, 
copying, altering, or disclosing the contents of this message. Aricent accepts 
no responsibility for loss or damage arising from the use of the information 
transmitted by this email including damage from virus."
_______________________________________________
Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
Post to     : [email protected]
Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack

Reply via email to