you are right, OS is same , which is Linux kernerl, But the
Ubuntu/CoreOS/Redhat etc distinction are in userspace (i.e tools other than
the kernel), and hence you can have coreos running ubuntu/redhat
containers. You cant have container specific kernels, drivers, time
susbsytem etc. But you can certainly have different distros (redhat, ubuntu
etc are different distro, not OS).

CoreOS eases management of container , an immutable & minimal rootfs ,
backed by tools (etcd, systemd, fleet, flannel) etc that facilitates
building large scale systems. For example, etcd is almost a replacement of
zookeeper (you can use it for leader election, distributed locks etc).
Fleet is a distributed init system.

CoreOS does not provide a sceduler, which mesos does. Also coreos is not a
resource scheduling system, which mesos is. You have containarize things to
run on coreos (currently its docker, i think it will rocket in future).
While thats not a mandate for mesos.

Neither CoreOS not Mesos gives you `distributed systems`, you can
distribute your workload using mesos or coreos (mesos will autoschedule
things for you). Generally the word `distributed systems` used to describe
things like zookeeper, etcd, cassandra, riak, serf etc, where the members
are aware of each other, without any external components. Most of them also
uses  sound theoretical foundations like paxos, raft etc for attaining
different types of consistency, partition tolerance etc.

Mesos and CoreOS address orthogonal issues, and they can definitely
complement each other. CoreOS eases updating kernel, manageing app
deployments due to host OS and app separation. While mesos eases scaling
and usage issues by autoscheduling. Mesos can use coreos for its
containment layer (docker/rocket), as well as use etcd (from coreos) to do
the leader election bit instead of zookeeper (which is pain to run over
WAN, pain to dynamically resize etc). But there are major work involve.


regards
ranjib

Reply via email to