Okay, it transpires some of my Java guys also know C....  who knew.

Anyway, they have been tasked with adding LXC/LXD support to Apache Mesos
which we'll push upstream assuming they want it. My plan is to then extend
Marathon to support LXD deployments and from that we'll then build a Juju
provider for Juju 2 to do juju deploy to Mesos..... who knows what pitfalls
lie ahead but work has begun!.

Tom

On Fri, Nov 18, 2016 at 3:31 PM, Merlijn Sebrechts <
merlijn.sebrec...@gmail.com> wrote:

> 2016-11-18 15:43 GMT+01:00 Tom Barber <t...@spicule.co.uk>:
>
>> You mention stateless, thats fine, but for example, if you have sessions
>> in a web app, you'd need to share the sessions etc, so autoscaling isn't
>> really any different to juju add-unit except you've got some stuff to
>> monitor load and do it without user intervention. Also you'll find the flip
>> side to the autoscaling argument where nodes could shutdown mid flow or
>> ditch sessions etc, so whilst Im sure in a lot of places it works great,
>> you still have to create containers that work properly in a scaling
>> environment, which is exactly the same as when you design charms :)
>>
>>
> Yes! Kubernetes autoscaling only works for stateless services. These
> services should connect to an external datastore if they want stuff like
> sessions.
>
> Applications that aren't "cloud-native" can't be autoscaled by Kubernetes
> because they require more than "spin up another service and connect it to
> the load balancer and the datastore". They need more complex configuration;
> configuration that Juju is great at! Kubernetes is great at scheduling,
> Juju is great at orchestration. Hence Juju + K8s = goodness.
>
>
>> I agree with the image stuff to some extent, certainly I've used that as
>> a selling point, the flip side of course is, do you run apt-get update when
>> you start a container? Maybe, but most people won't, what about the latest
>> security flaws in applications that will go unpatched? It also makes for
>> complacency .
>>
>>
> The sane way to use Docker is to build the image as part of a CI/CD
> pipeline. Dev triggers a rebuild when code changes, ops triggers a rebuild
> to fix security issues. After a rebuild, the ci system tests the image
> heavily. If all tests succeed, the image gets deployed to production and
> you are 100% sure that all prod images will be 100% what you just tested.
> Reproducability so that wat runs in production is exactly what is tested.
>
> Although many people think that Docker means "what the dev runs on his
> machine is what runs in production" which is obviously a bad idea and no
> technology will fix that.
>
> Of course I agree, plenty of large businesses do run their stuff in
>> docker, I use docker in production, I'm not saying don't use docker :) I'm
>> just saying that in reality its not the panacea a lot of people who want to
>> do high volume scale out apps think it is, not without writing a lot of
>> code around it for your own solution :)
>>
>> On Fri, Nov 18, 2016 at 2:34 PM, Merlijn Sebrechts <
>> merlijn.sebrec...@gmail.com> wrote:
>>
>>> I'm mostly working with researchers and people developing early
>>> prototypes. I can't blame them for using technologies that aren't
>>> production ready. That said, I attended pragmatic docker days a while back
>>> and there were some companies, like Yelp, who found a good way to run
>>> Docker in production so it is possible, given you have a boatload of good
>>> ops people.
>>>
>>> Big Data Europe <https://www.big-data-europe.eu/> seems to be going
>>> towards Docker containers for scalable Hadoop setups
>>> <https://www.big-data-europe.eu/scalable-sparkhdfs-workbench-using-docker/>.
>>> Not that it's a production ready setup, but with a name like that and H2020
>>> funding, we (big data researchers) can't really ignore them...
>>>
>>> Juju is awesome for us (big data researchers) because we have a bunch of
>>> short-lived projects that use Hadoop etc. in a bunch of different setups,
>>> and
>>>
>>>    1. we don't want to be writing a new wrapper around the Hadoop chef
>>>    cookbook for every project;
>>>    2. we don't want to be creating a new "Hadoop + X" Docker container
>>>    for every setup.
>>>
>>> However, we can't ignore the advantages of Docker vs Juju:
>>>
>>>    1. image-based so the same setup is 100% reproducible if you have
>>>    the image;
>>>    2. auto scaling and failure recovery.
>>>
>>> So we want the stateless, auto-scalable, auto-recoverable images from
>>> Docker and we want Juju's relations and automatic configuration. So how to
>>> we get docker containers that can be configured at run-time by Juju? Ben is
>>> working on something to configure containers
>>> <https://github.com/bcsaller/layercake>, but afaik, no integration with
>>> Juju planned.
>>>
>>> PS: We're interested in Mesos but, as always, our time-to-put-into-it is
>>> limited..
>>>
>>>
>>>
>>> 2016-11-18 12:27 GMT+01:00 Tom Barber <t...@spicule.co.uk>:
>>>
>>>> I'll fork this so we're not hijacking another thread.
>>>>
>>>> Mesos runs Mesos tasks via frameworks or Docker/Rocket containers
>>>> currently. Annoyingly they used to have a scriptable container endpoint I
>>>> was hoping to knock up a POC against but they removed it, and my C is
>>>> woeful so implementing it will take some time. I also asked on the Mesos
>>>> mailing lists and they couldn't grok the use case, apparently docker does
>>>> everything anyone needs ;)
>>>>
>>>> When I was at the Pentaho meetup last week, there's already a bunch of
>>>> data folk who run DC/OS or Mesos to manage their workloads which sorta
>>>> validated my use case as prior to that it was only theoretical.
>>>>
>>>> There are certainly a bunch of useful docker containers, I wouldn't
>>>> deny that for a second, but the docker reality in production is often a lot
>>>> like the Big Data stuff a few years back, it works but does it work well
>>>> enough. In some places certainly, but in others not so much. We make a lot
>>>> of use of Docker recently on some NASA projects, but I'm under no illusions
>>>> that in reality Juju running containers would be a much improved plan, but
>>>> they already have Mesos etc running so why upset the apple cart? Similarly
>>>> at ApacheCon we had developers praising Docker and Systems Administrators
>>>> saying its the bane of their life.
>>>>
>>>> That said, you don't really see people spin up a scalable hadoop setup
>>>> in Docker because it would be annoying to maintain, but you could easily do
>>>> that in Juju on whatever, or Puppet etc. Of course you can do it, and it
>>>> will become more common over time especially with k8s auto scaling etc for
>>>> sure.
>>>>
>>>> Who said Mesos or DC/OS providers and charms wouldn't get official
>>>> support? That said currently we're just lacking bandwidth to build them(I
>>>> speak entirely as an impartial observer I have no real idea if they'd get
>>>> Canonical support, but why not?) ;)
>>>>
>>>> Tom
>>>>
>>>> On Fri, Nov 18, 2016 at 9:59 AM, Merlijn Sebrechts <
>>>> merlijn.sebrec...@gmail.com> wrote:
>>>>
>>>>> Wait, wouldn't this require juju to have an "mesos" provider, so juju
>>>>> can request lxc containers from mesos? I've heard something like this
>>>>> mentioned at the Summit, will this become a reality? [that would be
>>>>> awesome!]
>>>>>
>>>>> We want support for Docker containers because:
>>>>>  - A lot devs we work with create their prototypes in docker
>>>>>  - There are a bunch of useful docker containers with stuff that isn't
>>>>> charmed yet
>>>>>
>>>>> We want Kubernetes because:
>>>>>  - Auto scaling
>>>>>  - Auto failure recovery
>>>>>  - It has a future beyond Docker
>>>>>  - The Charms are officially supported by Canonical (hence Kubernetes
>>>>> > Mesos)
>>>>>
>>>>>
>>>>> 2016-11-18 10:41 GMT+01:00 Tom Barber <t...@spicule.co.uk>:
>>>>>
>>>>>> What you want Merlijn is LXC on Apache Mesos so you can provision a
>>>>>> Mesos cluster on MAAS and then provision Juju Charms into LXC on the
>>>>>> infinitely scalable cluster! Docker is cool but until it releases the
>>>>>> proper orchestration stuff, it comes a poor second to deploying workloads
>>>>>> with Juju ;)
>>>>>>
>>>>>> That's not a slight at the great work Adam, Chuck and co are doing,
>>>>>> but feedback I got from people at the Pentaho User meetup last weekend 
>>>>>> and
>>>>>> ApacheCon this week who all get 'stuck' with Docker once the convenience
>>>>>> factor has gone away. Anyway, I digress.... Amazing getting proper Docker
>>>>>> running on LXD as well.
>>>>>>
>>>>>> Tom
>>>>>>
>>>>>>
>>>>>>
>>>
>>
>>
>> --
>> Tom Barber
>> CTO Spicule LTD
>> t...@spicule.co.uk
>>
>> http://spicule.co.uk
>>
>> GB: +44(0)5603641316
>> US: +18448141689
>>
>>
>>
>


-- 
Tom Barber
CTO Spicule LTD
t...@spicule.co.uk

http://spicule.co.uk

GB: +44(0)5603641316
US: +18448141689
-- 
Juju mailing list
Juju@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/juju

Reply via email to