you can use devstack with no docker, and only use VMs
noorul
I need to try out solum in test openstack instance
adrian_otto
with Solum.
noorul
I have a compute node
ravips joined the channel
If I install docker on that, will solum work as such?
adrian_otto
you don't need Docker on the compute node if you don't want it
noorul
If I have to save time
since nova does not support docker yet, will this work without devstack?
adrian_otto
ok, so in the case where you want to built with docker and deploy using a VM, for that we need additional functionality added. That's a "custom" workflow.
you would do a VM image build during your build process (and optionally a docker build as well)
then when you deploy, you use a Heat template that calls for the VM image rather than the container image.
xiaoli joined the channel
nova can work with docker if you use the nova-docker driver
our demo environment is set up that way
so when Heat creates an OS::Nova::Server instance, you get a docker container instead of a VM
noorul
What do you think? Is it better to move towards docker?
eghobo joined the channel
The question is not with respect to solum
adrian_otto
yes, I think so. In the case where people want to use VM's for production, we can allow that by using the docker container image within that new VM
noorul
In general
adrian_otto
oh, well my answer would depend on the intended use case. Particularly the multi-tenancy situation.
in general, I think that short-lived processes should be containerized.
paulmo
… and how much work an operator would put into a Mandatory Access Control lockdown.
james_li
The problem with our gate is we use v3.2 kernel, but docker seems not like it. And I know nova-docker team is using F20 for their gate.
adrian_otto
paulmo: yes
long lived processes where multiple workloads share the same server hardware is a better fit for VM's at this point.
until there is sufficient hardening of the host operating systems using a variety of kernel security techniques.
at some point, the practical different in security between VM's and containers will be very close.
and it's at that point where I would begin to endorse general purpose workloads to use containers instead of VM's
noorul
are containers less secure today?
adrian_otto
noorul: does that point of view make sense?
noorul: the containers themselves are really not the concern
it's the security of the host that runs the containers
paulmo
It is a security (and the operator work to isolate containers) vs resource efficiency/performance tradeoff.
noorul
ok
adrian_otto
yes, paulmo. If the operator does a really good job of securing the compute hosts, then they can bring the security level of containers very close to what they enjoy from VM's and be able to pack more workloads onto the same amount of equipment.
paulmo
It is easier to "escape" a container than it is to escape a VM generally speaking.
adrian_otto
if the operator does nothing to secure the compute hosts, then containers will be a disaster from a security perspective
paulmo nods at Adrian, just agreeing with you.
if you mix workloads from neighboring tenants on the same compute nodes.
noorul: The key difference is that containers share a kernel with other containers
with a type-2 hypervisor, each guest has its own kernel
noorul
Got it
adrian_otto
and the facilities to communicate with the host htrough the hypervisor are very limited and narrow
whereas a container (depending on how the host is set up) may be allowed to have unrestricted access to the kernel
and that's a potential security risk
noorul
Got iy
thank you for clarifying
adrian_otto
because if you escape into kernel, you can reach into other guests
noorul is new to docker
so all of my qualifying statements are about how the operator sets up what access a host gives to its containers to interact with it
to control and narrow that risk, much like a type-2 hypervisor does
paulmo: I have not studies all of the breakouts, but my understanding is that most of them are DoS attacks by nature
at least the ones that impact XEN
the CVE-2012-0217 looks delicious!
alexheneveld has quit
randallburt joined the channel
paulmo
There are several avenues besides DOS (was away from desk for a minute). USB3 DMA was a big issue for a while (might still be) for example.
… and even just plain old coding mistakes enabling exploits.
noorul
paulmo: Is someone working on the logging part that you were talking about in the pipeline google-doc?
paulmo
Well, I'm working on it at the very moment but in a more OpenStack-wide manner...
noorul
paulmo: Oh I see
paulmo
I'm working with the OpenStack Security Group to attempt to put a practice in place to identify confidential data up front (like we are in Solum) and make some standards.
openstackgerrit has quit
… but you are referring to aggregating and reporting real time logs to users right? No, I don't know of anyone tackling that.
noorul
Yes
paulmo
The question I would have is: Is that an operator problem to solve or a Solum problem to solve?
noorul
Isn't reporting important for solum pipleline?
paulmo
Yes, I very much think so. I'm just not sure where the greater community's mindset is on this topic. Probably a good topic for our next IRC meeting
noorul
Hmm
adrian_otto
step one is to make flexible workflows
then to add an even stream from them
noorul
by workflows do you mean pipleline?
adrian_otto
yes
once we have an event stream, expose that to the user
and then expand on that so that various solum components feed their status changes into that stream, including (especially) errors
paulmo: is that how you see it?
edmund1 has quit
paulmo
At a high level… lots of devil's in the details there. :)
edmund joined the channel
adrian_otto
of course
noorul
One more thing I just thought of asking. When does solum comes into picture for a developer? When I listed down the user case,I thought a developer will be doing development in a laptop and he only needs solum when he needs a pipeline for gatig
s/user case/use case
adrian_otto
noorul: that depends
it's possible to do all your dev/test on a laptop, and generate a container (or VM) image there
and then feed that into Solum when you are ready to deploy.
zz_paulczar is now known as paulczar
or, you can have solum do all the build/test and image building remotely.
that's the use case that we expect will be more common
so developers can just commit code to the repo, and the rest happens behind the scenes
noorul
what do you mean by image building in this case?
adrian_otto
generation of a container image, and uploading that to glance
or generation of a VM image, and uploading that to glance
noorul
so this is only for container
adrian_otto
you could do either.
noorul
This what we were discussing
adrian_otto
strictly speaking Solum does not care about the type of image you create
noorul
Is solum going to generate a vm image?
adrian_otto
because the template just passes the id of the DU image into the heat template, and Heat asks nova for an instance of OS::Nova::Server using that image
so if it's a container image, and you are using nova-docker, then you can get a docker container as the OS::Nova::Server instance
and if not, then you can get a VM
solum *can* generate VM images, yes
we have code for that under contrib/lp-cedarish/vm and contrib/lp-cedarish/vm-slug
noorul
ok,
edmund has quit
For my use case I think I will not be using that
we need to make use of language packs somehow
adrian_otto
you want to build your own images, or you want Solum to build them?
paulmo
Great, the OSSG is generally very happy with the ideology being proposed for isolating logs (the weekly IRC meeting is happening now).
adrian_otto
!! great paulmo !!
noorul
I do not want heroku language packs
adrian_otto
ok
sorry I have to start packing up to head to an appointment outside the office.
noorul
in that case I think I should build my own image
and create a language pack
adrian_otto
noorul: that makes sense based on my understanding of how you work today
noorul
and I think we need code to use this language pack
as of now we are not using language_packs resource
adrian_otto
noorul: I think we do need a new bit of code to allow you to specify your own image to use for a build, yes