[Openstack-community] Beyond the wiki page: planning an International Community Portal

2012-05-09 Thread Stefano Maffulli
Hello folks,

with the large growth of OpenStack internationally comes the need to
have a better system to list the international resources for new users
of OpenStack. At the moment we have a couple of wiki pages like
http://wiki.openstack.org/OpenStackUserGroups, this list and the map on
the /community page on openstack.org. All that content is available only
in English. We need more.

I would like to discuss the needs of the international community and get
a new system in place in the next few weeks.

Basic needs

  • A directory of OpenStack user groups (OSUG) that is more flexible
and appealing than a wiki page.
  • A system to get in touch with members (all members or just the
coordinators/leaders?) of the international communities.

Features

  • Register users using SSO
∘ as a user I would like to be able to associate my profile from
Launchpad, Linkedin or Google to the site
  • Support content in multiple languages (switch list and automatic
recognition via browser agent configuration)
  • Support roles: managers of the groups can add resources, members can
sign up as members, anonymous can read all content
  • Show activity from all groups in my own language on the portal home page
  • Directory of OSUGroups, with geographic representation
∘ be able to view the groups on a chart
∘ display also the full list of groups
  • Manage content (pages) of generic interest
∘ to host content like how to start a group, general, policies,
trademark stuff, generic icons, etc
  • Per each group,
∘ allow users to add events, each group will expose its ical feed
∘ show to list additional resources for the group: mailing lists,
forums, wiki pages, home page, url of blogs,
∘ import RSS feed from blogs to aggregate content on groups page
∘ display photostreams from flickr and such on the home page

Questions:
  • is that all we need?
  • do we want to host and provide web apps for any of the local groups
(mlists, blog, forums, etc)?
  • can we reuse code from Ubuntu Loco portal?
https://code.launchpad.net/loco-team-portal The code is tightly
integrated in Launchpad, local teams need to be created as Launchpad
Teams, it uses Launchpad as OpenID provider (bugs included) but it's
already there, it's a django app
  • What other tools can we use for this and would you volunteer to
manage such tool?

I'm interested in your opinions.
/stef

-- 
Mailing list: https://launchpad.net/~openstack-community
Post to : openstack-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack-community
More help   : https://help.launchpad.net/ListHelp


[Openstack] nova-manage network documentation

2012-05-09 Thread Michaël Van de Borne

Hi all,

I might be missing something, but I can't find any comprehensive 
documentation of the 'nova-manage network' subcommand.


The only doc entries I find about this are examples, but no list of 
flags, neither in 'man nova-manage', nor in 'nova-manage --help' nor in 
http://nova.openstack.org/runnova/nova.manage.html


any ideas?

thanks,

michaël


--
Michaël Van de Borne
RD Engineer, SOA team, CETIC
Phone: +32 (0)71 49 07 45 Mobile: +32 (0)472 69 57 16, Skype: mikemowgli
www.cetic.be, rue des Frères Wright, 29/3, B-6041 Charleroi


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] nova-manage network documentation

2012-05-09 Thread Razique Mahroua
Hi Michaël,would you please fill a bug herehttps://bugs.launchpad.net/openstack-manualsSo the team could check/ update the docRegards,Razique
Nuage  Co - Razique Mahrouarazique.mahr...@gmail.com

Le 9 mai 2012 à 09:40, Michaël Van de Borne a écrit :Hi all,I might be missing something, but I can't find any comprehensive documentation of the 'nova-manage network' subcommand.The only doc entries I find about this are examples, but no list of flags, neither in 'man nova-manage', nor in 'nova-manage --help' nor in http://nova.openstack.org/runnova/nova.manage.htmlany ideas?thanks,michaël-- Michaël Van de BorneRD Engineer, SOA team, CETICPhone: +32 (0)71 49 07 45 Mobile: +32 (0)472 69 57 16, Skype: mikemowgliwww.cetic.be, rue des Frères Wright, 29/3, B-6041 Charleroi___Mailing list: https://launchpad.net/~openstackPost to : openstack@lists.launchpad.netUnsubscribe : https://launchpad.net/~openstackMore help : https://help.launchpad.net/ListHelp___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] nova-manage network documentation

2012-05-09 Thread Michaël Van de Borne

  
  
ok, done here:
https://bugs.launchpad.net/openstack-manuals/+bug/996970

cheers,

michal




Michal Van de Borne
RD Engineer, SOA team, CETIC
Phone: +32 (0)71 49 07 45 Mobile: +32 (0)472 69 57 16, Skype: mikemowgli
www.cetic.be, rue des Frres Wright, 29/3, B-6041 Charleroi


Le 09/05/2012 09:50, Razique Mahroua a crit:
Hi Michal,
  would you please fill a bug here
  https://bugs.launchpad.net/openstack-manuals
  
  
  So the team could check/ update the doc
  Regards,
  Razique
  

  Nuage
 Co - Razique Mahroua
  razique.mahr...@gmail.com





  Le 9 mai 2012  09:40, Michal Van de Borne a crit :
  
  
Hi all,
  
  I might be missing something, but I can't find any
  comprehensive documentation of the 'nova-manage network'
  subcommand.
  
  The only doc entries I find about this are examples, but
  no list of flags, neither in 'man nova-manage', nor in
  'nova-manage --help' nor in http://nova.openstack.org/runnova/nova.manage.html
  
  any ideas?
  
  thanks,
  
  michal
  
  
  -- 
  Michal Van de Borne
  RD Engineer, SOA team, CETIC
  Phone: +32 (0)71 49 07 45 Mobile: +32 (0)472 69 57 16,
  Skype: mikemowgli
  www.cetic.be,
  rue des Frres Wright, 29/3, B-6041 Charleroi
  
  
  ___
  Mailing list: https://launchpad.net/~openstack
  Post to : openstack@lists.launchpad.net
  Unsubscribe : https://launchpad.net/~openstack
  More help : https://help.launchpad.net/ListHelp

  


  

  

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] nova-manage network documentation

2012-05-09 Thread Dan Wendlandt
The flags can be viewed using the --help command (see below).

Dan


danwent@ubuntu:~/nova$ bin/nova-manage network --help
--help does not match any options:
 create
delete
list
 modify
quantum_list

danwent@ubuntu:~/nova$ bin/nova-manage network create --help
Usage: nova-manage network create args [options]

Options:
  -h, --helpshow this help message and exit
  --label=label   Label for network (ex: public)
  --fixed_range_v4=x.x.x.x/yy
IPv4 subnet (ex: 10.0.0.0/8)
  --num_networks=number
Number of networks to create
  --network_size=number
Number of IPs per network
  --vlan=vlan id  vlan id
  --vpn=VPN_START   vpn start
  --fixed_range_v6=FIXED_RANGE_V6
IPv6 subnet (ex: fe80::/64
  --gateway=GATEWAY gateway
  --gateway_v6=GATEWAY_V6
ipv6 gateway
  --bridge=bridge VIFs on this network are connected to this bridge
  --bridge_interface=bridge interface
the bridge is connected to this interface
  --multi_host='T'|'F'
Multi host
  --dns1=DNS Address  First DNS
  --dns2=DNS Address  Second DNS
  --uuid=network uuid
Network UUID
  --fixed_cidr=x.x.x.x/yy
IPv4 subnet for fixed IPS (ex: 10.20.0.0/16)
  --project_id=project id
Project id
  --priority=number   Network interface priority




On Wed, May 9, 2012 at 12:40 AM, Michaël Van de Borne 
michael.vandebo...@cetic.be wrote:

 Hi all,

 I might be missing something, but I can't find any comprehensive
 documentation of the 'nova-manage network' subcommand.

 The only doc entries I find about this are examples, but no list of flags,
 neither in 'man nova-manage', nor in 'nova-manage --help' nor in
 http://nova.openstack.org/**runnova/nova.manage.htmlhttp://nova.openstack.org/runnova/nova.manage.html

 any ideas?

 thanks,

 michaël


 --
 Michaël Van de Borne
 RD Engineer, SOA team, CETIC
 Phone: +32 (0)71 49 07 45 Mobile: +32 (0)472 69 57 16, Skype: mikemowgli
 www.cetic.be, rue des Frères Wright, 29/3, B-6041 Charleroi


 __**_
 Mailing list: 
 https://launchpad.net/~**openstackhttps://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : 
 https://launchpad.net/~**openstackhttps://launchpad.net/~openstack
 More help   : 
 https://help.launchpad.net/**ListHelphttps://help.launchpad.net/ListHelp




-- 
~~~
Dan Wendlandt
Nicira, Inc: www.nicira.com
twitter: danwendlandt
~~~
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Day, Phil
Hi Doug,

 I think you missed my main point, which was that a topic exchange does
 not impose a limitation that only one client can consume a given
 notification.  That's only true if each client is consuming from the
 same queue bound to the exchange.

So just to be clear, if I understand you correctly within the nova service/rpc 
abstraction layers the code is set up so that all services do bind to the same 
queue, and hence we get the round-robin delivery.
But, if someone wanted to write a separate notification consumer so that they 
didn't block anyone else from seeing the same messages then they (the consumer) 
should create a new queue on the existing topic exchange.

Is that correct - and is there any worked example of doing this ?

I thought within the nova code both the exchange and topic queues were set up 
by the consumer (so for example all compute_managers try to create the 
compute exchange and topic queue, but its only created by the first one and 
the others connect to the same queue).   In that context I'm finding it hard to 
see how to change this model to have multiple notify.info topic queues into 
the same exchange ?

Cheers,
Phil




From: openstack-bounces+philip.day=hp@lists.launchpad.net 
[mailto:openstack-bounces+philip.day=hp@lists.launchpad.net] On Behalf Of 
Doug Hellmann
Sent: 08 May 2012 23:34
To: Russell Bryant
Cc: openstack@lists.launchpad.net
Subject: Re: [Openstack] [nova] why does notification use a topic exchange 
instead of fanout?


On Tue, May 8, 2012 at 6:04 PM, Russell Bryant 
rbry...@redhat.commailto:rbry...@redhat.com wrote:
On 05/08/2012 05:59 PM, Doug Hellmann wrote:
 Here is a relevant section pulled out of the amqp 0-9-1 spec:

3.1.3.3 The Topic Exchange Type

The topic exchange type works as follows:

1. A message queue binds to the exchange using a routing
   pattern, P.
2. A publisher sends the exchange a message with the routing
   key R.
3. The message is passed to the message queue if R matches P.

The routing key used for a topic exchange MUST consist of zero or
more words delimited by dots. Each word may contain the letters A-Z
and a-z and digits 0-9.

The routing pattern follows the same rules as the routing key with
the addition that * matches a single word, and # matches zero or
more words. Thus the routing pattern *.stock.# matches the routing
keys usd.stock and eur.stock.db but not stock.nasdaq.

 In nova, for a given topic such as 'scheduler', all of the consumers are
 binding to the same queue on the topic exchange, resulting in
 round-robin delivery to each of the consumers.  If instead you make a
 new queue, you can get your own copy of each message.

 There is an additional benefit of using a topic exchange here.  The
 topic used for notifications is 'notifications.priority'.  That means
 that when you create your queue, you can set it up to receive all
 notifications, or only notifications of a certain priority.


 Topic exchanges make a lot of sense for messages that should only be
 consumed once, such as tasks. Notifications are different. Lots of
 different clients might want to know that some event happened in the
 system. The way things are in Nova today, they can't. The first client
 who consumes a notification message will prevent all of the other
 clients from seeing that message at all.
I think you missed my main point, which was that a topic exchange does
not impose a limitation that only one client can consume a given
notification.  That's only true if each client is consuming from the
same queue bound to the exchange.

Yes, that wasn't obvious from any of the kombu documentation I've seen so far. 
I'll keep looking.

Thanks,
Doug


 I can change Nova's notification system to use a fanout exchange (in
 impl_kombu.py changing the exchange type used by NotifyPublisher), but
 before I submit a patch I want to make sure the current implementation
 using a topic exchange wasn't selected deliberately for some reason.
I think using a fanout exchange would be a downgrade.  As I mentioned
before, a topic exchange allows you to create a queue to get all
notifications or only notifications of a specific priority.  If the
exchange type is changed to fanout, it's everybody gets everything, and
that's it.

--
Russell Bryant

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] Munin plugins for essex (nova, keystone, glance)

2012-05-09 Thread Abaakouk Mehdi

Hi,

I have recently updated and created some munin plugin for nova, 
keystone, glance of the essex release.


The following metrics are retrieved:
- glance: total/used size by tenant
- glance: number of images per status
- keystone: number of tenant enabled and total tenants
- nova: total/allocated/associated number of floating ip
- nova: number of each king of nova services are available
- nova: number of launched instances
- nova: number instances per power_state/vm_state/vcpus/root_gb... (any 
field in nova instances table)


Let me known if other interesting metrics can be retrieved or if 
something is wrong with this one.


This plugins can be found here:
- https://github.com/sileht/openstack-munin

Or directly in munin contrib repo:
- https://github.com/munin-monitoring/contrib


Regards,

--
Mehdi ABAAKOUK
sil...@sileht.net



___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Kiall Mac Innes
Your own queue listener should attempt to declare the exchange, using the
same settings as Nova does.

If the exchange exists, its a noop. Otherwise it's created for you.

After that, if you start up Nova, it will do the same and reuse your
exchange.

Obviously this works both ways, and either nova or your code can declare
the exchange.

AMQP is designed to be a configuration-less protocol, where resources are
configured by the first consumer attempting to use them.

Thanks,
Kiall

Sent from my phone.
On May 9, 2012 9:52 a.m., Day, Phil philip@hp.com wrote:

 Hi Doug,

 ** **

  I think you missed my main point, which was that a topic exchange does
  not impose a limitation that only one client can consume a given
  notification.  That's only true if each client is consuming from the
  same queue bound to the exchange.

 ** **

 So just to be clear, if I understand you correctly within the nova
 service/rpc abstraction layers the code is set up so that all services do
 bind to the same queue, and hence we get the round-robin delivery.

 But, if someone wanted to write a separate notification consumer so that
 they didn’t block anyone else from seeing the same messages then they (the
 consumer) should create a new queue on the existing topic exchange.

 ** **

 Is that correct – and is there any worked example of doing this ?

 ** **

 I thought within the nova code both the exchange and topic queues were set
 up by the consumer (so for example all compute_managers try to create the
 “compute” exchange and topic queue, but its only created by the first one
 and the others connect to the same queue).   In that context I’m finding it
 hard to see how to change this model to have multiple “notify.info” topic
 queues into the same exchange ?

 ** **

 Cheers,

 Phil

 ** **

 ** **

 ** **

 ** **

 *From:* openstack-bounces+philip.day=hp@lists.launchpad.net [mailto:
 openstack-bounces+philip.day=hp@lists.launchpad.net] *On Behalf Of *Doug
 Hellmann
 *Sent:* 08 May 2012 23:34
 *To:* Russell Bryant
 *Cc:* openstack@lists.launchpad.net
 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

 ** **

 ** **

 On Tue, May 8, 2012 at 6:04 PM, Russell Bryant rbry...@redhat.com wrote:
 

 On 05/08/2012 05:59 PM, Doug Hellmann wrote:
  Here is a relevant section pulled out of the amqp 0-9-1 spec:
 
 3.1.3.3 The Topic Exchange Type
 
 The topic exchange type works as follows:
 
 1. A message queue binds to the exchange using a routing
pattern, P.
 2. A publisher sends the exchange a message with the routing
key R.
 3. The message is passed to the message queue if R matches P.
 
 The routing key used for a topic exchange MUST consist of zero or
 more words delimited by dots. Each word may contain the letters
 A-Z
 and a-z and digits 0-9.
 
 The routing pattern follows the same rules as the routing key with
 the addition that * matches a single word, and # matches zero or
 more words. Thus the routing pattern *.stock.# matches the routing
 keys usd.stock and eur.stock.db but not stock.nasdaq.
 
  In nova, for a given topic such as 'scheduler', all of the consumers
 are
  binding to the same queue on the topic exchange, resulting in
  round-robin delivery to each of the consumers.  If instead you make a
  new queue, you can get your own copy of each message.
 
  There is an additional benefit of using a topic exchange here.  The
  topic used for notifications is 'notifications.priority'.  That
 means
  that when you create your queue, you can set it up to receive all
  notifications, or only notifications of a certain priority.
 
 
  Topic exchanges make a lot of sense for messages that should only be
  consumed once, such as tasks. Notifications are different. Lots of
  different clients might want to know that some event happened in the
  system. The way things are in Nova today, they can't. The first client
  who consumes a notification message will prevent all of the other
  clients from seeing that message at all.

 I think you missed my main point, which was that a topic exchange does
 not impose a limitation that only one client can consume a given
 notification.  That's only true if each client is consuming from the
 same queue bound to the exchange.

 ** **

 Yes, that wasn't obvious from any of the kombu documentation I've seen so
 far. I'll keep looking.

 ** **

 Thanks,

 Doug

  


  I can change Nova's notification system to use a fanout exchange (in
  impl_kombu.py changing the exchange type used by NotifyPublisher), but
  before I submit a patch I want to make sure the current implementation
  using a topic exchange wasn't selected deliberately for some reason.

 I think using a fanout exchange would be a 

Re: [Openstack] Munin plugins for essex (nova, keystone, glance)

2012-05-09 Thread Razique Mahroua
Amazing workcongratulations and thank you.I'm myself working on zabbix templates. Maybe we could share our effort and create a monitoring repo for openstack (bash scripts, monitoring templates, etc..)what you guys think ?
Nuage  Co - Razique Mahrouarazique.mahr...@gmail.com

Le 9 mai 2012 à 11:31, Abaakouk Mehdi a écrit :Hi,I have recently updated and created some munin plugin for nova, keystone, glance of the essex release.The following metrics are retrieved:- glance: total/used size by tenant- glance: number of images per status- keystone: number of tenant enabled and total tenants- nova: total/allocated/associated number of floating ip- nova: number of each king of nova services are available- nova: number of launched instances- nova: number instances per power_state/vm_state/vcpus/root_gb... (any field in nova instances table)Let me known if other interesting metrics can be retrieved or if something is wrong with this one.This plugins can be found here:- https://github.com/sileht/openstack-muninOr directly in munin contrib repo:- https://github.com/munin-monitoring/contribRegards,-- Mehdi ABAAKOUKsil...@sileht.net___Mailing list: https://launchpad.net/~openstackPost to : openstack@lists.launchpad.netUnsubscribe : https://launchpad.net/~openstackMore help : https://help.launchpad.net/ListHelp___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] dimenssion of vnc console window

2012-05-09 Thread Staicu Gabriel
Hi,

I found a way to change the dimenssion of the window image for the vnc console.
The file to be changed is: 
/usr/share/pyshared/horizon/dashboards/nova/templates/nova/instances_and_volumes/instances/_detail_vnc.html.
The parameters are: width=1280 height=900

Regards,
Gabriel
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Swift Object Storage

2012-05-09 Thread Juan J. Martinez
On 09/05/12 04:02, Sid Sudhi wrote:
 
 I am trying to write a script to upload large sized files. I am
 encountering the following limitations - can some one shed some light if
 they can help me over come the issue?
 
 When files are big and they uploaded with chunks these chunks do not
 delete automatically. And the file composed from these chunks has no
 size metadata.

I reported a bug about container object listing:

https://bugs.launchpad.net/swift/+bug/874119

You should get the right information if you run a GET or HEAD request
over the object (check the bug report for an example).

 Any suggestions?
 

AFAIK the chunks need to be there. There are two different things:

 - objects parts (chunks)
 - manifest file (that tells swift how to assemble the file)

Regards,

Juan

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Day, Phil
OK, get that so far - so both consumers need to declare and use the same 
exchange.

But If I understand the next step right, to get multiple consumers of  info 
notification messages they would all need to create separate 
notifications.info queues into that exchange.And isn't that exactly what 
Nova currently does to create a shared queue ?

Phil

From: Kiall Mac Innes [mailto:ki...@managedit.ie]
Sent: 09 May 2012 10:51
To: Day, Phil
Cc: openstack@lists.launchpad.net; Russell Bryant; Doug Hellmann
Subject: Re: [Openstack] [nova] why does notification use a topic exchange 
instead of fanout?


Your own queue listener should attempt to declare the exchange, using the same 
settings as Nova does.

If the exchange exists, its a noop. Otherwise it's created for you.

After that, if you start up Nova, it will do the same and reuse your exchange.

Obviously this works both ways, and either nova or your code can declare the 
exchange.

AMQP is designed to be a configuration-less protocol, where resources are 
configured by the first consumer attempting to use them.

Thanks,
Kiall

Sent from my phone.
On May 9, 2012 9:52 a.m., Day, Phil 
philip@hp.commailto:philip@hp.com wrote:
Hi Doug,

 I think you missed my main point, which was that a topic exchange does
 not impose a limitation that only one client can consume a given
 notification.  That's only true if each client is consuming from the
 same queue bound to the exchange.

So just to be clear, if I understand you correctly within the nova service/rpc 
abstraction layers the code is set up so that all services do bind to the same 
queue, and hence we get the round-robin delivery.
But, if someone wanted to write a separate notification consumer so that they 
didn't block anyone else from seeing the same messages then they (the consumer) 
should create a new queue on the existing topic exchange.

Is that correct - and is there any worked example of doing this ?

I thought within the nova code both the exchange and topic queues were set up 
by the consumer (so for example all compute_managers try to create the 
compute exchange and topic queue, but its only created by the first one and 
the others connect to the same queue).   In that context I'm finding it hard to 
see how to change this model to have multiple notify.infohttp://notify.info 
topic queues into the same exchange ?

Cheers,
Phil




From: 
openstack-bounces+philip.day=hp@lists.launchpad.netmailto:hp@lists.launchpad.net
 
[mailto:openstack-bounces+philip.daymailto:openstack-bounces%2Bphilip.day=hp@lists.launchpad.netmailto:hp@lists.launchpad.net]
 On Behalf Of Doug Hellmann
Sent: 08 May 2012 23:34
To: Russell Bryant
Cc: openstack@lists.launchpad.netmailto:openstack@lists.launchpad.net
Subject: Re: [Openstack] [nova] why does notification use a topic exchange 
instead of fanout?


On Tue, May 8, 2012 at 6:04 PM, Russell Bryant 
rbry...@redhat.commailto:rbry...@redhat.com wrote:
On 05/08/2012 05:59 PM, Doug Hellmann wrote:
 Here is a relevant section pulled out of the amqp 0-9-1 spec:

3.1.3.3 The Topic Exchange Type

The topic exchange type works as follows:

1. A message queue binds to the exchange using a routing
   pattern, P.
2. A publisher sends the exchange a message with the routing
   key R.
3. The message is passed to the message queue if R matches P.

The routing key used for a topic exchange MUST consist of zero or
more words delimited by dots. Each word may contain the letters A-Z
and a-z and digits 0-9.

The routing pattern follows the same rules as the routing key with
the addition that * matches a single word, and # matches zero or
more words. Thus the routing pattern *.stock.# matches the routing
keys usd.stock and eur.stock.db but not stock.nasdaq.

 In nova, for a given topic such as 'scheduler', all of the consumers are
 binding to the same queue on the topic exchange, resulting in
 round-robin delivery to each of the consumers.  If instead you make a
 new queue, you can get your own copy of each message.

 There is an additional benefit of using a topic exchange here.  The
 topic used for notifications is 'notifications.priority'.  That means
 that when you create your queue, you can set it up to receive all
 notifications, or only notifications of a certain priority.


 Topic exchanges make a lot of sense for messages that should only be
 consumed once, such as tasks. Notifications are different. Lots of
 different clients might want to know that some event happened in the
 system. The way things are in Nova today, they can't. The first client
 who consumes a notification message will prevent all of the other
 clients from seeing that message at all.
I think you missed my main point, which was that a topic exchange does
not impose a limitation that only one client can consume a given

Re: [Openstack] Pending review

2012-05-09 Thread Christoph Thiel
On Wed, May 09, 2012 at 05:38:44AM +, Vaze, Mandar wrote:
 https://review.openstack.org/#/c/6829/
 
 Kevin Mitchell has reviewed as Looks good to me
 Additional reviews and approval required

This looks like it should also go to stable/essex, once it got merged to
master?


Best
Christoph
-- 
Christoph Thiel, Project Manager, SUSE Cloud Infrastructure

SUSE LINUX Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg)

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Kiall Mac Innes
Kinda! The queue has a name, but that name has no bearing on the set of
messages received.

If you create a queue called MyCustomNotificationQueue, you can bind that
to the notifications exchange using the notifications.info routing key.

(I'm guessing some of the names here.. I know AMQP, and not the specific
naming nova uses!)

Nova just happens to use the same queue name and routing key. I believe
this is causing the confusion.

Does this make sense?

Anyway - The RabbitMQ docs probably explain it better than I..
http://www.rabbitmq.com/tutorials/tutorial-five-python.html

Thanks,
Kiall


On Wed, May 9, 2012 at 11:30 AM, Day, Phil philip@hp.com wrote:

 OK, get that so far – so both consumers need to declare and use the same
 exchange.

 ** **

 But If I understand the next step right, to get multiple consumers of
  info notification messages they would all need to create separate “
 notifications.info” queues into that exchange.And isn’t that exactly
 what Nova currently does to create a shared queue ?

 ** **

 Phil

 ** **

 *From:* Kiall Mac Innes [mailto:ki...@managedit.ie]
 *Sent:* 09 May 2012 10:51
 *To:* Day, Phil
 *Cc:* openstack@lists.launchpad.net; Russell Bryant; Doug Hellmann

 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

 ** **

 Your own queue listener should attempt to declare the exchange, using the
 same settings as Nova does. 

 If the exchange exists, its a noop. Otherwise it's created for you.

 After that, if you start up Nova, it will do the same and reuse your
 exchange.

 Obviously this works both ways, and either nova or your code can declare
 the exchange.

 AMQP is designed to be a configuration-less protocol, where resources are
 configured by the first consumer attempting to use them.

 Thanks,
 Kiall

 Sent from my phone.

 On May 9, 2012 9:52 a.m., Day, Phil philip@hp.com wrote:

 Hi Doug,

  

  I think you missed my main point, which was that a topic exchange does
  not impose a limitation that only one client can consume a given
  notification.  That's only true if each client is consuming from the
  same queue bound to the exchange.

  

 So just to be clear, if I understand you correctly within the nova
 service/rpc abstraction layers the code is set up so that all services do
 bind to the same queue, and hence we get the round-robin delivery.

 But, if someone wanted to write a separate notification consumer so that
 they didn’t block anyone else from seeing the same messages then they (the
 consumer) should create a new queue on the existing topic exchange.

  

 Is that correct – and is there any worked example of doing this ?

  

 I thought within the nova code both the exchange and topic queues were set
 up by the consumer (so for example all compute_managers try to create the
 “compute” exchange and topic queue, but its only created by the first one
 and the others connect to the same queue).   In that context I’m finding it
 hard to see how to change this model to have multiple “notify.info” topic
 queues into the same exchange ?

  

 Cheers,

 Phil

  

  

  

  

 *From:* openstack-bounces+philip.day=hp@lists.launchpad.net [mailto:
 openstack-bounces+philip.day=hp@lists.launchpad.net] *On Behalf Of *Doug
 Hellmann
 *Sent:* 08 May 2012 23:34
 *To:* Russell Bryant
 *Cc:* openstack@lists.launchpad.net
 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

  

  

 On Tue, May 8, 2012 at 6:04 PM, Russell Bryant rbry...@redhat.com wrote:
 

 On 05/08/2012 05:59 PM, Doug Hellmann wrote:
  Here is a relevant section pulled out of the amqp 0-9-1 spec:
 
 3.1.3.3 The Topic Exchange Type
 
 The topic exchange type works as follows:
 
 1. A message queue binds to the exchange using a routing
pattern, P.
 2. A publisher sends the exchange a message with the routing
key R.
 3. The message is passed to the message queue if R matches P.
 
 The routing key used for a topic exchange MUST consist of zero or
 more words delimited by dots. Each word may contain the letters
 A-Z
 and a-z and digits 0-9.
 
 The routing pattern follows the same rules as the routing key with
 the addition that * matches a single word, and # matches zero or
 more words. Thus the routing pattern *.stock.# matches the routing
 keys usd.stock and eur.stock.db but not stock.nasdaq.
 
  In nova, for a given topic such as 'scheduler', all of the consumers
 are
  binding to the same queue on the topic exchange, resulting in
  round-robin delivery to each of the consumers.  If instead you make a
  new queue, you can get your own copy of each message.
 
  There is an additional benefit of using a 

Re: [Openstack] Pending review

2012-05-09 Thread Vaze, Mandar
Yes, it should.
I'll tag it for essex back-port once this review is approved and code is merged 
to master.

-Mandar

-Original Message-
From: openstack-bounces+mandar.vaze=nttdata@lists.launchpad.net 
[mailto:openstack-bounces+mandar.vaze=nttdata@lists.launchpad.net] On 
Behalf Of Christoph Thiel
Sent: Wednesday, May 09, 2012 4:04 PM
To: openstack@lists.launchpad.net
Subject: Re: [Openstack] Pending review

On Wed, May 09, 2012 at 05:38:44AM +, Vaze, Mandar wrote:
 https://review.openstack.org/#/c/6829/
 
 Kevin Mitchell has reviewed as Looks good to me
 Additional reviews and approval required

This looks like it should also go to stable/essex, once it got merged to master?


Best
Christoph
--
Christoph Thiel, Project Manager, SUSE Cloud Infrastructure

SUSE LINUX Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg)

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp

__
Disclaimer:This email and any attachments are sent in strictest confidence for 
the sole use of the addressee and may contain legally privileged, confidential, 
and proprietary data.  If you are not the intended recipient, please advise the 
sender by replying promptly to this email and then delete and destroy this 
email and any attachments without any further use, copying or forwarding

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] Floating IPs don't get dissociated after delete

2012-05-09 Thread Bilel Msekni

Hi , 
I am having this problem just like many others.
Each time I delete a VM, the floating IP doesn't get automatically dissociated, 
has anyone encountred this problem and solved it ?  
  ___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Munin plugins for essex (nova, keystone, glance)

2012-05-09 Thread Jérôme Gallard
Very useful !

Thanks,
Jérôme

On Wed, May 9, 2012 at 11:58 AM, Razique Mahroua
razique.mahr...@gmail.comwrote:

 Amazing work
 congratulations and thank you.

 I'm myself working on zabbix templates. Maybe we could share our effort
 and create a monitoring repo for openstack (bash scripts, monitoring
 templates, etc..)

 what you guys think ?

 *Nuage  Co - Razique Mahroua** *
 razique.mahr...@gmail.com


 Le 9 mai 2012 à 11:31, Abaakouk Mehdi a écrit :

 Hi,

 I have recently updated and created some munin plugin for nova, keystone,
 glance of the essex release.

 The following metrics are retrieved:
 - glance: total/used size by tenant
 - glance: number of images per status
 - keystone: number of tenant enabled and total tenants
 - nova: total/allocated/associated number of floating ip
 - nova: number of each king of nova services are available
 - nova: number of launched instances
 - nova: number instances per power_state/vm_state/vcpus/root_gb... (any
 field in nova instances table)

 Let me known if other interesting metrics can be retrieved or if something
 is wrong with this one.

 This plugins can be found here:
 - https://github.com/sileht/openstack-munin

 Or directly in munin contrib repo:
 - https://github.com/munin-monitoring/contrib


 Regards,

 --
 Mehdi ABAAKOUK
 sil...@sileht.net



 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp



 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] [Metering] Bootstrapping, first counter implementation

2012-05-09 Thread Julien Danjou
Hi there,

I've added a first script that's able to connect to the AMQP
notification queue using Nova RPC module. Later it will be able to treat
them when we'll know what to do with them.

  https://review.stackforge.org/#/c/26/
  https://review.stackforge.org/#/c/27/
  https://review.stackforge.org/#/c/28/

I wish I could use nova.service.Service, but the code is too RPC
oriented so that it can't grab notification from the notifier, so for
now the daemon is rather simple.

-- 
Julien Danjou
// eNovance  http://enovance.com
// ✉ julien.dan...@enovance.com  ☎ +33 1 49 70 99 81

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Swift on Webob-1.2 anyone?

2012-05-09 Thread Chmouel Boudjnah
Hi Pete,

On Wed, May 9, 2012 at 4:45 AM, Pete Zaitcev zait...@redhat.com wrote:
 on adapting Swift for WebOb 1.2 and if a patch is available somewhere.
 I see Ionut fixed lp:984042, but clearly it wasn't enough.
 If nobody's done it yet, I suppose I could take a swing at it. New webob

I started doing that sometime ago (~6 month) and abandoned working on
it since some of the changes were pretty intrusive[1] with the way
swift works and webob 1.2 was in beta at that time (and still is).

The challenge if you are taking a stab at it would probably be to
support webob 1.1* and 1.2 at the same time in the code.

Cheers,
Chmouel.

[1] I can't remember the details.

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Floating IPs don't get dissociated after delete

2012-05-09 Thread Steven Dake
On 05/09/2012 07:20 AM, Bilel Msekni wrote:
 Hi , 
 
 I am having this problem just like many others.
 
 Each time I delete a VM, the floating IP doesn't get automatically
 dissociated, has anyone encountred this problem and solved it ?
 
 
 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp

Bilel,

We had this problem in openstack during our floating ip implementation
of heat (http://www.heat-api.org).  We solved it by using the floating
ip.delete api in nova.  See:

https://github.com/heat-api/heat/blob/master/heat/engine/eip.py
line 118

The program flow on delete is:
delete an instance
wait for instance to disappear
delete floating ip

Regards
-steve

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] External API definition

2012-05-09 Thread Nick Barcet
On 05/08/2012 08:27 AM, Nick Barcet wrote:
[..]

Thinking about this, I think we need to expend the API a bit to reflect
the evolutions of the schema that we decided last week.  Here are my
proposals:

 * Requests allow to
   GET account_id list

change to: GET [user_id|project_id|source] list

   GET list of counter_type
   GET list of events per account
 optional start and end for counter_datetime
 optional counter_type

change to: GET list of events per [user_id|project_id|source]
optional start and end for counter_datetime
optional counter_type

   GET sum of (counter_volume, counter_duration) for counter_type and
 account_id
 optional start and end for counter_datetime

   GET sum of (counter_volume, counter_duration) for counter_type and
[user_id|project_id|source]
 optional start and end for counter_datetime

Hope this makes sense.

Another item that we need to discuss is extensibility of this API.

Nick




signature.asc
Description: OpenPGP digital signature
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] ceilometer (java implementation)

2012-05-09 Thread Doug Hellmann
On Tue, May 8, 2012 at 7:19 PM, Luis Gervaso l...@woorea.es wrote:

 Hi,

 I have uploaded a toy version of ceilometer (java implementation).

 It does implement the first two counters (instance : rabbitmq listener and
 cpu : polling from libvirt)

 i need more clarification on the meaining:

 counter_volume
 counter_duration
 counter_datetaime

 I hope this helps to figure out how to agreggate these data.

 http://github.com/woorea/ceilometer-java


Nice!

I have also been experimenting. I have some Python code in
https://github.com/dhellmann/metering-prototype that listens for
notifications related to instances (create, delete, exists) and converts
them to counter output (see spy.py). There is also a pair of scripts for
recording an event stream and playing it back (useful for testing, see
recorder.py and player.py). I don't have any libvirt polling, yet, though.

In the course of looking at the notifications being generated for different
scenarios, I discovered that the instance delete messages do not have any
duration information right now. I don't know if that is a bug, or if the
idea is to figure out the durations from looking at the most recent
exists event. What do other people think?

Doug
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Doug Hellmann
On Wed, May 9, 2012 at 6:42 AM, Kiall Mac Innes ki...@managedit.ie wrote:

 Kinda! The queue has a name, but that name has no bearing on the set of
 messages received.


 If you create a queue called MyCustomNotificationQueue, you can bind
 that to the notifications exchange using the notifications.info
 routing key.

 (I'm guessing some of the names here.. I know AMQP, and not the specific
 naming nova uses!)


notifications.info is right.



 Nova just happens to use the same queue name and routing key. I believe
 this is causing the confusion.


Exactly. I ended up creating a separate queue for each client that I have
and setting them to auto-delete when the client disconnects. That way I can
have as many clients connecting and listening as I want. The code is in
https://github.com/dhellmann/metering-prototype if you want to take a look.





 Does this make sense?

 Anyway - The RabbitMQ docs probably explain it better than I..
 http://www.rabbitmq.com/tutorials/tutorial-five-python.html

 Thanks,
 Kiall



 On Wed, May 9, 2012 at 11:30 AM, Day, Phil philip@hp.com wrote:

 OK, get that so far – so both consumers need to declare and use the same
 exchange.

 ** **

 But If I understand the next step right, to get multiple consumers of
  info notification messages they would all need to create separate “
 notifications.info” queues into that exchange.And isn’t that exactly
 what Nova currently does to create a shared queue ?

 ** **

 Phil

 ** **

 *From:* Kiall Mac Innes [mailto:ki...@managedit.ie]
 *Sent:* 09 May 2012 10:51
 *To:* Day, Phil
 *Cc:* openstack@lists.launchpad.net; Russell Bryant; Doug Hellmann

 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

 ** **

 Your own queue listener should attempt to declare the exchange, using the
 same settings as Nova does. 

 If the exchange exists, its a noop. Otherwise it's created for you.

 After that, if you start up Nova, it will do the same and reuse your
 exchange.

 Obviously this works both ways, and either nova or your code can declare
 the exchange.

 AMQP is designed to be a configuration-less protocol, where resources are
 configured by the first consumer attempting to use them.

 Thanks,
 Kiall

 Sent from my phone.

 On May 9, 2012 9:52 a.m., Day, Phil philip@hp.com wrote:

 Hi Doug,

  

  I think you missed my main point, which was that a topic exchange does
  not impose a limitation that only one client can consume a given
  notification.  That's only true if each client is consuming from the
  same queue bound to the exchange.

  

 So just to be clear, if I understand you correctly within the nova
 service/rpc abstraction layers the code is set up so that all services do
 bind to the same queue, and hence we get the round-robin delivery.

 But, if someone wanted to write a separate notification consumer so that
 they didn’t block anyone else from seeing the same messages then they (the
 consumer) should create a new queue on the existing topic exchange.

  

 Is that correct – and is there any worked example of doing this ?

  

 I thought within the nova code both the exchange and topic queues were
 set up by the consumer (so for example all compute_managers try to create
 the “compute” exchange and topic queue, but its only created by the first
 one and the others connect to the same queue).   In that context I’m
 finding it hard to see how to change this model to have multiple “
 notify.info” topic queues into the same exchange ?

  

 Cheers,

 Phil

  

  

  

  

 *From:* openstack-bounces+philip.day=hp@lists.launchpad.net [mailto:
 openstack-bounces+philip.day=hp@lists.launchpad.net] *On Behalf Of *Doug
 Hellmann
 *Sent:* 08 May 2012 23:34
 *To:* Russell Bryant
 *Cc:* openstack@lists.launchpad.net
 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

  

  

 On Tue, May 8, 2012 at 6:04 PM, Russell Bryant rbry...@redhat.com
 wrote:

 On 05/08/2012 05:59 PM, Doug Hellmann wrote:
  Here is a relevant section pulled out of the amqp 0-9-1 spec:
 
 3.1.3.3 The Topic Exchange Type
 
 The topic exchange type works as follows:
 
 1. A message queue binds to the exchange using a routing
pattern, P.
 2. A publisher sends the exchange a message with the routing
key R.
 3. The message is passed to the message queue if R matches P.
 
 The routing key used for a topic exchange MUST consist of zero or
 more words delimited by dots. Each word may contain the letters
 A-Z
 and a-z and digits 0-9.
 
 The routing pattern follows the same rules as the routing key
 with
 the addition that * matches a single word, and # matches zero or
 more words. Thus the routing pattern 

Re: [Openstack] [Metering] External API definition

2012-05-09 Thread Doug Hellmann
On Tue, May 8, 2012 at 8:43 PM, Nick Barcet nick.bar...@canonical.comwrote:

 On 05/08/2012 11:39 AM, Doug Hellmann wrote:
 [..]
  * Requests must be authenticated (separate from keystone, or only
 linked
  to accounting type account)
 
 
  What is the motivation for authenticating with a service other than
  keystone?

 The only thing I am trying to express here is that that profiles that
 have access to other OpenStack components should not necessarily have
 access to metering information.  This information should be accessible
 only a few select users which group may or may not intersect with users
 stored in Keystone already.


I see. Is it enough to say that the API is meant for admin users only, or
does that still imply more access than we want to grant?



 Nick



___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] Bootstrapping, first counter implementation

2012-05-09 Thread Doug Hellmann
What is the difference between review.stackforge.org and
review.openstack.org and why aren't we using the latter?

On Wed, May 9, 2012 at 11:13 AM, Julien Danjou
julien.dan...@enovance.comwrote:

 Hi there,

 I've added a first script that's able to connect to the AMQP
 notification queue using Nova RPC module. Later it will be able to treat
 them when we'll know what to do with them.

  https://review.stackforge.org/#/c/26/
  https://review.stackforge.org/#/c/27/
  https://review.stackforge.org/#/c/28/

 I wish I could use nova.service.Service, but the code is too RPC
 oriented so that it can't grab notification from the notifier, so for
 now the daemon is rather simple.

 --
 Julien Danjou
 // eNovance  http://enovance.com
 // ✉ julien.dan...@enovance.com  ☎ +33 1 49 70 99 81

 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] External API definition

2012-05-09 Thread Nick Barcet
On 05/09/2012 08:36 AM, Doug Hellmann wrote:
 
 
 On Tue, May 8, 2012 at 8:43 PM, Nick Barcet nick.bar...@canonical.com
 mailto:nick.bar...@canonical.com wrote:
 
 On 05/08/2012 11:39 AM, Doug Hellmann wrote:
 [..]
  * Requests must be authenticated (separate from keystone, or
 only linked
  to accounting type account)
 
 
  What is the motivation for authenticating with a service other than
  keystone?
 
 The only thing I am trying to express here is that that profiles that
 have access to other OpenStack components should not necessarily have
 access to metering information.  This information should be accessible
 only a few select users which group may or may not intersect with users
 stored in Keystone already.
 
 
 I see. Is it enough to say that the API is meant for admin users only,
 or does that still imply more access than we want to grant?

I don't see the point to try to restrict admins from this, as it would
be mostly pointless in the end, but I do see the need to define a type
of account which only right is to consult this information without any
other privilege.

Nick




signature.asc
Description: OpenPGP digital signature
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] External API definition

2012-05-09 Thread Doug Hellmann
On Wed, May 9, 2012 at 11:27 AM, Nick Barcet nick.bar...@canonical.comwrote:

 On 05/08/2012 08:27 AM, Nick Barcet wrote:
 [..]

 Thinking about this, I think we need to expend the API a bit to reflect
 the evolutions of the schema that we decided last week.  Here are my
 proposals:

  * Requests allow to
GET account_id list

 change to: GET [user_id|project_id|source] list


Does the [value|value] syntax mean choose one or combine? I assume
choose one and you are using square brackets because parens are used in
some of the other queries.



GET list of counter_type
GET list of events per account
  optional start and end for counter_datetime
  optional counter_type

 change to: GET list of events per [user_id|project_id|source]
 optional start and end for counter_datetime
optional counter_type


Users may cross projects, so I'm not sure it makes sense to ask for the
events generated by a user without restricting it by the project. At the
very least we may need to allow them to specify user_id or project_id or
both.



GET sum of (counter_volume, counter_duration) for counter_type and
  account_id
  optional start and end for counter_datetime

   GET sum of (counter_volume, counter_duration) for counter_type and
 [user_id|project_id|source]
  optional start and end for counter_datetime

 Hope this makes sense.

 Another item that we need to discuss is extensibility of this API.

 Nick



 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Translation and Internationalization in OpenStack

2012-05-09 Thread Monty Taylor


On 05/08/2012 09:56 PM, Thierry Carrez wrote:
 Gabriel Hurley wrote:
 Having worked with all three tools, I would strongly suggest Transifex, 
 particularly given that we as a community have to do almost no work to 
 maintain it, it's the only tool that supports OpenStack as a project hub 
 with shared teams and management, and it offers us a strong crowdsourced 
 translation community.
 
 Getting a strong crowdsourced translation community is the most
 important aspect to me. We can relatively easily bridge the
 tooling/integration gap, but we can't invent a translation community :)
 
 I know for a fact that Launchpad has a magic translation community (just
 pushing stuff there makes it translated). If Transifex's community is as
 efficient and gives us better integration, then we should go for it.
 
 As per Thierry's call for volunteers, I will throw my hat in the ring to 
 spearhead translation efforts in OpenStack for the time being.
 
 Great! I'm happy to defer the tool decision to the people that will own
 and push that work forward ;)

Same here. Transifex seems like it meets our needs - and if it's got a
champion who wants to do the work, then stellar!

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Netstack] About python versions that we are planning to support

2012-05-09 Thread Robert Kukura
[I'm moving this thread to the openstack list because it potentially
impacts openstack-common.]

On 05/07/2012 11:53 PM, Maru Newby wrote:
 Hi,
 
 Python 2.4 compatibility is required, but only for agent code.  Agent
 code needs to be deployable on Xen dom0, which uses CentoOS 5.5 and only
 supports 2.4 out of the box.

Maru,

I'm very concerned about the potential of this XenServer/XCP requirement
to interfere with making the various Quantum agents first-class
OpenStack services by utilizing current and future openstack-common
facilities for configuration, logging, DB, RPC, etc.. Are there any
other possible ways forward here? How is the nova compute service
currently handled for XenServer? Could a fully supported version of
python be parallel-installed on dom0? Could the actual quantum agent run
somewhere else and remotely execute commands on dom0? Or does the python
2.4 compatibility requirement need to be applied to openstack-common?

Thanks,

-Bob

 
 Both quantum and nova have agent code that needs to be deployed to dom0,
 but up until now both projects have relied on savvy reviewers and bug
 reports to ensure compatibility.  I'm working on it, though.  I'll
 be adding a tox build to quantum that will run agent tests - and agent
 tests only - under 2.4, and then openstack-ci can add a jenkins job to
 run that build on CentOS and gate merges.  
 
 The relevant bug: https://bugs.launchpad.net/quantum/+bug/995278
 
 Thanks,
 
 
 Maru
 
 
 On 2012-05-07, at 6:54 PM, Yong Sheng Gong wrote:
 
 Hi,
 I see some ones are trying to support python2.4. But our tox.ini under
 quantum is only supporting test py26 and py27.
 So my question is if we are trying to support py24. In addition I
 remember that we will support py30.

 As far as I know, py2.4 does not support many new syntaxes introduced
 by py2.5+. Other projects such as nova, horizon are also adopting some
 of these new syntaxes. Moreover some third party components such as
 Django 1.4 required by horizon are only tested under py2.6 and py2.7.

 So if py2.4 is out of our scope, we should stop that trying. If we
 need py2.4, we have to make all of us know it and keep our code 2.4
 compatible.

 Thanks

 Yong Sheng Gong

 -- 
 Mailing list: https://launchpad.net/~netstack
 Post to : netst...@lists.launchpad.net
 mailto:netst...@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~netstack
 More help   : https://help.launchpad.net/ListHelp
 
 
 


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Swift on Webob-1.2 anyone?

2012-05-09 Thread Ionuț Arțăriși

On 05/09/2012 05:45 AM, Pete Zaitcev wrote:

I ran .unittests on a box with python-webob-1.2b3 and it throws left
and right: errors=72, failures=6. I'm wondering if anyone is working
on adapting Swift for WebOb 1.2 and if a patch is available somewhere.
I see Ionut fixed lp:984042, but clearly it wasn't enough.

If nobody's done it yet, I suppose I could take a swing at it. New webob
is required to address the S3-with-colon problem lp:936998.

-- Pete


We started at 1.2b3, but saw too many failing unittests so we downgraded 
to 1.1.1 which we now have working.


It would be great to have it on 1.2b3, though.

-Ionuț

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] route problem in multi-host enviroment

2012-05-09 Thread 彭勇
there are two zone with fix IP:

Zone1  10.8.0.0/23
Zone2  10.9.0.0/23


there are some network host in each zone, and the vm in same zone can
own different  gateway.

if i need to route VMs in zone1  with VMs in Zone2, how can set it?



-- 
彭勇 (Peng Yong)

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] schema and counter definitions

2012-05-09 Thread Tomasz Paszkowski
Here is the simplified version of my code (without ampq support,
counter stored directly to mysql db).

https://github.com/ss7pro/rescnt

Code is started from main.py which is constantly collecting counters
from libvirt and storing them in a mysql database.


On Mon, May 7, 2012 at 9:25 PM, Tomasz Paszkowski ss7...@gmail.com wrote:
 On Mon, May 7, 2012 at 5:21 PM, Loic Dachary l...@enovance.com wrote:
 Hi Tomasz,
 Hi


 I could not agree more and this is the reason why I/O shows in the list of 
 meters shown in http://wiki.openstack.org/EfficientMetering (c5) disk IO in 
 megabyte per second has a high impact on the service availability and could 
 be billed separately .

 Yes but for disk drives I/O (number of read/write ops) are the key
 resource usage information. It's very hard to setup a billing model
 for disk drive usage on bandwidth as low bandwidth disk operations
 (small random read/writes) can utilize disk drive more than huge
 sequential reads/writes. I need also to mention that AWS is also
 charging for I/O in their volume service.



 It looks like you already have a codebase that could be useful for the 
 metering implementation. Would you be willing to share it ?

 Yes. Just give me few days.

 --
 Tomasz Paszkowski
 SS7, Asterisk, SAN, Datacenter, Cloud Computing
 +48500166299



-- 
Tomasz Paszkowski
SS7, Asterisk, SAN, Datacenter, Cloud Computing
+48500166299

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] External API definition

2012-05-09 Thread Nick Barcet


Doug Hellmann doug.hellm...@dreamhost.com wrote:

On Wed, May 9, 2012 at 11:27 AM, Nick Barcet
nick.bar...@canonical.comwrote:

 On 05/08/2012 08:27 AM, Nick Barcet wrote:
 [..]

 Thinking about this, I think we need to expend the API a bit to
reflect
 the evolutions of the schema that we decided last week.  Here are my
 proposals:

  * Requests allow to
GET account_id list

 change to: GET [user_id|project_id|source] list


Does the [value|value] syntax mean choose one or combine? I assume
choose one and you are using square brackets because parens are used
in some of the other queries.

You assumed correctly :)


GET list of counter_type
GET list of events per account
  optional start and end for counter_datetime
  optional counter_type

 change to: GET list of events per [user_id|project_id|source]
 optional start and end for counter_datetime
optional counter_type


Users may cross projects, so I'm not sure it makes sense to ask for the
events generated by a user without restricting it by the project. At
the very least we may need to allow them to specify user_id or project_id
or both.

Good point. Thanks for catching this.


GET sum of (counter_volume, counter_duration) for counter_type
and
  account_id
  optional start and end for counter_datetime

   GET sum of (counter_volume, counter_duration) for counter_type and
 [user_id|project_id|source]
  optional start and end for counter_datetime

 Hope this makes sense.

 Another item that we need to discuss is extensibility of this API.

 Nick


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] Bootstrapping, first counter implementation

2012-05-09 Thread heut2008
stackForge is a Gerrit review and Jenkins CI setup similar to that of
the main OpenStack project but for use with projects that are not
under the main OpenStack umbrella.

Any project can be added to StackForge as long as it is related to
OpenStack in some way.



2012/5/9 Doug Hellmann doug.hellm...@dreamhost.com:
 What is the difference between review.stackforge.org and
 review.openstack.org and why aren't we using the latter?


 On Wed, May 9, 2012 at 11:13 AM, Julien Danjou julien.dan...@enovance.com
 wrote:

 Hi there,

 I've added a first script that's able to connect to the AMQP
 notification queue using Nova RPC module. Later it will be able to treat
 them when we'll know what to do with them.

  https://review.stackforge.org/#/c/26/
  https://review.stackforge.org/#/c/27/
  https://review.stackforge.org/#/c/28/

 I wish I could use nova.service.Service, but the code is too RPC
 oriented so that it can't grab notification from the notifier, so for
 now the daemon is rather simple.

 --
 Julien Danjou
 // eNovance                      http://enovance.com
 // ✉ julien.dan...@enovance.com  ☎ +33 1 49 70 99 81

 ___
 Mailing list: https://launchpad.net/~openstack
 Post to     : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp



 ___
 Mailing list: https://launchpad.net/~openstack
 Post to     : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] ceilometer (java implementation)

2012-05-09 Thread Luis Gervaso
That's fantastic!

What I mind is that the counters only should gather event info.

Maybe multiple counters listening, collecting info about the system. But
only one persist the event.

Other process agreggates the data and creates different
views/reports/billing, this should be outside of openstack (since it
depends on the business rules, not depends on the infrastructure)

The agreggator, also should offer an api for polling or can be configured
throught drivers to push the the 3rd
systems

Now, in my implementation i'm putting all the stuff on a directory but it
can be as well:

- AMQP
- SQL / NoSQL

(the persistent layer shold be interchangeable)

So as response to your duration question, this think is out scope for the
counter tasks.



On Wed, May 9, 2012 at 5:30 PM, Doug Hellmann
doug.hellm...@dreamhost.comwrote:



 On Tue, May 8, 2012 at 7:19 PM, Luis Gervaso l...@woorea.es wrote:

 Hi,

 I have uploaded a toy version of ceilometer (java implementation).

 It does implement the first two counters (instance : rabbitmq listener
 and cpu : polling from libvirt)

 i need more clarification on the meaining:

 counter_volume
 counter_duration
 counter_datetaime

 I hope this helps to figure out how to agreggate these data.

 http://github.com/woorea/ceilometer-java


 Nice!

 I have also been experimenting. I have some Python code in
 https://github.com/dhellmann/metering-prototype that listens for
 notifications related to instances (create, delete, exists) and converts
 them to counter output (see spy.py). There is also a pair of scripts for
 recording an event stream and playing it back (useful for testing, see
 recorder.py and player.py). I don't have any libvirt polling, yet, though.

 In the course of looking at the notifications being generated for
 different scenarios, I discovered that the instance delete messages do not
 have any duration information right now. I don't know if that is a bug, or
 if the idea is to figure out the durations from looking at the most recent
 exists event. What do other people think?

 Doug




-- 
---
Luis Alberto Gervaso Martin
Woorea Solutions, S.L
CEO  CTO
mobile: (+34) 627983344
luis@ luis.gerv...@gmail.comwoorea.es
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] dimenssion of vnc console window

2012-05-09 Thread Lorin Hochstein

On May 9, 2012, at 6:06 AM, Staicu Gabriel wrote:

 Hi,
 
 I found a way to change the dimenssion of the window image for the vnc 
 console.
 The file to be changed is: 
 /usr/share/pyshared/horizon/dashboards/nova/templates/nova/instances_and_volumes/instances/_detail_vnc.html.
 The parameters are: width=1280 height=900
 
 Regards,
 Gabriel

Thanks, Gabriel.

I proposed adding this info to the docs: https://review.openstack.org/7278


Take care,

Lorin
--
Lorin Hochstein
Lead Architect - Cloud Services
Nimbis Services, Inc.
www.nimbisservices.com


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] Bootstrapping, first counter implementation

2012-05-09 Thread Doug Hellmann
Ah, got it. Thanks!

On Wed, May 9, 2012 at 12:45 PM, heut2008 heut2...@gmail.com wrote:

 stackForge is a Gerrit review and Jenkins CI setup similar to that of
 the main OpenStack project but for use with projects that are not
 under the main OpenStack umbrella.

 Any project can be added to StackForge as long as it is related to
 OpenStack in some way.



 2012/5/9 Doug Hellmann doug.hellm...@dreamhost.com:
  What is the difference between review.stackforge.org and
  review.openstack.org and why aren't we using the latter?
 
 
  On Wed, May 9, 2012 at 11:13 AM, Julien Danjou 
 julien.dan...@enovance.com
  wrote:
 
  Hi there,
 
  I've added a first script that's able to connect to the AMQP
  notification queue using Nova RPC module. Later it will be able to treat
  them when we'll know what to do with them.
 
   https://review.stackforge.org/#/c/26/
   https://review.stackforge.org/#/c/27/
   https://review.stackforge.org/#/c/28/
 
  I wish I could use nova.service.Service, but the code is too RPC
  oriented so that it can't grab notification from the notifier, so for
  now the daemon is rather simple.
 
  --
  Julien Danjou
  // eNovance  http://enovance.com
  // ✉ julien.dan...@enovance.com  ☎ +33 1 49 70 99 81
 
  ___
  Mailing list: https://launchpad.net/~openstack
  Post to : openstack@lists.launchpad.net
  Unsubscribe : https://launchpad.net/~openstack
  More help   : https://help.launchpad.net/ListHelp
 
 
 
  ___
  Mailing list: https://launchpad.net/~openstack
  Post to : openstack@lists.launchpad.net
  Unsubscribe : https://launchpad.net/~openstack
  More help   : https://help.launchpad.net/ListHelp
 

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] Fwd: ceilometer (java implementation)

2012-05-09 Thread Luis Gervaso
Forgot to copy the list

-- Forwarded message --
From: Luis Gervaso l...@woorea.es
Date: Wed, May 9, 2012 at 7:14 PM
Subject: Re: [Openstack] ceilometer (java implementation)
To: Doug Hellmann doug.hellm...@dreamhost.com


I asked for these fields in my previous email, they are not clear enough.

After analyze the problem, i ended that metrics can not be calculated per
event. We need at least 2 events to calculate the duration (start/end) in
some metrics. We can afford this on the counter processes, but it requires
an update of the previous pesisted start event.

So as we can calculate this info everywhere, and i don't like updates on
the counters logic i'm calculating the duration as part of
agreggation/mediation process (this will be only a view of the raw data).

This way we maintain a very simple logic on the counters:

* counters listen for specific events
* the interpretation of raw data can be outside




On Wed, May 9, 2012 at 7:01 PM, Doug Hellmann
doug.hellm...@dreamhost.comwrote:



 On Wed, May 9, 2012 at 12:46 PM, Luis Gervaso l...@woorea.es wrote:

 That's fantastic!

 What I mind is that the counters only should gather event info.

 Maybe multiple counters listening, collecting info about the system. But
 only one persist the event.


 That makes sense. It seems like we will need to split the event-based
 processing from the polling. The agent that runs on the compute node should
 poll libvirt (and any other services on that node) and generate counter
 messages using a metering exchange. A separate set of daemons running in
 a more central location will watch messages on the metering exchange and
 save them to the database. Those same processes can watch for notification
 messages and convert them directly to metering data to be written to the
 database. That saves the extra traffic from notification messages resulting
 in several extra metering messages.



 Other process agreggates the data and creates different
 views/reports/billing, this should be outside of openstack (since it
 depends on the business rules, not depends on the infrastructure)


 If I understand Nick's proposal for the API, we will have some minimal
 aggregation there but you are right that any other interpretation will
 probably need to be handled by a custom app.



 The agreggator, also should offer an api for polling or can be configured
 throught drivers to push the the 3rd
 systems

 Now, in my implementation i'm putting all the stuff on a directory but it
 can be as well:

 - AMQP
 - SQL / NoSQL

 (the persistent layer shold be interchangeable)

 So as response to your duration question, this think is out scope for the
 counter tasks.


 I think you misunderstood my question. The duration to which I referred
 was the field in the counter schema (counter_duration). Only the exists
 notification for instances includes enough information to calculate the
 duration. The create notification should result in a 0 duration, so
 that can be ignored. The delete notification should record the data since
 the end of the last cycle, but does not today (at least it does not seem
 to).






 On Wed, May 9, 2012 at 5:30 PM, Doug Hellmann 
 doug.hellm...@dreamhost.com wrote:



 On Tue, May 8, 2012 at 7:19 PM, Luis Gervaso l...@woorea.es wrote:

 Hi,

 I have uploaded a toy version of ceilometer (java implementation).

 It does implement the first two counters (instance : rabbitmq listener
 and cpu : polling from libvirt)

 i need more clarification on the meaining:

 counter_volume
 counter_duration
 counter_datetaime

 I hope this helps to figure out how to agreggate these data.

 http://github.com/woorea/ceilometer-java


 Nice!

 I have also been experimenting. I have some Python code in
 https://github.com/dhellmann/metering-prototype that listens for
 notifications related to instances (create, delete, exists) and converts
 them to counter output (see spy.py). There is also a pair of scripts for
 recording an event stream and playing it back (useful for testing, see
 recorder.py and player.py). I don't have any libvirt polling, yet, though.

 In the course of looking at the notifications being generated for
 different scenarios, I discovered that the instance delete messages do not
 have any duration information right now. I don't know if that is a bug, or
 if the idea is to figure out the durations from looking at the most recent
 exists event. What do other people think?

 Doug




 --
 ---
 Luis Alberto Gervaso Martin
 Woorea Solutions, S.L
 CEO  CTO
 mobile: (+34) 627983344
 luis@ luis.gerv...@gmail.comwoorea.es





-- 
---
Luis Alberto Gervaso Martin
Woorea Solutions, S.L
CEO  CTO
mobile: (+34) 627983344
luis@ luis.gerv...@gmail.comwoorea.es




-- 
---
Luis Alberto Gervaso Martin
Woorea Solutions, S.L
CEO  CTO
mobile: (+34) 627983344
luis@ luis.gerv...@gmail.comwoorea.es

Re: [Openstack] Swift on Webob-1.2 anyone?

2012-05-09 Thread Pete Zaitcev
On Wed, 9 May 2012 16:14:48 +0100
Chmouel Boudjnah chmo...@chmouel.com wrote:

 The challenge if you are taking a stab at it would probably be to
 support webob 1.1* and 1.2 at the same time in the code.

I noticed that too. 1.1.1 made some intermediate choices that are
difficult to reconcile, namely throwing warnings that break tests.
The None values that they sprinkled over 1.2 ironically help.

Fedora is likely to ship 1.1 in F17, so I guess I have to deal
with it somehow. What a pain.

-- Pete

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] Bootstrapping, first counter implementation

2012-05-09 Thread Loic Dachary
On 05/09/2012 05:38 PM, Doug Hellmann wrote:
 What is the difference between review.stackforge.org 
 http://review.stackforge.org and review.openstack.org 
 http://review.openstack.org and why aren't we using the latter?
There is no technical difference (to my knowledge ;-). Only 
review.stackforge.org http://review.stackforge.org is for projects that are 
not incubated yet.

Cheers

 On Wed, May 9, 2012 at 11:13 AM, Julien Danjou julien.dan...@enovance.com 
 mailto:julien.dan...@enovance.com wrote:

 Hi there,

 I've added a first script that's able to connect to the AMQP
 notification queue using Nova RPC module. Later it will be able to treat
 them when we'll know what to do with them.

  https://review.stackforge.org/#/c/26/
  https://review.stackforge.org/#/c/27/
  https://review.stackforge.org/#/c/28/

 I wish I could use nova.service.Service, but the code is too RPC
 oriented so that it can't grab notification from the notifier, so for
 now the daemon is rather simple.

 --
 Julien Danjou
 // eNovance  http://enovance.com
 // ? julien.dan...@enovance.com mailto:julien.dan...@enovance.com  ? 
 +33 1 49 70 99 81 tel:%2B33%201%2049%2070%2099%2081

 ___
 Mailing list: https://launchpad.net/~openstack 
 https://launchpad.net/%7Eopenstack
 Post to : openstack@lists.launchpad.net 
 mailto:openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack 
 https://launchpad.net/%7Eopenstack
 More help   : https://help.launchpad.net/ListHelp




 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp


-- 
Loïc Dachary Chief Research Officer
// eNovance labs   http://labs.enovance.com
// ? l...@enovance.com  ? +33 1 49 70 99 82

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Craig Vyvial
You can allow nova to send notifications to multiple topics by setting this
option in your nova.conf.

## (ListOpt) AMQP topic used for Nova notifications
notification_topics=notifications,metering,monitoring

This will allow you to consume all the messages from a different service.

On Wed, May 9, 2012 at 10:34 AM, Doug Hellmann
doug.hellm...@dreamhost.comwrote:



 On Wed, May 9, 2012 at 6:42 AM, Kiall Mac Innes ki...@managedit.iewrote:

 Kinda! The queue has a name, but that name has no bearing on the set of
 messages received.


 If you create a queue called MyCustomNotificationQueue, you can bind
 that to the notifications exchange using the notifications.info
 routing key.

 (I'm guessing some of the names here.. I know AMQP, and not the specific
 naming nova uses!)


 notifications.info is right.



 Nova just happens to use the same queue name and routing key. I believe
 this is causing the confusion.


 Exactly. I ended up creating a separate queue for each client that I have
 and setting them to auto-delete when the client disconnects. That way I can
 have as many clients connecting and listening as I want. The code is in
 https://github.com/dhellmann/metering-prototype if you want to take a
 look.





 Does this make sense?

 Anyway - The RabbitMQ docs probably explain it better than I..
 http://www.rabbitmq.com/tutorials/tutorial-five-python.html

 Thanks,
 Kiall



 On Wed, May 9, 2012 at 11:30 AM, Day, Phil philip@hp.com wrote:

 OK, get that so far – so both consumers need to declare and use the same
 exchange.

 ** **

 But If I understand the next step right, to get multiple consumers of
  info notification messages they would all need to create separate “
 notifications.info” queues into that exchange.And isn’t that
 exactly what Nova currently does to create a shared queue ?

 ** **

 Phil

 ** **

 *From:* Kiall Mac Innes [mailto:ki...@managedit.ie]
 *Sent:* 09 May 2012 10:51
 *To:* Day, Phil
 *Cc:* openstack@lists.launchpad.net; Russell Bryant; Doug Hellmann

 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

 ** **

 Your own queue listener should attempt to declare the exchange, using
 the same settings as Nova does. 

 If the exchange exists, its a noop. Otherwise it's created for you.

 After that, if you start up Nova, it will do the same and reuse your
 exchange.

 Obviously this works both ways, and either nova or your code can declare
 the exchange.

 AMQP is designed to be a configuration-less protocol, where resources
 are configured by the first consumer attempting to use them.

 Thanks,
 Kiall

 Sent from my phone.

 On May 9, 2012 9:52 a.m., Day, Phil philip@hp.com wrote:

 Hi Doug,

  

  I think you missed my main point, which was that a topic exchange does
  not impose a limitation that only one client can consume a given
  notification.  That's only true if each client is consuming from the
  same queue bound to the exchange.

  

 So just to be clear, if I understand you correctly within the nova
 service/rpc abstraction layers the code is set up so that all services do
 bind to the same queue, and hence we get the round-robin delivery.

 But, if someone wanted to write a separate notification consumer so that
 they didn’t block anyone else from seeing the same messages then they (the
 consumer) should create a new queue on the existing topic exchange.

  

 Is that correct – and is there any worked example of doing this ?

  

 I thought within the nova code both the exchange and topic queues were
 set up by the consumer (so for example all compute_managers try to create
 the “compute” exchange and topic queue, but its only created by the first
 one and the others connect to the same queue).   In that context I’m
 finding it hard to see how to change this model to have multiple “
 notify.info” topic queues into the same exchange ?

  

 Cheers,

 Phil

  

  

  

  

 *From:* openstack-bounces+philip.day=hp@lists.launchpad.net [mailto:
 openstack-bounces+philip.day=hp@lists.launchpad.net] *On Behalf Of *Doug
 Hellmann
 *Sent:* 08 May 2012 23:34
 *To:* Russell Bryant
 *Cc:* openstack@lists.launchpad.net
 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

  

  

 On Tue, May 8, 2012 at 6:04 PM, Russell Bryant rbry...@redhat.com
 wrote:

 On 05/08/2012 05:59 PM, Doug Hellmann wrote:
  Here is a relevant section pulled out of the amqp 0-9-1 spec:
 
 3.1.3.3 The Topic Exchange Type
 
 The topic exchange type works as follows:
 
 1. A message queue binds to the exchange using a routing
pattern, P.
 2. A publisher sends the exchange a message with the routing
key R.
 3. The message is passed to the message queue if R matches
 P.
 
   

Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Doug Hellmann
Is that the preferred way to do it, rather than attaching another queue to
the existing exchange with the same routing key?

On Wed, May 9, 2012 at 1:46 PM, Craig Vyvial cp16...@gmail.com wrote:

 You can allow nova to send notifications to multiple topics by setting
 this option in your nova.conf.

 ## (ListOpt) AMQP topic used for Nova notifications
 notification_topics=notifications,metering,monitoring

 This will allow you to consume all the messages from a different service.

 On Wed, May 9, 2012 at 10:34 AM, Doug Hellmann 
 doug.hellm...@dreamhost.com wrote:



 On Wed, May 9, 2012 at 6:42 AM, Kiall Mac Innes ki...@managedit.iewrote:

 Kinda! The queue has a name, but that name has no bearing on the set of
 messages received.


  If you create a queue called MyCustomNotificationQueue, you can bind
 that to the notifications exchange using the notifications.info
 routing key.

 (I'm guessing some of the names here.. I know AMQP, and not the specific
 naming nova uses!)


 notifications.info is right.



 Nova just happens to use the same queue name and routing key. I believe
 this is causing the confusion.


 Exactly. I ended up creating a separate queue for each client that I have
 and setting them to auto-delete when the client disconnects. That way I can
 have as many clients connecting and listening as I want. The code is in
 https://github.com/dhellmann/metering-prototype if you want to take a
 look.





 Does this make sense?

 Anyway - The RabbitMQ docs probably explain it better than I..
 http://www.rabbitmq.com/tutorials/tutorial-five-python.html

 Thanks,
 Kiall



 On Wed, May 9, 2012 at 11:30 AM, Day, Phil philip@hp.com wrote:

 OK, get that so far – so both consumers need to declare and use the
 same exchange.

 ** **

 But If I understand the next step right, to get multiple consumers of
  info notification messages they would all need to create separate “
 notifications.info” queues into that exchange.And isn’t that
 exactly what Nova currently does to create a shared queue ?

 ** **

 Phil

 ** **

 *From:* Kiall Mac Innes [mailto:ki...@managedit.ie]
 *Sent:* 09 May 2012 10:51
 *To:* Day, Phil
 *Cc:* openstack@lists.launchpad.net; Russell Bryant; Doug Hellmann

 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

 ** **

 Your own queue listener should attempt to declare the exchange, using
 the same settings as Nova does. 

 If the exchange exists, its a noop. Otherwise it's created for you.

 After that, if you start up Nova, it will do the same and reuse your
 exchange.

 Obviously this works both ways, and either nova or your code can
 declare the exchange.

 AMQP is designed to be a configuration-less protocol, where resources
 are configured by the first consumer attempting to use them.

 Thanks,
 Kiall

 Sent from my phone.

 On May 9, 2012 9:52 a.m., Day, Phil philip@hp.com wrote:

 Hi Doug,

  

  I think you missed my main point, which was that a topic exchange does
  not impose a limitation that only one client can consume a given
  notification.  That's only true if each client is consuming from the
  same queue bound to the exchange.

  

 So just to be clear, if I understand you correctly within the nova
 service/rpc abstraction layers the code is set up so that all services do
 bind to the same queue, and hence we get the round-robin delivery.

 But, if someone wanted to write a separate notification consumer so
 that they didn’t block anyone else from seeing the same messages then they
 (the consumer) should create a new queue on the existing topic exchange.
 

  

 Is that correct – and is there any worked example of doing this ?

  

 I thought within the nova code both the exchange and topic queues were
 set up by the consumer (so for example all compute_managers try to create
 the “compute” exchange and topic queue, but its only created by the first
 one and the others connect to the same queue).   In that context I’m
 finding it hard to see how to change this model to have multiple “
 notify.info” topic queues into the same exchange ?

  

 Cheers,

 Phil

  

  

  

  

 *From:* openstack-bounces+philip.day=hp@lists.launchpad.net[mailto:
 openstack-bounces+philip.day=hp@lists.launchpad.net] *On Behalf Of
 *Doug Hellmann
 *Sent:* 08 May 2012 23:34
 *To:* Russell Bryant
 *Cc:* openstack@lists.launchpad.net
 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

  

  

 On Tue, May 8, 2012 at 6:04 PM, Russell Bryant rbry...@redhat.com
 wrote:

 On 05/08/2012 05:59 PM, Doug Hellmann wrote:
  Here is a relevant section pulled out of the amqp 0-9-1 spec:
 
 3.1.3.3 The Topic Exchange Type
 
 The topic exchange type works as follows:
 
 1. A message queue binds to the exchange using a routing
   

Re: [Openstack] [Metering] schema and counter definitions

2012-05-09 Thread Doug Hellmann
On Wed, May 9, 2012 at 12:42 PM, Tomasz Paszkowski ss7...@gmail.com wrote:

 Here is the simplified version of my code (without ampq support,
 counter stored directly to mysql db).

 https://github.com/ss7pro/rescnt

 Code is started from main.py which is constantly collecting counters
 from libvirt and storing them in a mysql database.


Nice!

For production code I think we are going to want to separate collection
from storage, aren't we? We don't want each compute node to require access
to the database server (that's an issue with nova that they are trying to
fix during the folsom release, IIRC).




 On Mon, May 7, 2012 at 9:25 PM, Tomasz Paszkowski ss7...@gmail.com
 wrote:
  On Mon, May 7, 2012 at 5:21 PM, Loic Dachary l...@enovance.com wrote:
  Hi Tomasz,
  Hi
 
 
  I could not agree more and this is the reason why I/O shows in the list
 of meters shown in http://wiki.openstack.org/EfficientMetering (c5) disk
 IO in megabyte per second has a high impact on the service availability and
 could be billed separately .
 
  Yes but for disk drives I/O (number of read/write ops) are the key
  resource usage information. It's very hard to setup a billing model
  for disk drive usage on bandwidth as low bandwidth disk operations
  (small random read/writes) can utilize disk drive more than huge
  sequential reads/writes. I need also to mention that AWS is also
  charging for I/O in their volume service.
 
 
 
  It looks like you already have a codebase that could be useful for the
 metering implementation. Would you be willing to share it ?
 
  Yes. Just give me few days.
 
  --
  Tomasz Paszkowski
  SS7, Asterisk, SAN, Datacenter, Cloud Computing
  +48500166299



 --
 Tomasz Paszkowski
 SS7, Asterisk, SAN, Datacenter, Cloud Computing
 +48500166299

 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] ERROR: Malformed request url (HTTP 400)

2012-05-09 Thread Igor Laskovy
Hi all from sunny Kiev!

Have the problem below:

$ nova image-list
ERROR: Malformed request url (HTTP 400)

$ nova --debug image-list
connect: (192.168.1.71, 5000)
send: 'POST /v2.0/tokens HTTP/1.1\r\nHost:
192.168.1.71:5000\r\nContent-Length: 117\r\ncontent-type:
application/json\r\naccept-encoding: gzip, deflate\r\naccept:
application/json\r\nuser-agent: python-novaclient\r\n\r\n{auth:
{tenantName: labSpaceDemo, passwordCredentials: {username:
adminUser, password: lfplhfgthvf}}}'
reply: 'HTTP/1.1 200 OK\r\n'
header: Content-Type: application/json
header: Vary: X-Auth-Token
header: Date: Wed, 09 May 2012 18:23:48 GMT
header: Transfer-Encoding: chunked
connect: (192.168.1.71, 8774)
send: u'GET /v2/7033300637bc4964a8d0a43649fcf898/images/detail
HTTP/1.1\r\nHost: 192.168.1.71:8774\r\nx-auth-project-id:
labSpaceDemo\r\nx-auth-token:
65e6d91f80f047a7b1a49ede0aa7c0f1\r\naccept-encoding: gzip,
deflate\r\naccept: application/json\r\nuser-agent:
python-novaclient\r\n\r\n'
reply: 'HTTP/1.1 400 Bad Request\r\n'
header: Content-Length: 65
header: Content-Type: application/json; charset=UTF-8
header: X-Compute-Request-Id: req-faef2b77-9f53-4849-b0f5-c0508fe2cf21
header: Date: Wed, 09 May 2012 18:23:48 GMT
DEBUG (shell:416) Malformed request url (HTTP 400)
Traceback (most recent call last):
  File /usr/lib/python2.7/dist-packages/novaclient/shell.py, line 413, in main
OpenStackComputeShell().main(sys.argv[1:])
  File /usr/lib/python2.7/dist-packages/novaclient/shell.py, line 364, in main
args.func(self.cs, args)
  File /usr/lib/python2.7/dist-packages/novaclient/v1_1/shell.py,
line 350, in do_image_list
image_list = cs.images.list()
  File /usr/lib/python2.7/dist-packages/novaclient/v1_1/images.py,
line 47, in list
return self._list(/images/detail, images)
  File /usr/lib/python2.7/dist-packages/novaclient/base.py, line 71, in _list
resp, body = self.api.client.get(url)
  File /usr/lib/python2.7/dist-packages/novaclient/client.py, line 136, in get
return self._cs_request(url, 'GET', **kwargs)
  File /usr/lib/python2.7/dist-packages/novaclient/client.py, line
124, in _cs_request
**kwargs)
  File /usr/lib/python2.7/dist-packages/novaclient/client.py, line
107, in request
raise exceptions.from_response(resp, body)
BadRequest: Malformed request url (HTTP 400)
ERROR: Malformed request url (HTTP 400)


At the same time $ glance index works well.
And I have --auth_strategy=keystone in my nova.conf.

-- 
Igor Laskovy

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Nova Core Cleanup

2012-05-09 Thread Mark McLoughlin
On Wed, 2012-05-09 at 11:34 +0100, Mark McLoughlin wrote:

 I rarely -2, because I see it as a strong veto which blocks the patch or
 later revisions of the patch until I remove the -2. Maybe it's just the
 fact that I know I'm likely to be slow to come back and review later
 revisions of a patch that I've put a -2 on. Maybe I should just fix
 that :-)

Ok, here's what I'm going to try - it might help others too

I've set up a filter to catch mails containing:

  Gerrit-Reviewer: Mark McLoughlin

and move them into a myreviews folder. That way I separate follow-ups
to my reviews from all the rest of the gerrit spam

Cheers,
Mark.


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Netstack] About python versions that we are planning to support

2012-05-09 Thread Dan Wendlandt
I'm concerned about a need to support python 2.4 as well, especially if it
would have a ripple effect into openstack-common, which otherwise does not
have that requirement.

With XenServer, nova-compute actually runs in a service VM (which is
running a modern version of python).  I believe Salvatore or others may
have done some work around forcing network traffic through this service VM
to allow iptables rules from nova-compute / nova-network to be enforced,
but I'm not familiar enough with that work to say for sure.  Can anyone
shed light on this?

Another option would be to just create a simple Quantum plugin specific to
XenServer that doesn't require an agent.  This plugin could use XAPI to
create networks, but as a result might only support a base feature set
(e.g., L2 connectivity using VLANs).

Dan


On Wed, May 9, 2012 at 9:07 AM, Robert Kukura rkuk...@redhat.com wrote:

 [I'm moving this thread to the openstack list because it potentially
 impacts openstack-common.]

 On 05/07/2012 11:53 PM, Maru Newby wrote:
  Hi,
 
  Python 2.4 compatibility is required, but only for agent code.  Agent
  code needs to be deployable on Xen dom0, which uses CentoOS 5.5 and only
  supports 2.4 out of the box.

 Maru,

 I'm very concerned about the potential of this XenServer/XCP requirement
 to interfere with making the various Quantum agents first-class
 OpenStack services by utilizing current and future openstack-common
 facilities for configuration, logging, DB, RPC, etc.. Are there any
 other possible ways forward here? How is the nova compute service
 currently handled for XenServer? Could a fully supported version of
 python be parallel-installed on dom0? Could the actual quantum agent run
 somewhere else and remotely execute commands on dom0? Or does the python
 2.4 compatibility requirement need to be applied to openstack-common?

 Thanks,

 -Bob

 
  Both quantum and nova have agent code that needs to be deployed to dom0,
  but up until now both projects have relied on savvy reviewers and bug
  reports to ensure compatibility.  I'm working on it, though.  I'll
  be adding a tox build to quantum that will run agent tests - and agent
  tests only - under 2.4, and then openstack-ci can add a jenkins job to
  run that build on CentOS and gate merges.
 
  The relevant bug: https://bugs.launchpad.net/quantum/+bug/995278
 
  Thanks,
 
 
  Maru
 
 
  On 2012-05-07, at 6:54 PM, Yong Sheng Gong wrote:
 
  Hi,
  I see some ones are trying to support python2.4. But our tox.ini under
  quantum is only supporting test py26 and py27.
  So my question is if we are trying to support py24. In addition I
  remember that we will support py30.
 
  As far as I know, py2.4 does not support many new syntaxes introduced
  by py2.5+. Other projects such as nova, horizon are also adopting some
  of these new syntaxes. Moreover some third party components such as
  Django 1.4 required by horizon are only tested under py2.6 and py2.7.
 
  So if py2.4 is out of our scope, we should stop that trying. If we
  need py2.4, we have to make all of us know it and keep our code 2.4
  compatible.
 
  Thanks
 
  Yong Sheng Gong
 
  --
  Mailing list: https://launchpad.net/~netstack
  Post to : netst...@lists.launchpad.net
  mailto:netst...@lists.launchpad.net
  Unsubscribe : https://launchpad.net/~netstack
  More help   : https://help.launchpad.net/ListHelp
 
 
 


 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp




-- 
~~~
Dan Wendlandt
Nicira, Inc: www.nicira.com
twitter: danwendlandt
~~~
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] schema and counter definitions

2012-05-09 Thread Tomasz Paszkowski
On Wed, May 9, 2012 at 8:02 PM, Doug Hellmann
doug.hellm...@dreamhost.com wrote:

 Nice!

 For production code I think we are going to want to separate collection from
 storage, aren't we? We don't want each compute node to require access to the
 database server (that's an issue with nova that they are trying to fix
 during the folsom release, IIRC).

Yes. Part of the code responsible for amqp support is not functional yet :(



-- 
Tomasz Paszkowski
SS7, Asterisk, SAN, Datacenter, Cloud Computing
+48500166299

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Instances can't access eachother via external (floating) ips?

2012-05-09 Thread Steven Dake
On 04/25/2012 01:03 PM, Calvin Walton wrote:
 On Mon, 2012-04-23 at 06:45 -0700, Mike Scherbakov wrote:
 Hi Calvin,
 Sorry I didn't respond earlier, the email temporarily got lost :)
 
 show us iptables -nL -t nat | grep NAT on the node with nova-network.
 
 (192.168.0.101 is the nova-network node's external address)
 
 DNAT   all  --  0.0.0.0/0192.168.0.33to:192.168.22.35
 DNAT   all  --  0.0.0.0/0192.168.0.88 to:192.168.22.41
 ACCEPT all  --  192.168.22.32/27 192.168.22.32/27 ! ctstate DNAT
 DNAT   tcp  --  0.0.0.0/0169.254.169.254  tcp dpt:80 
 to:192.168.0.101:8775
 DNAT   all  --  0.0.0.0/0192.168.0.33 to:192.168.22.35
 DNAT   all  --  0.0.0.0/0192.168.0.88 to:192.168.22.41
 SNAT   all  --  192.168.22.350.0.0.0/0to:192.168.0.33
 SNAT   all  --  192.168.22.410.0.0.0/0to:192.168.0.88
 SNAT   all  --  192.168.22.32/27 0.0.0.0/0to:192.168.0.101
 
 Note that the nova-network is actually colocated on a machine that also
 runs nova-compute; this is a small 2-node lab deployment.
 
 Could it be that your fixed_range flag in nova.conf covers both
 subnets,
 like 192.168.0.0/16 ?
 
 My fixed_range is very small, and doesn't overlap:
 --fixed_range=192.168.22.32/27
 
 Second reason - I presume that the traffic from VM will go via your
 router if you access another VM via floating IP,
 so router should know the route to 192.168.0.x (static/ospf?)
 
 192.168.0.x is the office network, and communication between other
 machines on that network and the router on that network all work fine.
 
 In the course of trying some other things out, I found that when I
 enabled ipv4 forwarding on the nova-network box:
   echo 1 /proc/sys/net/ipv4/ip_forward
 Then the virtual machines /were/ able to communicate with each-other via
 their floating IP addresses. I'm still not sure about what's going on,
 but it's good enough for our lab use now.
 

In lab environments where openstack network isn't routed, you will need
some special magic.  Linux iptables doesn't allow a nat through a nat.

Read more details here:
https://github.com/heat-api/heat/wiki/Configuring-Floating-IPs


 Regards,

 On Fri, Apr 20, 2012 at 7:03 AM, Calvin Walton
 calvin.wal...@kepstin.ca wrote:
 Hi,
 
 I have instances running in Openstack using FlatDHCP
 networking mode.
 Each one has an IP address in the internal subnet
 (192.168.22.x) and a
 floating IP from the external subnet (192.168.0.x).
 
 I've found that from one instance, I cannot connect to another
 instance
 (or, in fact, even the same instance) via the external
 floating address
 (I have some monitoring tools that attempt to do this to
 verify that a
 server is running). Connections from external computers work
 fine.
 
 My best guess is that there is an issue with the NAT on my
 nova-network
 node not allowing loopback connections. Is this intentional,
 or a bug?
 Is there a workaround available?
 
 For reference, I'm currently using OpenStack from the
 'latest-milestone-test' OpenStack PPA on Ubuntu 12.04 Precise.
 
 


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Tihomir Trifonov
Hi Doug,

not sure if you've hit the same problem, but I've spent some time on that
when I started using RabbitMQ. As I see from the example, you've provided:

queue = Queue(name='notifications.info',
  exchange=Exchange(name='nova'...



So you set explicitly a name for the queue. If you have two queues declared
with the same name, when they are bound to an Exchange, actually each
message is received only by the one queue at a time. Just leave the name
field empty(it will be auto-generated), and each queue will receive its
copy of the message. So the logic is that the first queue with that name
acknowledges the message, and the other one receives nothing.


Besides that, the topics are more powerful and handy to use than fanout.



On Wed, May 9, 2012 at 6:34 PM, Doug Hellmann
doug.hellm...@dreamhost.comwrote:



 On Wed, May 9, 2012 at 6:42 AM, Kiall Mac Innes ki...@managedit.iewrote:

 Kinda! The queue has a name, but that name has no bearing on the set of
 messages received.


 If you create a queue called MyCustomNotificationQueue, you can bind
 that to the notifications exchange using the notifications.info
 routing key.

 (I'm guessing some of the names here.. I know AMQP, and not the specific
 naming nova uses!)


 notifications.info is right.



 Nova just happens to use the same queue name and routing key. I believe
 this is causing the confusion.


 Exactly. I ended up creating a separate queue for each client that I have
 and setting them to auto-delete when the client disconnects. That way I can
 have as many clients connecting and listening as I want. The code is in
 https://github.com/dhellmann/metering-prototype if you want to take a
 look.





 Does this make sense?

 Anyway - The RabbitMQ docs probably explain it better than I..
 http://www.rabbitmq.com/tutorials/tutorial-five-python.html

 Thanks,
 Kiall



 On Wed, May 9, 2012 at 11:30 AM, Day, Phil philip@hp.com wrote:

 OK, get that so far – so both consumers need to declare and use the same
 exchange.

 ** **

 But If I understand the next step right, to get multiple consumers of
  info notification messages they would all need to create separate “
 notifications.info” queues into that exchange.And isn’t that
 exactly what Nova currently does to create a shared queue ?

 ** **

 Phil

 ** **

 *From:* Kiall Mac Innes [mailto:ki...@managedit.ie]
 *Sent:* 09 May 2012 10:51
 *To:* Day, Phil
 *Cc:* openstack@lists.launchpad.net; Russell Bryant; Doug Hellmann

 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

 ** **

 Your own queue listener should attempt to declare the exchange, using
 the same settings as Nova does. 

 If the exchange exists, its a noop. Otherwise it's created for you.

 After that, if you start up Nova, it will do the same and reuse your
 exchange.

 Obviously this works both ways, and either nova or your code can declare
 the exchange.

 AMQP is designed to be a configuration-less protocol, where resources
 are configured by the first consumer attempting to use them.

 Thanks,
 Kiall

 Sent from my phone.

 On May 9, 2012 9:52 a.m., Day, Phil philip@hp.com wrote:

 Hi Doug,

  

  I think you missed my main point, which was that a topic exchange does
  not impose a limitation that only one client can consume a given
  notification.  That's only true if each client is consuming from the
  same queue bound to the exchange.

  

 So just to be clear, if I understand you correctly within the nova
 service/rpc abstraction layers the code is set up so that all services do
 bind to the same queue, and hence we get the round-robin delivery.

 But, if someone wanted to write a separate notification consumer so that
 they didn’t block anyone else from seeing the same messages then they (the
 consumer) should create a new queue on the existing topic exchange.

  

 Is that correct – and is there any worked example of doing this ?

  

 I thought within the nova code both the exchange and topic queues were
 set up by the consumer (so for example all compute_managers try to create
 the “compute” exchange and topic queue, but its only created by the first
 one and the others connect to the same queue).   In that context I’m
 finding it hard to see how to change this model to have multiple “
 notify.info” topic queues into the same exchange ?

  

 Cheers,

 Phil

  

  

  

  

 *From:* openstack-bounces+philip.day=hp@lists.launchpad.net [mailto:
 openstack-bounces+philip.day=hp@lists.launchpad.net] *On Behalf Of *Doug
 Hellmann
 *Sent:* 08 May 2012 23:34
 *To:* Russell Bryant
 *Cc:* openstack@lists.launchpad.net
 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

  

  

 On Tue, May 8, 2012 at 6:04 PM, Russell Bryant rbry...@redhat.com
 wrote:

 On 05/08/2012 05:59 

Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Doug Hellmann
On Wed, May 9, 2012 at 3:17 PM, Tihomir Trifonov t.trifo...@gmail.comwrote:

 Hi Doug,

 not sure if you've hit the same problem, but I've spent some time on that
 when I started using RabbitMQ. As I see from the example, you've provided:

 queue = Queue(name='notifications.info',

   exchange=Exchange(name='nova'...



 So you set explicitly a name for the queue. If you have two queues
 declared with the same name, when they are bound to an Exchange, actually
 each message is received only by the one queue at a time. Just leave the
 name field empty(it will be auto-generated), and each queue will receive
 its copy of the message. So the logic is that the first queue with that
 name acknowledges the message, and the other one receives nothing.


 Besides that, the topics are more powerful and handy to use than fanout.


Now that I see how it works, I agree. :-)





 On Wed, May 9, 2012 at 6:34 PM, Doug Hellmann doug.hellm...@dreamhost.com
  wrote:



 On Wed, May 9, 2012 at 6:42 AM, Kiall Mac Innes ki...@managedit.iewrote:

 Kinda! The queue has a name, but that name has no bearing on the set of
 messages received.


  If you create a queue called MyCustomNotificationQueue, you can bind
 that to the notifications exchange using the notifications.info
 routing key.

 (I'm guessing some of the names here.. I know AMQP, and not the specific
 naming nova uses!)


 notifications.info is right.



 Nova just happens to use the same queue name and routing key. I believe
 this is causing the confusion.


 Exactly. I ended up creating a separate queue for each client that I have
 and setting them to auto-delete when the client disconnects. That way I can
 have as many clients connecting and listening as I want. The code is in
 https://github.com/dhellmann/metering-prototype if you want to take a
 look.





 Does this make sense?

 Anyway - The RabbitMQ docs probably explain it better than I..
 http://www.rabbitmq.com/tutorials/tutorial-five-python.html

 Thanks,
 Kiall



 On Wed, May 9, 2012 at 11:30 AM, Day, Phil philip@hp.com wrote:

 OK, get that so far – so both consumers need to declare and use the
 same exchange.

 ** **

 But If I understand the next step right, to get multiple consumers of
  info notification messages they would all need to create separate “
 notifications.info” queues into that exchange.And isn’t that
 exactly what Nova currently does to create a shared queue ?

 ** **

 Phil

 ** **

 *From:* Kiall Mac Innes [mailto:ki...@managedit.ie]
 *Sent:* 09 May 2012 10:51
 *To:* Day, Phil
 *Cc:* openstack@lists.launchpad.net; Russell Bryant; Doug Hellmann

 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange instead of fanout?

 ** **

 Your own queue listener should attempt to declare the exchange, using
 the same settings as Nova does. 

 If the exchange exists, its a noop. Otherwise it's created for you.

 After that, if you start up Nova, it will do the same and reuse your
 exchange.

 Obviously this works both ways, and either nova or your code can
 declare the exchange.

 AMQP is designed to be a configuration-less protocol, where resources
 are configured by the first consumer attempting to use them.

 Thanks,
 Kiall

 Sent from my phone.

 On May 9, 2012 9:52 a.m., Day, Phil philip@hp.com wrote:

 Hi Doug,

  

  I think you missed my main point, which was that a topic exchange does
  not impose a limitation that only one client can consume a given
  notification.  That's only true if each client is consuming from the
  same queue bound to the exchange.

  

 So just to be clear, if I understand you correctly within the nova
 service/rpc abstraction layers the code is set up so that all services do
 bind to the same queue, and hence we get the round-robin delivery.

 But, if someone wanted to write a separate notification consumer so
 that they didn’t block anyone else from seeing the same messages then they
 (the consumer) should create a new queue on the existing topic exchange.
 

  

 Is that correct – and is there any worked example of doing this ?

  

 I thought within the nova code both the exchange and topic queues were
 set up by the consumer (so for example all compute_managers try to create
 the “compute” exchange and topic queue, but its only created by the first
 one and the others connect to the same queue).   In that context I’m
 finding it hard to see how to change this model to have multiple “
 notify.info” topic queues into the same exchange ?

  

 Cheers,

 Phil

  

  

  

  

 *From:* openstack-bounces+philip.day=hp@lists.launchpad.net[mailto:
 openstack-bounces+philip.day=hp@lists.launchpad.net] *On Behalf Of
 *Doug Hellmann
 *Sent:* 08 May 2012 23:34
 *To:* Russell Bryant
 *Cc:* openstack@lists.launchpad.net
 *Subject:* Re: [Openstack] [nova] why does notification use a topic
 exchange 

Re: [Openstack] Floating IPs don't get dissociated after delete

2012-05-09 Thread Vishvananda Ishaya
This definitely sounds like a bug. Floating Ips should be automatically 
disassociated on delete

Vish

On May 9, 2012, at 8:26 AM, Steven Dake wrote:

 On 05/09/2012 07:20 AM, Bilel Msekni wrote:
 Hi , 
 
 I am having this problem just like many others.
 
 Each time I delete a VM, the floating IP doesn't get automatically
 dissociated, has anyone encountred this problem and solved it ?
 
 
 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp
 
 Bilel,
 
 We had this problem in openstack during our floating ip implementation
 of heat (http://www.heat-api.org).  We solved it by using the floating
 ip.delete api in nova.  See:
 
 https://github.com/heat-api/heat/blob/master/heat/engine/eip.py
 line 118
 
 The program flow on delete is:
 delete an instance
 wait for instance to disappear
 delete floating ip
 
 Regards
 -steve
 
 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Nova Core Cleanup

2012-05-09 Thread Matt Dietz
The problem here is there are two opposing points: the idea that there are
too many core reviewers, and the idea that patches aren't being reviewed
fast enough. 

*Drags a yak into the room* Beyond that, what makes 20 better than 25, or
15, especially in light of the fact that we're not happy with how quickly
reviews are moving?

It seems like the answer here isn't just quantity, but a matter of focus
and relative skill sets. I'm a core developer but, beyond code quality, I
couldn't review in the best interests of functionality in and around KVM.
Conversely, I'm sure most core developers couldn't do any better for
XenServer. I liked the idea of lieutenants when it first came up almost 2
years ago. Have we talked about reinstating that?


On 5/9/12 5:34 AM, Mark McLoughlin mar...@redhat.com wrote:

On Tue, 2012-05-08 at 15:44 -0700, Vishvananda Ishaya wrote:

 The -2 issue is a good point. I personally treat a -1 (or +1) from the
 author of a given piece of code quite strongly when I do reviews, but
 you're right that the -1 could be more trivially overridden.

Coincidentally, dprince and I discussed this a bit yesterday.

I rarely -2, because I see it as a strong veto which blocks the patch or
later revisions of the patch until I remove the -2. Maybe it's just the
fact that I know I'm likely to be slow to come back and review later
revisions of a patch that I've put a -2 on. Maybe I should just fix
that :-)

On the flip-side, I respect (and expect others to respect) a -1 from a
core reviewer when reviewing later revisions of a patch - i.e. if I see
a -1 from a core reviewer, then I check that the later revisions of the
patch have actually addressed the previous concerns. If core reviewers'
concerns are consistently ignored, that'd definitely cause me to pull
out the big old -2.

 The removal is primarily to keep core a manageable size.  We currently
 have 25 core members and still have many patches that are not being
 quickly reviewed.  Giving too many people the ability to approve
 patches leads to inconsistency in code and the review process.  It
 seems like overkill to have  20 people. I expect this number to
 decrease further if out plans to create substystem branches
 materialize.

I agree, FWIW.

20 seems like the right number, more than that and I think folks assume
someone else will do it, core membership isn't for life, the
requirement that core members are actually active is a great incentive
to do reviews, folks can easily be re-added again later, etc. etc.

Cheers,
Mark.


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Russell Bryant
On 05/09/2012 01:57 PM, Doug Hellmann wrote:
 Is that the preferred way to do it, rather than attaching another queue
 to the existing exchange with the same routing key?

I would just do what you're doing now, which is to use the existing
exchange.  That lets the message broker do the work of duplicating the
message as opposed to making nova send the message multiple times.

Perhaps using another exchange would make sense if it made ACLs easier
for ensuring that an application can only get notifications, and nothing
else on the nova exchange.

-- 
Russell Bryant

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] ERROR: Malformed request url (HTTP 400)

2012-05-09 Thread Dolph Mathews
The request URL is actually fine, but the request body is quite malformed:

{tenantName: labSpaceDemo, passwordCredentials: {username:
adminUser,
password: lfplhfgthvf}}}

What's there would be just fine if it were wrapped in an auth element
(see http://keystone.openstack.org/api_curl_examples.html#id4 ):

{auth: {tenantName: labSpaceDemo, passwordCredentials:
{username: adminUser, password: lfplhfgthvf

-Dolph

On Wed, May 9, 2012 at 1:25 PM, Igor Laskovy igor.lask...@gmail.com wrote:

 Hi all from sunny Kiev!

 Have the problem below:

 $ nova image-list
 ERROR: Malformed request url (HTTP 400)

 $ nova --debug image-list
 connect: (192.168.1.71, 5000)
 send: 'POST /v2.0/tokens HTTP/1.1\r\nHost:
 192.168.1.71:5000\r\nContent-Length: 117\r\ncontent-type:
 application/json\r\naccept-encoding: gzip, deflate\r\naccept:
 application/json\r\nuser-agent: python-novaclient\r\n\r\n{auth:
 {tenantName: labSpaceDemo, passwordCredentials: {username:
 adminUser, password: lfplhfgthvf}}}'
 reply: 'HTTP/1.1 200 OK\r\n'
 header: Content-Type: application/json
 header: Vary: X-Auth-Token
 header: Date: Wed, 09 May 2012 18:23:48 GMT
 header: Transfer-Encoding: chunked
 connect: (192.168.1.71, 8774)
 send: u'GET /v2/7033300637bc4964a8d0a43649fcf898/images/detail
 HTTP/1.1\r\nHost: 192.168.1.71:8774\r\nx-auth-project-id:
 labSpaceDemo\r\nx-auth-token:
 65e6d91f80f047a7b1a49ede0aa7c0f1\r\naccept-encoding: gzip,
 deflate\r\naccept: application/json\r\nuser-agent:
 python-novaclient\r\n\r\n'
 reply: 'HTTP/1.1 400 Bad Request\r\n'
 header: Content-Length: 65
 header: Content-Type: application/json; charset=UTF-8
 header: X-Compute-Request-Id: req-faef2b77-9f53-4849-b0f5-c0508fe2cf21
 header: Date: Wed, 09 May 2012 18:23:48 GMT
 DEBUG (shell:416) Malformed request url (HTTP 400)
 Traceback (most recent call last):
  File /usr/lib/python2.7/dist-packages/novaclient/shell.py, line 413, in
 main
OpenStackComputeShell().main(sys.argv[1:])
  File /usr/lib/python2.7/dist-packages/novaclient/shell.py, line 364, in
 main
args.func(self.cs, args)
  File /usr/lib/python2.7/dist-packages/novaclient/v1_1/shell.py,
 line 350, in do_image_list
image_list = cs.images.list()
  File /usr/lib/python2.7/dist-packages/novaclient/v1_1/images.py,
 line 47, in list
return self._list(/images/detail, images)
  File /usr/lib/python2.7/dist-packages/novaclient/base.py, line 71, in
 _list
resp, body = self.api.client.get(url)
  File /usr/lib/python2.7/dist-packages/novaclient/client.py, line 136,
 in get
return self._cs_request(url, 'GET', **kwargs)
  File /usr/lib/python2.7/dist-packages/novaclient/client.py, line
 124, in _cs_request
**kwargs)
  File /usr/lib/python2.7/dist-packages/novaclient/client.py, line
 107, in request
raise exceptions.from_response(resp, body)
 BadRequest: Malformed request url (HTTP 400)
 ERROR: Malformed request url (HTTP 400)


 At the same time $ glance index works well.
 And I have --auth_strategy=keystone in my nova.conf.

 --
 Igor Laskovy

 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] ERROR: Malformed request url (HTTP 400)

2012-05-09 Thread Dolph Mathews
It also just occurred to me that perhaps you're using a *very* old
novaclient against a more recent version of keystone?

-Dolph

On Wed, May 9, 2012 at 3:30 PM, Dolph Mathews dolph.math...@gmail.comwrote:

 The request URL is actually fine, but the request body is quite malformed:

 {tenantName: labSpaceDemo, passwordCredentials: {username: 
 adminUser,
 password: lfplhfgthvf}}}

 What's there would be just fine if it were wrapped in an auth element
 (see http://keystone.openstack.org/api_curl_examples.html#id4 ):

 {auth: {tenantName: labSpaceDemo, passwordCredentials:
 {username: adminUser, password: lfplhfgthvf

 -Dolph


 On Wed, May 9, 2012 at 1:25 PM, Igor Laskovy igor.lask...@gmail.comwrote:

 Hi all from sunny Kiev!

 Have the problem below:

 $ nova image-list
 ERROR: Malformed request url (HTTP 400)

 $ nova --debug image-list
 connect: (192.168.1.71, 5000)
 send: 'POST /v2.0/tokens HTTP/1.1\r\nHost:
 192.168.1.71:5000\r\nContent-Length: 117\r\ncontent-type:
 application/json\r\naccept-encoding: gzip, deflate\r\naccept:
 application/json\r\nuser-agent: python-novaclient\r\n\r\n{auth:
 {tenantName: labSpaceDemo, passwordCredentials: {username:
 adminUser, password: lfplhfgthvf}}}'
 reply: 'HTTP/1.1 200 OK\r\n'
 header: Content-Type: application/json
 header: Vary: X-Auth-Token
 header: Date: Wed, 09 May 2012 18:23:48 GMT
 header: Transfer-Encoding: chunked
 connect: (192.168.1.71, 8774)
 send: u'GET /v2/7033300637bc4964a8d0a43649fcf898/images/detail
 HTTP/1.1\r\nHost: 192.168.1.71:8774\r\nx-auth-project-id:
 labSpaceDemo\r\nx-auth-token:
 65e6d91f80f047a7b1a49ede0aa7c0f1\r\naccept-encoding: gzip,
 deflate\r\naccept: application/json\r\nuser-agent:
 python-novaclient\r\n\r\n'
 reply: 'HTTP/1.1 400 Bad Request\r\n'
 header: Content-Length: 65
 header: Content-Type: application/json; charset=UTF-8
 header: X-Compute-Request-Id: req-faef2b77-9f53-4849-b0f5-c0508fe2cf21
 header: Date: Wed, 09 May 2012 18:23:48 GMT
 DEBUG (shell:416) Malformed request url (HTTP 400)
 Traceback (most recent call last):
  File /usr/lib/python2.7/dist-packages/novaclient/shell.py, line 413,
 in main
OpenStackComputeShell().main(sys.argv[1:])
  File /usr/lib/python2.7/dist-packages/novaclient/shell.py, line 364,
 in main
args.func(self.cs, args)
  File /usr/lib/python2.7/dist-packages/novaclient/v1_1/shell.py,
 line 350, in do_image_list
image_list = cs.images.list()
  File /usr/lib/python2.7/dist-packages/novaclient/v1_1/images.py,
 line 47, in list
return self._list(/images/detail, images)
  File /usr/lib/python2.7/dist-packages/novaclient/base.py, line 71, in
 _list
resp, body = self.api.client.get(url)
  File /usr/lib/python2.7/dist-packages/novaclient/client.py, line 136,
 in get
return self._cs_request(url, 'GET', **kwargs)
  File /usr/lib/python2.7/dist-packages/novaclient/client.py, line
 124, in _cs_request
**kwargs)
  File /usr/lib/python2.7/dist-packages/novaclient/client.py, line
 107, in request
raise exceptions.from_response(resp, body)
 BadRequest: Malformed request url (HTTP 400)
 ERROR: Malformed request url (HTTP 400)


 At the same time $ glance index works well.
 And I have --auth_strategy=keystone in my nova.conf.

 --
 Igor Laskovy

 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp



___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] Keystone client, user belongs to many tenants?

2012-05-09 Thread Joshua Harlow
A question,

I am using anvil to setup the keystone roles/users/tenants.

It seems like the python keystone  client has the following command:

client.users.create

Which seems to take in the following:

create(self, name, password, email, tenant_id=None, enabled=True):

I would assume a user name can be used in multiple tenants but when I am trying 
to create a user that spans tenants and it seems like it borks.

ClientException: Conflict occurred attempting to store user. (IntegrityError) 
(1062, Duplicate entry 'admin' for key 'name') 'INSERT INTO user (id, name, 
extra) VALUES (%s, %s, %s)' ('3e14a9c1fd404c7e81c0dba8bd640575', 'admin', 
'{password: 
$6$rounds=4$yX5fL51OyGKjuPjr$8yv.S3GpqsKeaHv4GjNY4YW2vvykWzrEV7RX.qJpyy3CjmyXrZMRRJifEzfa7xv1l.NzoggQBXUAESn3Oqm0x/,
 enabled: true, email: ad...@example.com, tenantId: 
d1506184877a449a91fc6adcb553ad97}') (HTTP 409)

Is this supposed to happen? Is the client supposed to send back this much info 
also (hashed password??) :-P

Any ideas?
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Netstack] About python versions that we are planning to support

2012-05-09 Thread Johannes Erdfelt
On Wed, May 09, 2012, Robert Kukura rkuk...@redhat.com wrote:
 I'm very concerned about the potential of this XenServer/XCP requirement
 to interfere with making the various Quantum agents first-class
 OpenStack services by utilizing current and future openstack-common
 facilities for configuration, logging, DB, RPC, etc.. Are there any
 other possible ways forward here? How is the nova compute service
 currently handled for XenServer? Could a fully supported version of
 python be parallel-installed on dom0? Could the actual quantum agent run
 somewhere else and remotely execute commands on dom0? Or does the python
 2.4 compatibility requirement need to be applied to openstack-common?

I'm confused what openstack-common has to do with the dom0 plugins?

I don't know what these Quantum agents do, but it sounds like they are
trying to do too much on the XS dom0. Why would you want to communicate
with the DB or RPC from dom0?

The nova plugins (which exist in plugins/xenserver/xenapi) are basically
the minimal amount of code that is necessary to run on dom0.

I'm not a fan of how XenServer userspace is lagging and is only Python
2.4, but Nova has been able to develop plugins with only a couple of
workarounds necessary.

I'm not sure I understand what Quantum is doing and why it appears to
want to do so much on dom0.

JE


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Nova Core Cleanup

2012-05-09 Thread Mark McLoughlin
On Wed, 2012-05-09 at 19:58 +, Matt Dietz wrote:
 The problem here is there are two opposing points: the idea that there are
 too many core reviewers, and the idea that patches aren't being reviewed
 fast enough. 
 
 *Drags a yak into the room* Beyond that, what makes 20 better than 25, or
 15, especially in light of the fact that we're not happy with how quickly
 reviews are moving?

I think the idea is that letting core reviewers know that their
membership of core is dependent on them actually doing reviews is an
incentive for core members to be more active reviewers.

 It seems like the answer here isn't just quantity, but a matter of focus
 and relative skill sets. I'm a core developer but, beyond code quality, I
 couldn't review in the best interests of functionality in and around KVM.
 Conversely, I'm sure most core developers couldn't do any better for
 XenServer. I liked the idea of lieutenants when it first came up almost 2
 years ago. Have we talked about reinstating that?

Yes, see the Nova subsystem branches and feature branches thread this
week

Cheers,
Mark.


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] Bootstrapping, first counter implementation

2012-05-09 Thread Doug Hellmann
On Wed, May 9, 2012 at 11:13 AM, Julien Danjou
julien.dan...@enovance.comwrote:

 Hi there,

 I've added a first script that's able to connect to the AMQP
 notification queue using Nova RPC module. Later it will be able to treat
 them when we'll know what to do with them.

  https://review.stackforge.org/#/c/26/
  https://review.stackforge.org/#/c/27/
  https://review.stackforge.org/#/c/28/

 I wish I could use nova.service.Service, but the code is too RPC
 oriented so that it can't grab notification from the notifier, so for
 now the daemon is rather simple.


I'm not sure what you mean. I was able to use nova.service to create a
metering server and a simple manager that subscribes to the notification
events. See https://github.com/dhellmann/metering-prototype (metering-test
is the main program and testmanager.py is the manager class). I borrowed
your Connection code.




 --
 Julien Danjou
 // eNovance  http://enovance.com
 // ✉ julien.dan...@enovance.com  ☎ +33 1 49 70 99 81

 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] schema and counter definitions

2012-05-09 Thread Doug Hellmann
On Wed, May 9, 2012 at 3:07 PM, Tomasz Paszkowski ss7...@gmail.com wrote:

 On Wed, May 9, 2012 at 8:02 PM, Doug Hellmann
 doug.hellm...@dreamhost.com wrote:
 
  Nice!
 
  For production code I think we are going to want to separate collection
 from
  storage, aren't we? We don't want each compute node to require access to
 the
  database server (that's an issue with nova that they are trying to fix
  during the folsom release, IIRC).

 Yes. Part of the code responsible for amqp support is not functional yet :(


OK, that's what I thought.

We all seem to be reinventing different parts of the services that we will
eventually need, which is good for education but may be wasting a bit of
energy. Is it premature to start talking a little more about architecture
so we can start splitting up the implementation work and focusing that
energy differently? There is a lot of work we can do independently of the
remaining decisions outlined in
http://wiki.openstack.org/Meetings/MeteringAgenda.





 --
 Tomasz Paszkowski
 SS7, Asterisk, SAN, Datacenter, Cloud Computing
 +48500166299

 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Instances can't access eachother via external (floating) ips?

2012-05-09 Thread Jay Pipes

On 05/09/2012 02:09 PM, Steven Dake wrote:

Read more details here:
https://github.com/heat-api/heat/wiki/Configuring-Floating-IPs


Is there a reason this is on a GitHub wiki versus on the official 
OpenStack wiki and/or the documentation? Seems like some great 
information that really should be shared...


-jay

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] schema and counter definitions

2012-05-09 Thread Tomasz Paszkowski
I agree.  Do you have any plans how to coordinate our efforts ?


On Wed, May 9, 2012 at 11:11 PM, Doug Hellmann
doug.hellm...@dreamhost.com wrote:


 On Wed, May 9, 2012 at 3:07 PM, Tomasz Paszkowski ss7...@gmail.com wrote:

 On Wed, May 9, 2012 at 8:02 PM, Doug Hellmann
 doug.hellm...@dreamhost.com wrote:
 
  Nice!
 
  For production code I think we are going to want to separate collection
  from
  storage, aren't we? We don't want each compute node to require access to
  the
  database server (that's an issue with nova that they are trying to fix
  during the folsom release, IIRC).

 Yes. Part of the code responsible for amqp support is not functional yet
 :(


 OK, that's what I thought.

 We all seem to be reinventing different parts of the services that we will
 eventually need, which is good for education but may be wasting a bit of
 energy. Is it premature to start talking a little more about architecture so
 we can start splitting up the implementation work and focusing that energy
 differently? There is a lot of work we can do independently of the remaining
 decisions outlined in http://wiki.openstack.org/Meetings/MeteringAgenda.





 --
 Tomasz Paszkowski
 SS7, Asterisk, SAN, Datacenter, Cloud Computing
 +48500166299

 ___
 Mailing list: https://launchpad.net/~openstack
 Post to     : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp





-- 
Tomasz Paszkowski
SS7, Asterisk, SAN, Datacenter, Cloud Computing
+48500166299

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] ERROR: Malformed request url (HTTP 400)

2012-05-09 Thread Kevin L. Mitchell
On Wed, 2012-05-09 at 15:32 -0500, Dolph Mathews wrote:
 It also just occurred to me that perhaps you're using a *very* old
 novaclient against a more recent version of keystone?

Actually, if you look a little more closely:

 $ nova --debug image-list
 connect: (192.168.1.71, 5000)
 send: 'POST /v2.0/tokens HTTP/1.1\r\nHost:
 192.168.1.71:5000\r\nContent-Length: 117\r
 \ncontent-type:
 application/json\r\naccept-encoding: gzip, deflate\r
 \naccept:
 application/json\r\nuser-agent: python-novaclient\r\n
 \r\n{auth:

 {tenantName: labSpaceDemo, passwordCredentials:
 {username:
 adminUser, password: lfplhfgthvf}}}'

The request body for Keystone is not, in fact, malformed.  It would be
interesting to look at the nova-api logs for this request…
-- 
Kevin L. Mitchell kevin.mitch...@rackspace.com


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] 'nova flavor-list' fails with ERROR: string indices must be integers, not str, but 'nova-manage flavor list' succeeds.

2012-05-09 Thread James R Penick
Hey Folks,
 Any idea why 'nova flavor-list' (among other things) would fail with a 503 but 
'nova-manage flavor list' succeeds?

bash-4.1$ sudo nova-manage flavor list
Password:
m1.medium: Memory: 4096MB, VCPUS: 2, Root: 10GB, Ephemeral: 40Gb, FlavorID: 3, 
Swap: 0MB, RXTX Factor: 1.0
m1.large: Memory: 8192MB, VCPUS: 4, Root: 10GB, Ephemeral: 80Gb, FlavorID: 4, 
Swap: 0MB, RXTX Factor: 1.0
m1.tiny: Memory: 512MB, VCPUS: 1, Root: 0GB, Ephemeral: 0Gb, FlavorID: 1, Swap: 
0MB, RXTX Factor: 1.0
m1.xlarge: Memory: 16384MB, VCPUS: 8, Root: 10GB, Ephemeral: 160Gb, FlavorID: 
5, Swap: 0MB, RXTX Factor: 1.0
m1.small: Memory: 2048MB, VCPUS: 1, Root: 10GB, Ephemeral: 20Gb, FlavorID: 2, 
Swap: 0MB, RXTX Factor: 1.0

bash-4.1$ nova flavor-list
ERROR: string indices must be integers, not str
bash-4.1$

As an aside:

That error is a result of a 503 being passed back in the body of the get, which 
is then blindly passed to the json parser, and missed by the resp.status check 
in client.py:


if resp.status in (400, 401, 403, 404, 408, 409, 413, 500, 501):
raise exceptions.from_response(resp, body)

Adding a 503 to that status list above will at least cause it to fail correctly:


bash-4.1$ nova flavor-list
ERROR: n/a (HTTP 503)
bash-4.1$


That said, help?

Thanks!
-James



___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Keystone client, user belongs to many tenants?

2012-05-09 Thread Joseph Heck
users are defined as globally unique in keystone

what's anvil?

-joe

On May 9, 2012, at 1:46 PM, Joshua Harlow wrote:
 A question,
 
 I am using anvil to setup the keystone roles/users/tenants.
 
 It seems like the python keystone  client has the following command:
 
 client.users.create
 
 Which seems to take in the following:
 
 create(self, name, password, email, tenant_id=None, enabled=True):
 
 I would assume a user name can be used in multiple tenants but when I am 
 trying to create a user that spans tenants and it seems like it borks.
 
 ClientException: Conflict occurred attempting to store user. (IntegrityError) 
 (1062, Duplicate entry 'admin' for key 'name') 'INSERT INTO user (id, name, 
 extra) VALUES (%s, %s, %s)' ('3e14a9c1fd404c7e81c0dba8bd640575', 'admin', 
 '{password: 
 $6$rounds=4$yX5fL51OyGKjuPjr$8yv.S3GpqsKeaHv4GjNY4YW2vvykWzrEV7RX.qJpyy3CjmyXrZMRRJifEzfa7xv1l.NzoggQBXUAESn3Oqm0x/,
  enabled: true, email: ad...@example.com, tenantId: 
 d1506184877a449a91fc6adcb553ad97}') (HTTP 409)
 
 Is this supposed to happen? Is the client supposed to send back this much 
 info also (hashed password??) :-P
 
 Any ideas?
 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] ERROR: Malformed request url (HTTP 400)

2012-05-09 Thread Dolph Mathews
Hrm, good catch! I see no problems with that request at all...

-Dolph Mathews

On May 9, 2012, at 5:58 PM, Kevin L. Mitchell kevin.mitch...@rackspace.com 
wrote:

 On Wed, 2012-05-09 at 15:32 -0500, Dolph Mathews wrote:
 It also just occurred to me that perhaps you're using a *very* old
 novaclient against a more recent version of keystone?
 
 Actually, if you look a little more closely:
 
$ nova --debug image-list
connect: (192.168.1.71, 5000)
send: 'POST /v2.0/tokens HTTP/1.1\r\nHost:
192.168.1.71:5000\r\nContent-Length: 117\r
\ncontent-type:
application/json\r\naccept-encoding: gzip, deflate\r
\naccept:
application/json\r\nuser-agent: python-novaclient\r\n
\r\n{auth:

{tenantName: labSpaceDemo, passwordCredentials:
{username:
adminUser, password: lfplhfgthvf}}}'
 
 The request body for Keystone is not, in fact, malformed.  It would be
 interesting to look at the nova-api logs for this request…
 -- 
 Kevin L. Mitchell kevin.mitch...@rackspace.com
 

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Keystone client, user belongs to many tenants?

2012-05-09 Thread Dolph Mathews
The user create command is actually creating discrete users, each with a 
default tenant reference.

While that's fine for a lot of simple use cases, it doesn't directly support a 
user accessing multiple tenants at all.

Instead, create a role, and grant that role to a user-tenant pair, creating an 
explicit relationship between the two. Using default tenants is optional with 
this method, but will affect how users must auth.

-Dolph Mathews

On May 9, 2012, at 3:46 PM, Joshua Harlow harlo...@yahoo-inc.com wrote:

 A question,
 
 I am using anvil to setup the keystone roles/users/tenants.
 
 It seems like the python keystone  client has the following command:
 
 client.users.create
 
 Which seems to take in the following:
 
 create(self, name, password, email, tenant_id=None, enabled=True):
 
 I would assume a user name can be used in multiple tenants but when I am 
 trying to create a user that spans tenants and it seems like it borks.
 
 ClientException: Conflict occurred attempting to store user. (IntegrityError) 
 (1062, Duplicate entry 'admin' for key 'name') 'INSERT INTO user (id, name, 
 extra) VALUES (%s, %s, %s)' ('3e14a9c1fd404c7e81c0dba8bd640575', 'admin', 
 '{password: 
 $6$rounds=4$yX5fL51OyGKjuPjr$8yv.S3GpqsKeaHv4GjNY4YW2vvykWzrEV7RX.qJpyy3CjmyXrZMRRJifEzfa7xv1l.NzoggQBXUAESn3Oqm0x/,
  enabled: true, email: ad...@example.com, tenantId: 
 d1506184877a449a91fc6adcb553ad97}') (HTTP 409)
 
 Is this supposed to happen? Is the client supposed to send back this much 
 info also (hashed password??) :-P
 
 Any ideas?
 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


[Openstack] Beyond the Usergroups wiki page

2012-05-09 Thread Stefano Maffulli
Hello folks,

if you manage a user group or want to create one or you're simply
interested in OpenStack User Groups I would suggest to join this
conversation:

https://lists.launchpad.net/openstack-community/msg00081.html

I'd like to gather the specifications for a system to keep a better
directory of user groups, offer content for the international community
in languages other than English and have a system to identify/contact
all coordinators of user groups around the world. Your opinion is
appreciated. In a couple of weeks I'd like to have fixed the specs for
the system and move to the proof of concept/prototype phase.

Thanks,
stef
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Keystone client, user belongs to many tenants?

2012-05-09 Thread Gabriel Hurley
The tenant_id field on user creation is the default tenant for the user.

Adding a user to additional tenants is done by granting the user one or more 
roles on those tenants.

All the best,


-  Gabriel

From: openstack-bounces+gabriel.hurley=nebula@lists.launchpad.net 
[mailto:openstack-bounces+gabriel.hurley=nebula@lists.launchpad.net] On 
Behalf Of Joshua Harlow
Sent: Wednesday, May 09, 2012 1:46 PM
To: openstack
Subject: [Openstack] Keystone client, user belongs to many tenants?

A question,

I am using anvil to setup the keystone roles/users/tenants.

It seems like the python keystone  client has the following command:

client.users.create

Which seems to take in the following:

create(self, name, password, email, tenant_id=None, enabled=True):

I would assume a user name can be used in multiple tenants but when I am trying 
to create a user that spans tenants and it seems like it borks.

ClientException: Conflict occurred attempting to store user. (IntegrityError) 
(1062, Duplicate entry 'admin' for key 'name') 'INSERT INTO user (id, name, 
extra) VALUES (%s, %s, %s)' ('3e14a9c1fd404c7e81c0dba8bd640575', 'admin', 
'{password: 
$6$rounds=4$yX5fL51OyGKjuPjr$8yv.S3GpqsKeaHv4GjNY4YW2vvykWzrEV7RX.qJpyy3CjmyXrZMRRJifEzfa7xv1l.NzoggQBXUAESn3Oqm0x/,
 enabled: true, email: ad...@example.com, tenantId: 
d1506184877a449a91fc6adcb553ad97}') (HTTP 409)

Is this supposed to happen? Is the client supposed to send back this much info 
also (hashed password??) :-P

Any ideas?
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] questions on the dynamic loading of virt drivers in nova

2012-05-09 Thread Vishvananda Ishaya
No this is mostly just legacy stuff that was never refactored.

Vish
On May 9, 2012 3:33 PM, Sean Dague sda...@linux.vnet.ibm.com wrote:

 I'm familiarizing myself with the nova code and trying to reconcile that
 while there is dynamic class based loading in ComputeManager using
 import_utils in __init__() there is also a defaulting to the
 nova.virt.connection.get_**connection function.

 That's actually got a big if / else statement of string literals of known
 virt drivers, and then loads specific virt drivers from there.

 Is there a reason for both approaches? Can we refactor to a point where we
 don't need need of a common file with driver specific imports and string
 literals? Is there a reason not to?

 Thanks,

-Sean

 --
 Sean Dague
 IBM Linux Technology Center
 email: sda...@linux.vnet.ibm.com
 alt-email: slda...@us.ibm.com


 __**_
 Mailing list: 
 https://launchpad.net/~**openstackhttps://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : 
 https://launchpad.net/~**openstackhttps://launchpad.net/~openstack
 More help   : 
 https://help.launchpad.net/**ListHelphttps://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] 'nova flavor-list' fails with ERROR: string indices must be integers, not str, but 'nova-manage flavor list' succeeds.

2012-05-09 Thread Vishvananda Ishaya
Is there a traceback from nova-api?
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] 'nova flavor-list' fails with ERROR: string indices must be integers, not str, but 'nova-manage flavor list' succeeds.

2012-05-09 Thread James R Penick
Sorry, forgot to include that:

bash-4.1$ nova —debug image-list
connect: (127.0.0.1, 5000)
send: 'POST /v2.0/tokens HTTP/1.1\r\nHost: 127.0.0.1:5000\r\nAccept-Encoding: 
identity\r\nContent-Length: 101\r\ncontent-type: application/json\r\naccept: 
application/json\r\nuser-agent: python-novaclient\r\n\r\n'
send: '{auth: {tenantName: vmops, passwordCredentials: {username: 
penick, password: tacos}}}'
reply: 'HTTP/1.1 200 OK\r\n'
header: Content-Type: application/json
header: Vary: X-Auth-Token
header: Content-Length: 1903
header: Date: Thu, 10 May 2012 00:37:02 GMT
connect: (208.67.66.91, 8774)
send: u'GET /v2/c9d7f45d980d494fab3d69d9fc57547c/images/detail 
HTTP/1.1\r\nHost: 208.67.66.91:8774\r\nx-auth-project-id: 
vmops\r\nx-auth-token: 3261ef74e6494561830949780838\r\naccept-encoding: 
compress, gzip\r\naccept: application/json\r\nuser-agent: 
python-novaclient\r\n\r\n'
reply: 'HTTP/1.1 503 Service Unavailable\r\n'
header: Content-Length: 100
header: Content-Type: text/plain; charset=UTF-8
header: Date: Thu, 10 May 2012 00:37:02 GMT
DEBUG (shell:415) string indices must be integers, not str
Traceback (most recent call last):
  File /usr/lib/python2.6/site-packages/novaclient/shell.py, line 412, in main
OpenStackComputeShell().main(sys.argv[1:])
  File /usr/lib/python2.6/site-packages/novaclient/shell.py, line 363, in main
args.func(self.cs, args)
  File /usr/lib/python2.6/site-packages/novaclient/v1_1/shell.py, line 350, 
in do_image_list
image_list = cs.images.list()
  File /usr/lib/python2.6/site-packages/novaclient/v1_1/images.py, line 47, 
in list
return self._list(/images/detail, images)
  File /usr/lib/python2.6/site-packages/novaclient/base.py, line 80, in _list
data = body[response_key]
TypeError: string indices must be integers, not str
ERROR: string indices must be integers, not str
bash-4.1$


From: Vishvananda Ishaya vishvana...@gmail.commailto:vishvana...@gmail.com
To: James R Penick pen...@yahoo-inc.commailto:pen...@yahoo-inc.com
Cc: openstack@lists.launchpad.netmailto:openstack@lists.launchpad.net 
openstack@lists.launchpad.netmailto:openstack@lists.launchpad.net
Subject: Re: [Openstack] 'nova flavor-list' fails with ERROR: string indices 
must be integers, not str, but 'nova-manage flavor list' succeeds.


Is there a traceback from nova-api?
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Keystone client, user belongs to many tenants?

2012-05-09 Thread Lorin Hochstein

On May 9, 2012, at 4:46 PM, Joshua Harlow wrote:

 A question,
 
 I am using anvil to setup the keystone roles/users/tenants.
 
 It seems like the python keystone  client has the following command:
 
 client.users.create
 
 Which seems to take in the following:
 
 create(self, name, password, email, tenant_id=None, enabled=True):
 
 I would assume a user name can be used in multiple tenants but when I am 
 trying to create a user that spans tenants and it seems like it borks.
 

My guess is that once you have a user created, you would then use the 
client.tenants.add_user method to add the user to different tenants:

add_user(tenant, user, role)

I think you would do something like:

user=client.users.create(…)
role=…
for tenant in other_tenants:
 client.tenants.add_user(tenant, user, role)



 ClientException: Conflict occurred attempting to store user. (IntegrityError) 
 (1062, Duplicate entry 'admin' for key 'name') 'INSERT INTO user (id, name, 
 extra) VALUES (%s, %s, %s)' ('3e14a9c1fd404c7e81c0dba8bd640575', 'admin', 
 '{password: 
 $6$rounds=4$yX5fL51OyGKjuPjr$8yv.S3GpqsKeaHv4GjNY4YW2vvykWzrEV7RX.qJpyy3CjmyXrZMRRJifEzfa7xv1l.NzoggQBXUAESn3Oqm0x/,
  enabled: true, email: ad...@example.com, tenantId: 
 d1506184877a449a91fc6adcb553ad97}') (HTTP 409)
 
 Is this supposed to happen? Is the client supposed to send back this much 
 info also (hashed password??) :-P

Not sure about this one.


Take care,

Lorin
--
Lorin Hochstein
Lead Architect - Cloud Services
Nimbis Services, Inc.
www.nimbisservices.com




___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [QA] Aligning smoke / acceptance / promotion test efforts

2012-05-09 Thread Jay Pipes

On 05/03/2012 03:54 PM, Daryl Walleck wrote:

So my first question is around this. So is the claim is that the client
tools are the default interface for the applications?


Sorry, perhaps a better term would have been the most common interface 
to OpenStack Compute...


  While that works

for coders in python, what about people using other languages? Even
then, there's no guarantee that the clients in different languages are
implemented in the same way. Tempest was designed originally because
while it does use an abstraction between the API and the tests, there is
nothing to assist the user by retrying and the like. While I think
there's a place for writing tests using the command line clients, to me
that would be a smoke test of a client and not as much a smoke test of
the API.


I understand your point, and I want to make it clear that I'm not 
advocating for getting rid of the Tempest REST client at all. I'm only 
advocating that we have a set of tests -- smoke tests -- that use the 
Python novaclient library, run a small subset of the total tests, and 
exercise only the most common and simple use cases for OpenStack.


Here is where I think a sensible breakdown is:

* Smoke tests

 - Test ONLY *simple*, *fast* code paths for common use cases
 - Use a Manager class that has a novaclient Client object

* Negative tests

 - Test all code paths that should produce errors or negative results 
(NotFound, etc)

 - Use a Manager class that has the Tempest REST client

* Fuzz tests

 - Test all code paths with randomized input data
 - Use a Manager class that has the Tempest REST client

* Advanced tests

 - Test extensions, interaction between multiple components, advanced 
features of the API, etc
 - Use a Manager class that has a novaclient Client object OR the 
Tempest REST client, depending on whether:

  - novaclient actually has the ability to perform the necessary actions
  - If the test needs to poke at the API in a way that novaclient would 
interfere with -- and thus the Tempest REST client would be ideal


Best,
-jay

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [QA] Aligning smoke / acceptance / promotion test efforts

2012-05-09 Thread Jay Pipes

On 05/03/2012 10:54 PM, Maru Newby wrote:

The rest api is the default interface, and the client tools target that
interface. Since the clients are cli more than python api, they can be
used by any language that can use a shell. What exactly does
reimplementing the clients for the sake of testing accomplish? Double
the maintenance effort for the same result, imho.


There is a very specific reason that the novaclient library wasn't used. 
We needed a client that would enable us to throw invalid and random bad 
input data at the APIs. novaclient is designed to eliminate the ability 
to get an API call wrong, since it successfully constructs the proper 
HTTP API calls. We need a client that allows Tempest's negative tests to 
throw bad stuff at the API and verify the server's robustness in 
responding to that invalid data.


Best,
-jay

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Swift] swift news and plans

2012-05-09 Thread Soren Hansen
2012/5/4 John Dickinson m...@not.mn:
 TL;DR: removing code from swift, associated projects doc, swift 1.5.0

This is interesting stuff. Where was this discussed?

-- 
Soren Hansen             | http://linux2go.dk/
Senior Software Engineer | http://www.cisco.com/
Ubuntu Developer         | http://www.ubuntu.com/
OpenStack Developer      | http://www.openstack.org/

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] External API definition

2012-05-09 Thread Daniel Dyer
Is it your assumption that there will be one metering service per
installation or one per service (i.e swift, nova)? My assumption would be
a single metering service, so the API would need to handle some additional
use cases:
-list services supported
-list metrics for a service type
-get metric details

I would also consider separate use cases for accessing raw events vs.
aggregated metrics.

Dan Dyer
dan.d...@hp.com

On Wed, May 9, 2012 at 10:44 AM, Nick Barcet nick.bar...@canonical.comwrote:



 Doug Hellmann doug.hellm...@dreamhost.com wrote:

 On Wed, May 9, 2012 at 11:27 AM, Nick Barcet
 nick.bar...@canonical.comwrote:
 
  On 05/08/2012 08:27 AM, Nick Barcet wrote:
  [..]
 
  Thinking about this, I think we need to expend the API a bit to
 reflect
  the evolutions of the schema that we decided last week.  Here are my
  proposals:
 
   * Requests allow to
 GET account_id list
 
  change to: GET [user_id|project_id|source] list
 
 
 Does the [value|value] syntax mean choose one or combine? I assume
 choose one and you are using square brackets because parens are used
 in some of the other queries.

 You assumed correctly :)

 
 GET list of counter_type
 GET list of events per account
   optional start and end for counter_datetime
   optional counter_type
 
  change to: GET list of events per [user_id|project_id|source]
  optional start and end for counter_datetime
 optional counter_type
 
 
 Users may cross projects, so I'm not sure it makes sense to ask for the
 events generated by a user without restricting it by the project. At
 the very least we may need to allow them to specify user_id or project_id
 or both.

 Good point. Thanks for catching this.

 
 GET sum of (counter_volume, counter_duration) for counter_type
 and
   account_id
   optional start and end for counter_datetime
 
GET sum of (counter_volume, counter_duration) for counter_type and
  [user_id|project_id|source]
   optional start and end for counter_datetime
 
  Hope this makes sense.
 
  Another item that we need to discuss is extensibility of this API.
 
  Nick


 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] 'nova flavor-list' fails with ERROR: string indices must be integers, not str, but 'nova-manage flavor list' succeeds.

2012-05-09 Thread Chris Behrens
That's the traceback from novaclient.  If you're getting a 503, there's likely 
a traceback in the nova-api service logs.

- Chris

On May 9, 2012, at 5:38 PM, James R Penick pen...@yahoo-inc.com wrote:

 Sorry, forgot to include that:
 
 bash-4.1$ nova —debug image-list
 connect: (127.0.0.1, 5000)
 send: 'POST /v2.0/tokens HTTP/1.1\r\nHost: 127.0.0.1:5000\r\nAccept-Encoding: 
 identity\r\nContent-Length: 101\r\ncontent-type: application/json\r\naccept: 
 application/json\r\nuser-agent: python-novaclient\r\n\r\n'
 send: '{auth: {tenantName: vmops, passwordCredentials: {username: 
 penick, password: tacos}}}'
 reply: 'HTTP/1.1 200 OK\r\n'
 header: Content-Type: application/json
 header: Vary: X-Auth-Token
 header: Content-Length: 1903
 header: Date: Thu, 10 May 2012 00:37:02 GMT
 connect: (208.67.66.91, 8774)
 send: u'GET /v2/c9d7f45d980d494fab3d69d9fc57547c/images/detail 
 HTTP/1.1\r\nHost: 208.67.66.91:8774\r\nx-auth-project-id: 
 vmops\r\nx-auth-token: 3261ef74e6494561830949780838\r\naccept-encoding: 
 compress, gzip\r\naccept: application/json\r\nuser-agent: 
 python-novaclient\r\n\r\n'
 reply: 'HTTP/1.1 503 Service Unavailable\r\n'
 header: Content-Length: 100
 header: Content-Type: text/plain; charset=UTF-8
 header: Date: Thu, 10 May 2012 00:37:02 GMT
 DEBUG (shell:415) string indices must be integers, not str
 Traceback (most recent call last):
   File /usr/lib/python2.6/site-packages/novaclient/shell.py, line 412, in 
 main
 OpenStackComputeShell().main(sys.argv[1:])
   File /usr/lib/python2.6/site-packages/novaclient/shell.py, line 363, in 
 main
 args.func(self.cs, args)
   File /usr/lib/python2.6/site-packages/novaclient/v1_1/shell.py, line 350, 
 in do_image_list
 image_list = cs.images.list()
   File /usr/lib/python2.6/site-packages/novaclient/v1_1/images.py, line 47, 
 in list
 return self._list(/images/detail, images)
   File /usr/lib/python2.6/site-packages/novaclient/base.py, line 80, in 
 _list
 data = body[response_key]
 TypeError: string indices must be integers, not str
 ERROR: string indices must be integers, not str
 bash-4.1$ 
 
 
 From: Vishvananda Ishaya vishvana...@gmail.com
 To: James R Penick pen...@yahoo-inc.com
 Cc: openstack@lists.launchpad.net openstack@lists.launchpad.net
 Subject: Re: [Openstack] 'nova flavor-list' fails with ERROR: string indices 
 must be integers, not str, but 'nova-manage flavor list' succeeds.
 
 Is there a traceback from nova-api?
 
 ___
 Mailing list: https://launchpad.net/~openstack
 Post to : openstack@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~openstack
 More help   : https://help.launchpad.net/ListHelp
___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] [Metering] Meeting agenda for today 16:00 UTC (May 3rd, 2012)

2012-05-09 Thread Daniel Dyer
A question/comment about the scope of the schema or maybe the architecture.
Assuming the services will provide the instrumentation to populate the raw
metric data, it seems likely that you will need to define an interface
between the services/agents
that are providing the data and the metering system which stores the
generated metric data in the database (as opposed to having the services
write directly to the DB). Is the schema intended to be this kind of
interop format between the services and
the meter's datastore or just the end result of the storage?

Thanks,
Dan Dyer

On Thu, May 3, 2012 at 11:10 AM, Loic Dachary l...@enovance.com wrote:

  On 05/03/2012 02:22 PM, Loic Dachary wrote:

 Hi,

 The metering project team holds a meeting in #openstack-meeting,
 Thursdays at 1600 
 UTChttp://www.timeanddate.com/worldclock/fixedtime.html?hour=16min=0sec=0.
 Everyone is welcome.
 I propose an agenda based on the discussions we had on this list.

 http://wiki.openstack.org/Meetings/MeteringAgenda
 Topic : schema and counter definitions

  * counter definitions
* Proposed http://wiki.openstack.org/EfficientMetering#Counters
  * schema definition
* Proposed http://wiki.openstack.org/EfficientMetering#Storage
  * discuss storage assumptions
* the storage will store all events
* no aggregated value is permanently stored
  * discuss API assumptions
* the API provide a sum() function to aggregate values
* the API may transparently store results of the sum function in a cache
  * discuss event collection
* events are collected from a components when possible
* ceilometer agent is installed on a node when the a component does not
 provide the value
* contribute to the component instead of developping a ceilometer agent
 plugin
  * engaging discussions with core components
* nova
* cinder
* glance
* swift
* quantum
  *  open discussion

  For the record, the first two points used all the time but that was the
 goal of the meeting. The other points would have been nice to discuss but
 can each be turned into a mailing list thread ;-)

 ==
 #openstack-meeting Meeting
 ==


 Meeting started by dachary at 16:00:16 UTC.  The full logs are available
 athttp://eavesdrop.openstack.org/meetings/openstack-meeting/2012/openstack-meeting.2012-05-03-16.00.log.html
 .



 Meeting summary
 ---

 * actions from previous meetings  (dachary, 16:00:36)
   * creation of the ceilometer project  (dachary, 16:00:36)
   * The repository for the ceilometer project has been created
 (dachary, 16:00:36)
   * LINK: https://github.com/stackforge/ceilometer  (dachary, 16:00:36)
   * and the first commit was successfully reviewed and merged today
 https://review.stackforge.org/#/c/25/  (dachary, 16:00:37)

 * meeting organisation  (dachary, 16:01:03)
   * This is 1/5 meetings to decide the architecture of the Metering
 project https://launchpad.net/ceilometer  (dachary, 16:01:03)
   * Today's focus is on the definition of the counters / meters and the
 associated schema for the storage  (dachary, 16:01:03)
   * It is the conclusion of the discussions held on the mailing list and
 the goal is to make a final choice that will then be implemented.
 (dachary, 16:01:03)
   * The meeting is time boxed and there will not be enough time to
 introduce inovative ideas and research for solutions.  (dachary,
 16:01:03)
   * The debate will be about the pro and cons of the options already
 discussed on the mailing list.  (dachary, 16:01:03)
   * LINK: https://lists.launchpad.net/openstack/msg10810.html  (dachary,
 16:01:03)

 * counter definitions  (dachary, 16:02:10)
   * Proposed http://wiki.openstack.org/EfficientMetering#Counters
 (dachary, 16:02:10)
   * ACTION: dachary fix the note for net_float still talks about number
 of floating IPs  (dachary, 16:09:18)
   * ACTION: jd___ include Number of object in Swift, Number of
 containers in Swift, Number of GET/HEAD/PUT/POST requests in Swift
 in the table  (dachary, 16:10:11)
   * ACTION: dachary add note about the fact that the resource_id for the
 object count is the container_id  (dachary, 16:21:44)
   * LINK: http://wiki.openstack.org/EfficientMetering#Counters is agreed
 on, provided the actions listed above are carried out.  (dachary,
 16:25:35)
   * ACTION: jd___ document the resource_id for each counter  (dachary,
 16:30:33)
   * ACTION: jd___  describes the general table schema and then something
 that says for each counter exactly what goes in the fields of that
 table and show how secondary field counters are recorded in the in
 the schema too  (dachary, 16:33:27)
   * AGREED: s/counter/meter/  (dachary, 16:37:11)
   * LINK: http://wiki.openstack.org/EfficientMetering#Counters is agreed
 on, provided the actions listed above are carried out. ?  (dachary,
 16:37:38)
   * AGREED: 

[Openstack] Improving Xen support in the libvirt driver

2012-05-09 Thread Jim Fehlig
Hi,

I've been tinkering with improving Xen support in the libvirt driver and
wanted to discuss a few issues before submitting patches.

Even the latest upstream release of Xen (4.1.x) contains a rather old
qemu, version 0.10.2, which rejects qcow2 images with cluster size 
64K.  The libvirt driver creates the COW image with cluster size of 2M. 
Is this for performance reasons?  Any objections to removing that option
and going with 'qemu-img create' default of 64K?

In a setup with both Xen and KVM compute nodes, I've found a few options
for controlling scheduling of an instance to the correct node.  One
option uses availability zones, e.g.

# nova.conf on Xen compute nodes
node_availability_zone=xen-hosts

# launching a Xen PV instance
nova boot --image xen-pv-image --availability_zone xen-hosts ...

The other involves a recent commit adding additional capabilities for
compute nodes [1] and the vm_mode image property [2] used by the
XenServer driver to distinguish HVM vs PV images.  E.g.

# nova.conf on Xen compute nodes
additional_compute_capabilities=pv,hvm

# Set vm_mode property on Xen image
glance update image-uuid vm_mode=pv

I prefer that latter approach since vm_mode will be needed in the
libvirt driver anyhow to create proper config for PV vs HVM instances. 
Currently, the driver creates usable config for PV instances, but needs
some adjustments for HVM.

Regards,
Jim

[1]
https://github.com/openstack/nova/commit/bd30eb36bbf2c5164ac47256355c543f6b77e064
[2]
https://github.com/openstack/nova/commit/bd30eb36bbf2c5164ac47256355c543f6b77e064


___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


Re: [Openstack] Keystone client, user belongs to many tenants?

2012-05-09 Thread Yee, Guang
I think this use case underscores one of the key differences between the fat 
Keystone (Diablo - E3) and KSL (Essex final).  In fat Keystone, users and 
tenants are loosely coupled. They are bind together by role assignments. In 
KSL, users and tenants are tightly coupled, and IMHO very inflexible. Maybe the 
following example would further clarify this …

 

Suppose you have tenants Dodgers, Giants, and Brewers, user Bud Selid, roles 
Commissioner and Minority Owner, and service MLB. And you want Bud Selid to 
have the Commissioner role for Dodgers, Giants, and Brewers, but Minority Owner 
role for Brewers only.

 

In fat Keystone, there a couple of ways you can accomplish this.

 

1)  Make Commissioner a “global role” (unscoped) and assign it to user Bud 
Selid. Assign the Minority Owner role to Bud Selid for tenant Brewers by 
creating a role reference. When Bud Selid tries to access MLB with his unscoped 
token, MLB will get his Commissioner role back from Keystone. When Bud Selid 
tries to access MLB with his token scoped to Brewers, MLB will get both his 
Commissioner and Minority Owner roles back from Keystone. When Bud Selid tries 
to acess MLB with his token scoped to Giants or Dodgers, MLB will only get his 
Commissioner role back from Keystone.

2)  Assign the Commissioner role to Bud Selid to tenants Giants, Dodgers, 
and Brewers individually by creating the respective role references. Assign the 
Minority Owner role to Bud Selid for tenant Brewers by creating another role 
reference. In this scenario, Bud Selid will always need a scoped token to 
access MLB.

 

In KSL, there really aren’t any effective ways to accomplish the same thing. 
Global roles are no longer supported.  A given user must assign to exactly one 
tenant. I suppose you can have Bud Selid under the “Default Tenant”, and assign 
both Commissioner and Minority Owner roles to him. But there are two major side 
effects.

 

1)  Bud Selid must access MLB with the token scoped to the “Default Tenant” 
in order for MLB to recognize him as Commissioner. Which means he IS ALSO the 
Minority Owner for Dodgers, Giants, and Brewers. J

2)  If Bud Selid tries to access MLB with the token scoped to either 
Giants, Dodgers, or Brewers, his a NOBODY. J

 

The upcoming Domains blueprint (to be implemented for Folsom), which offers 
true multitenancy, should support these types of use cases.

 

https://blueprints.launchpad.net/keystone/+spec/keystone-domains

 

With Domains, you can create a MLB domain with tenants Dodgers, Giants, and 
Brewers. And have Bud Selid under the MLB domain. Notice that users will no 
longer be assigned to tenants. They will be under a domain. Create roles 
Commissioner and Minority Owner in the MLB domain. Assign the Commissioner role 
to Bud Selid, and the Minority Owner role scoped to Brewers. Suppose you have 
another domain NFL, Bud Selid will not be able to access any tenants in the NFL 
domain, unless the NFL domain administrator explicitly assign NFL roles to Bud 
Selid.

 

 

Guang

 

 

 

 

From: openstack-bounces+guang.yee=hp@lists.launchpad.net 
[mailto:openstack-bounces+guang.yee=hp@lists.launchpad.net] On Behalf Of 
Dolph Mathews
Sent: Wednesday, May 09, 2012 4:34 PM
To: Joshua Harlow
Cc: openstack
Subject: Re: [Openstack] Keystone client, user belongs to many tenants?

 

The user create command is actually creating discrete users, each with a 
default tenant reference.

 

While that's fine for a lot of simple use cases, it doesn't directly support a 
user accessing multiple tenants at all.

 

Instead, create a role, and grant that role to a user-tenant pair, creating an 
explicit relationship between the two. Using default tenants is optional with 
this method, but will affect how users must auth.


-Dolph Mathews


On May 9, 2012, at 3:46 PM, Joshua Harlow harlo...@yahoo-inc.com wrote:

A question,

I am using anvil to setup the keystone roles/users/tenants.

It seems like the python keystone  client has the following command:

client.users.create

Which seems to take in the following:

create(self, name, password, email, tenant_id=None, enabled=True):

I would assume a user name can be used in multiple tenants but when I am trying 
to create a user that spans tenants and it seems like it borks.

ClientException: Conflict occurred attempting to store user. (IntegrityError) 
(1062, Duplicate entry 'admin' for key 'name') 'INSERT INTO user (id, name, 
extra) VALUES (%s, %s, %s)' ('3e14a9c1fd404c7e81c0dba8bd640575', 'admin', 
'{password: 
$6$rounds=4$yX5fL51OyGKjuPjr$8yv.S3GpqsKeaHv4GjNY4YW2vvykWzrEV7RX.qJpyy3CjmyXrZMRRJifEzfa7xv1l.NzoggQBXUAESn3Oqm0x/,
 enabled: true, email: ad...@example.com, tenantId: 
d1506184877a449a91fc6adcb553ad97}') (HTTP 409)

Is this supposed to happen? Is the client supposed to send back this much info 
also (hashed password??) :-P

Any ideas? 

___
Mailing list: 

Re: [Openstack] [nova] why does notification use a topic exchange instead of fanout?

2012-05-09 Thread Russell Bryant
On 05/09/2012 03:17 PM, Tihomir Trifonov wrote:
 Hi Doug,
 
 not sure if you've hit the same problem, but I've spent some time on
 that when I started using RabbitMQ. As I see from the example, you've
 provided:
 
 queue = Queue(name='notifications.info',
 
   exchange=Exchange(name='nova'...
 
 
 
 So you set explicitly a name for the queue. If you have two queues
 declared with the same name, when they are bound to an Exchange,
 actually each message is received only by the one queue at a time.

To be a bit pedantic, the result is that there is only one queue and two
consumers from that queue.  Only one consumer gets each message.  When
there is more than one consumer from the same queue, messages will be
distributed in a round-robin fashion.

-- 
Russell Bryant

___
Mailing list: https://launchpad.net/~openstack
Post to : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp