Excerpts from Fox, Kevin M's message of 2017-03-11 21:31:40 +0000:
> No, they are treated as second class citizens. Take Trova again as an 
> example. The underlying OpenStack infrastructure does not provide a good 
> security solution for Trove's use case. As its more then just IaaS. So they 
> have spent years trying to work around it on one way or another, each with 
> horrible trade offs.
> 
> For example they could fix an issue by:
> 1. Run the service vm in the users tenant where it belongs. Though, currently 
> the user has permissions to reboot the vm, login through the console and 
> swipe any secrets that are on the vm and make it much harder for the cloud 
> admin to administer.
> 2. Run the vm in a "trove" tenant. This fixes the security issue but breaks 
> the quota model of OpenStack. Users with special host aggregate 
> access/flavors can't work with this model.
> 
> For our site, we can't use Trove at all at the moment, even though we want 
> to. Because option 2 doesn't work for us, and option 1 currently has a 
> glaring security flaw in it.
> 
> One of the ways I saw Trove try to fix it was to get a feature into Nova 
> called "Service VM's". VMs owned by the user but not fully controllable by 
> them but from some other OpenStack service on their behalf. This, IMO is the 
> right way to solve it. There are a lot of advanced services that need this 
> functionality. But it seems to have been rejected, as "users don't need 
> that"... Which is true, only if you only consider the IaaS use case.
> 

You're right. This type of rejection is not O-K IMO, because this is
consumers of Nova with a real use case, asking for real features that
simply cannot be implemented anywhere except inside Nova. Perhaps the
climate has changed, and this effort can be resurrected.

> The problems of these other OpenStack services are being rejected as second 
> class problems, not primary ones.
> 
> I'm sure other sites are avoiding other OpenStack advanced services for 
> similar reasons. its not just that Operators don't want to deploy it, or that 
> Users are not asking for it.
> 
> Let me try and explain Zane's post in a sligtly different way... maybe that 
> would help...
> 
> So, say you had an operating system. It had the ability to run arbitrary 
> programs if the user started an executable via the keyboard/mouse. But had no 
> ability for an executable to start another executable. How useful would that 
> OS be? There would be no shell scripts. No non monolithic applications. It 
> would be sort of functional, but would be hamstrung.
> 
> OpenStack is like that today. Like the DOS operating system. Programs are 
> expected to be pretty self contained and not really talk back to the 
> Operating System its running on, nor a way to discover other programs running 
> on the same system. Nor really for a script running on the Operating System 
> to start other programs, chaining them together in a way thats more useful 
> then the sum of their parts. The current view is fine if you need is just a 
> container to run a traditional OS in. Its not if you are trying to build an 
> application that spans things.
> 
> There have been several attempts at fixing this, in Heat, in Murano, in the 
> App Catalog, but plumbing they rely on isn't really supportive of it, as they 
> believe the use case really is just launching a VM with an OS in it is really 
> the important thing to do, and the job's done.
> 
> For the Applications Catalog to be successful, it needs the underlying cloud 
> to have enough functionality among a common set of cloud provided services to 
> allow applications developers to write cloud software that is redistributable 
> and consumable by the end user. Its failed because the infrastructure just 
> isn't there. The other advanced services are suffering from it too.
> 

I'm not sure I agree. One can very simply inject needed credentials
into a running VM and have it interact with the cloud APIs. However,
there is a deficiency that affects all VM users that might make this
a more desirable option.

There's a lack of a detailed policy management piece. What I'd really
like to inject is an API key that can only do the 2 things my app needs
(like, scale up load balancer, or allocate and attach a volume to itself).
Roles are just too opaque for that to really work well these days.

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to