[Openstack] Question regarding Nova in Havana

Yaguang Tang heut2008 at gmail.com
Wed Apr 16 05:54:35 UTC 2014


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 <
prashant.upadhyaya at aricent.com>:

>  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     : openstack at lists.openstack.org
> Unsubscribe :
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>
>


-- 
Tang Yaguang

Canonical Ltd. | www.ubuntu.com | www.canonical.com
Mobile:  +86 152 1094 6968
gpg key: 0x187F664F
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20140416/b2c1214b/attachment.html>


More information about the Openstack mailing list