Hi Matthias,

I'm going to attempt to answer as many questions that I have answers to.
Please see my replies in-line below.


…
On Wed, Jan 20, 2016 at 11:18 PM Matthias Götzke <[email protected]> wrote:

> Can anybody shed some light on these Docker questions we are facing in
> relation to Smartos and Triton  (we are also just learning how to apply
> Docker to our existing dev workflows as some questions might betray 😊 )
> ? It is our understanding that SmartOS really wants to work well with
> Docker but we cannot yet see a clear path ahead as to how to actually use
> it without using KVMs again or running on directly on linux and thus
> loosing ZFS.
>
>
>
> Questions:
>
>
>
> 1)      Are there any plans on supporting docker daemon in a smartos/lx
> zone in the future ?
>
> (Right now we get errors such as ‘overlay’ not found as a supported
> filesystem on this host)
>
2)       I see how I can use
> https://github.com/joyent/smartos-live/tree/master/src/dockerinit to
> start a process but what exactly makes this docker ? How can I push a
> container there or talk to it from my dev machine etc ?
>
Are you trying to use Docker without SDC? Typically, you would use it in
conjunction with SDC and set your DOCKER_HOST environment variable to the
appropriate value for your SDC installation. As to how to do this in
stand-alone SmartOS, I can't comment.
…

> 3)      Getting started in Triton with containers was quite simple (after
> understanding some limitations such as port mapping missing, not a big deal
> but many examples in docker use that and thus you stumble here at first),
> but how do I get snapshots made in Triton a’la zsnapper. Can I make a
> snapshot copy of a container to test a configuration change ?
>
> 4)      Can I somehow zfs diff backup a container in Triton as is , to
> ensure a perfect replica ?
>
> 5)      Does Triton have some kind of dynamic DNS service which I could
> point to a container ?
>
There is one coming out soon. This describes the functionality offered:
https://github.com/joyent/rfd/blob/master/rfd/0001/README.md
…

> 6)      How do I handle data-volumes on Triton if Joyent doesn’t like
> volume-from and there is not real ‘host’ (BrianC talked about no liking
> that). Our Server Data Core Code is a web-service which has its shard of
> data (append only file structure) collocated with it right now.  In Docker
> we would use data volumes but I don’t want to go over the network from the
> code to the data. The whole point of our setup was to keep code and data
> together.
>
The answer to this depends a lot on your use case. With traditional Docker
folder mounted volumes it is important to remember that you can never scale
that particular folder to more than one host, so this limits your
architectural possibilities. That said, there are a number of options that
I have used:

1. Use a data volume (
https://docs.docker.com/engine/userguide/dockervolumes/). Data volumes are
containers without compute associated with them. You can attach them to a
single container but you can't share them with two containers at the same
time.
2. Use an object store like Manta. This will typically require coding your
application such that it will support the object store. I believe that this
is the best choice in most scenarios if your environment permits it. This
approach will allow you to tune your brownout and blackout scenarios to fit
the SLA of your application.
3. Use a distributed file system like Syncthing (https://syncthing.net/).
This works well with applications like Wordpress or Drupal that handle user
uploads. If you do this in conjunction with your load balancer's routing
strategy being set up to route client requests from the same system to the
same back-end, you will not have any degradation during the gap between
upload and cross host synchronization.
4. Use a replicating data store like Couchbase. These type of data stores
fit well because you don't need to rely on detaching data volumes because
you can always spin up new hosts and rebalance the data onto them.
…

>
>
> Any help or pointers would be greatly appreciated. I hope there are at
> least some people here how are interested in Docker on SmartOS 😉 or have
> more experience with it.
>
Be sure to read the divergence documentation:
https://github.com/joyent/sdc-docker/blob/master/docs/api/divergence.md

Be sure to tune your application's thread pools (or GC) because if it is
auto-tuning based on the number of detected processors/cores, then it will
be not be tuned properly.

Checkout the /native directory. You get a bunch of great utilities for free
in your Docker container like dtrace and prstat.

> …

>
>
> Thanks,
>
> Matthias
>
>
>
> Background:
>
>
>
> I am experimenting with docker on sdc as well as docker directly on our
> smartos hosts but are having a number of questions.
>
>
>
> We are currently hosting a number of smartos servers in datacenters in
> Germany and some directly inside customers DCs. Right now we have a pretty
> well working setup with SmartOS zones preconfigured by Chef directly from
> Git on our master servers and then we can transport those as imgadm Images
> to our customer or the other DC sites. Automatic Snapshotting is performed
> by zsnapper and Backup is done via zfs send -I to the dedicated backup
> machines. We can quickly spin up any backuped up machine somewhere else if
> we needed to,
>
>
>
> In the future though, we are looking at moving our software application to
> docker to streamline some processes there and docker/smartos looked like a
> great thing (also in case one of our applications would have to be moved to
> an actual cloud provider such as Joyent ‘Triton’). But the amount of
> available documentation on getting docker to replace our current setup is a
> little elusive.
>
>
>
>
>
> PS:
>
We do not currently have plans to setup a full SDC (mostly because we
> cannot appropriately judge how much know-how we will have to build up and
> how long that would take as well as the fact that 1) we don’t have head
> nodes setup in the datacenter, thus new hardware would be required and 2)
> the SDC UI isn’t open source it seems and 3) the whole backup/zfs
> management of sdc is unclear). I am not unwilling but no matter how easy it
> is, it will be more complicated and thus more to learn than just learning
> how to running docker host in a vm, knowledge we would have to gain,retain
> and update regularly
>
If you get to the point where the only thing holding you back is the SDC
UI, please contact Joyent - they will be willing to work with you.



-------------------------------------------
smartos-discuss
Archives: https://www.listbox.com/member/archive/184463/=now
RSS Feed: https://www.listbox.com/member/archive/rss/184463/25769125-55cfbc00
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=25769125&id_secret=25769125-7688e9fb
Powered by Listbox: http://www.listbox.com

Reply via email to