有朋友在玩CoreOS么

102 views
Skip to first unread message

ghosTM55

unread,
Aug 31, 2014, 3:01:48 AM8/31/14
to sh...@googlegroups.com
https://coreos.com/

有兴趣的可以看看,如果有人玩过有没有兴趣来我们shlug的月度聚会上做个分享?

谢谢

--
Thomas
Shanghai Linux User Group
GitCafe - Share a cup of open source

http://ghosTunix.org
Twitter: @ghosTM55

Chaos Eternal

unread,
Aug 31, 2014, 3:37:04 AM8/31/14
to sh...@googlegroups.com
看上去是Cloud Foundry的强力竞争者啊
> --
> -- You received this message because you are subscribed to the Google Groups
> Shanghai Linux User Group group. To post to this group, send email to
> sh...@googlegroups.com. To unsubscribe from this group, send email to
> shlug+un...@googlegroups.com. For more options, visit this group at
> https://groups.google.com/d/forum/shlug?hl=zh-CN
> ---
> 您收到此邮件是因为您订阅了Google网上论坛中的“Shanghai Linux User Group”论坛。
> 要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到shlug+un...@googlegroups.com
> 要查看更多选项,请访问https://groups.google.com/d/optout

Wales Wang

unread,
Aug 31, 2014, 4:07:50 AM8/31/14
to sh...@googlegroups.com, sh...@googlegroups.com
呵呵
IT永远是一浪再发一浪。

Vmware 的vSphere就是redhat rhel Linux一个二进制补丁,过了10年,还卖那么贵。自然有人来再革命。
Xen 4.0就全开源了。比较懂时势。

Wales Wang
> 您收到此邮件是因为您订阅了 Google 网上论坛的“Shanghai Linux User Group”论坛。

Shell Xu

unread,
Aug 31, 2014, 8:23:56 AM8/31/14
to shlug
coreos有调度器了么?


您收到此邮件是因为您订阅了 Google 网上论坛的“Shanghai Linux User Group”论坛。

要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到shlug+un...@googlegroups.com
要查看更多选项,请访问 https://groups.google.com/d/optout



--
彼節者有間,而刀刃者無厚;以無厚入有間,恢恢乎其於游刃必有餘地矣。
blog: http://shell909090.org/blog/

大哥哥

unread,
Aug 31, 2014, 8:36:28 AM8/31/14
to sh...@googlegroups.com
俺之前還在考慮給nginx設置chroot監獄,後來一看CoreOS,好家夥,用了docker,豈不是相當於每個應用都在chroot監獄中了

Robert Lu

unread,
Aug 31, 2014, 12:49:52 PM8/31/14
to sh...@googlegroups.com
感觉CF和CoreOS之间并不算竞争吧?

CF是PaaS,它要做得仅仅是让开发者关注应用层,其他的机器给你安排好。它的竞争者是Open Shift。

CoreOS则是自己做一个轻量的操作系统(并不完全),和Docker有点类似。个人觉得,CoreOS上可与Docker一战,下可与IaaS集成。

才疏学浅,若有疏漏,请指正。




您收到此邮件是因为您订阅了 Google 网上论坛的“Shanghai Linux User Group”论坛。

要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到shlug+un...@googlegroups.com
要查看更多选项,请访问 https://groups.google.com/d/optout



--
Regards,
RobberPhex

About me: http://about.me/RobberPhex

Robert Lu

unread,
Aug 31, 2014, 12:53:47 PM8/31/14
to sh...@googlegroups.com
其实,nginx+chroot不就是PaaS做的么?

但是PaaS基于虚拟机,太耗费资源。基于Docker的PaaS可能会好一点。

PS:前两天说Open Shift支持Docker了;但是Open Shift只有红帽自家在搞;不知道Cloud Foundry对Docker的支持怎么样?

PPS:是不是OT了?

muxueqz(张明源)

unread,
Aug 31, 2014, 9:24:29 PM8/31/14
to sh...@googlegroups.com
CoreOS就是基于Docker的扩展。

Chaos Eternal

unread,
Sep 1, 2014, 2:16:46 AM9/1/14
to sh...@googlegroups.com
Cloud Foundry已经开始支持Docker了。

Wales Wang

unread,
Sep 1, 2014, 2:35:03 AM9/1/14
to sh...@googlegroups.com, sh...@googlegroups.com
反正各家PaaS都是开源的。
谁满足要求,用谁的。
看看源码库,看谁提交对Docker支持快又多。

Wales Wang

Adieu

unread,
Sep 1, 2014, 6:36:03 PM9/1/14
to sh...@googlegroups.com
好像fleet是它的调度器。而且coreos出了个 https://github.com/coreos/rudder
,可以把多个host连在一起。我准备这两周空了找时间试试。

2014-08-31 20:21 GMT+08:00 Shell Xu <shell...@gmail.com>:

Shell Xu

unread,
Sep 1, 2014, 10:32:31 PM9/1/14
to shlug
那个不是调度器。
PaaS的一个重要功能就是对同一个应用的请求,需要被转发到执行了这个应用的具体实例上去。你不能说用户用了你的PaaS,还需要自己弄到自己实例的服务IP和端口,然后一一配置吧。而且这个实例执行在哪个端口,除了PaaS平台,哪个知道?
而fleet只能说是一种把应用分发到不同的宿主上执行,并且分发配置的部件。
没有调度器,coreos最多只能作为container hypervisor。

Grissiom

unread,
Sep 1, 2014, 11:03:46 PM9/1/14
to sh...@googlegroups.com
2014-09-02 10:31 GMT+08:00 Shell Xu <shell...@gmail.com>:
那个不是调度器。

对于容器系统来说,调度器指的是什么?他是做什么用的?

--
Cheers,
Grissiom

Shell Xu

unread,
Sep 1, 2014, 11:09:16 PM9/1/14
to shlug
对容器系统来说,要调度干嘛?对PaaS来说,调度器负责搞定“谁响应请求”这个问题。


--
-- You received this message because you are subscribed to the Google Groups Shanghai Linux User Group group. To post to this group, send email to sh...@googlegroups.com. To unsubscribe from this group, send email to shlug+un...@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/shlug?hl=zh-CN
---
您收到此邮件是因为您订阅了Google网上论坛中的“Shanghai Linux User Group”论坛。
要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到shlug+un...@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout



--

Robert Lu

unread,
Sep 2, 2014, 10:49:25 AM9/2/14
to sh...@googlegroups.com
今天听了OSForce的公开课,里面提到了一个基于Docker的PaaS——fig(http://www.fig.sh/

但是,里面好像没有“调度器”。

Shell Xu

unread,
Sep 2, 2014, 10:54:59 PM9/2/14
to shlug
如果我有一个http请求,希望请求这套系统上的某个应用,我该请求谁?哪个组件,如何决定我访问的实例在什么地址上呢?DNS么?
我看了一眼fig的说明,上面大字写着Fast, isolated development environments using Docker.
development environments什么时候也能叫PaaS了?机器挂了服务就没了,需要用户来骂人然后你戳服务商重开服务去。拿这玩意搭套PaaS卖你你买不买?
任何正常的,商用的PaaS。最低限度的,得能检测出某个应用已经没实例了,并且把实例重开。重开的实例又不一定在同一个机器上,所以还要有个组件,能够快速的将请求转到新地址上。如果一个实例不够,或者出于稳定性的目的,可能我们一上来就开两个实例。那么这个组件还得将请求在两个实例里面均衡。
这货叫调度器。

Chaos Eternal

unread,
Sep 2, 2014, 11:15:40 PM9/2/14
to sh...@googlegroups.com
你说的那个功能叫router吧。

Chaos Eternal

unread,
Sep 2, 2014, 11:18:53 PM9/2/14
to sh...@googlegroups.com
我觉得,大伙在讨论的时候,如果不确定某个东西的中文名字叫什么,请把英文原文列出来。
比如调度器可是指 scheduler, orchestrator, redirector, 当然也可能是router

别吵了半天都不是说的一个东西。

Wales Wang

unread,
Sep 2, 2014, 11:19:26 PM9/2/14
to sh...@googlegroups.com, sh...@googlegroups.com
通用名字是:service load balancer-SLB

Wales Wang

Shell Xu

unread,
Sep 2, 2014, 11:36:26 PM9/2/14
to shlug
router大约算一个部分吧。
另一部分是实例监控到自动重开。这部分一般都会和router分离。在cloud foundry里面就是cloud controllor & health manager。

Adieu

unread,
Sep 3, 2014, 6:30:49 AM9/3/14
to sh...@googlegroups.com
:) 我就把调度器理解成了scheduler

Adieu

unread,
Sep 3, 2014, 8:36:54 AM9/3/14
to sh...@googlegroups.com
我觉得coreos并没把自己定义成paas,它侧重的是提供基于docker的可控制的集群环境。paas应该是coreos上面一层。

对于请求转发来说,coreos的思路应该是同时使用fleet+etcd+proxy来实现。

fleet保证指定数目的指定的image会运行在集群当中。它有health check的作用但是它本身并不提供service
discovery。image跑起来之后向etcd注册自己。然后proxy根据etcd的注册信息来分发流量。

还没看到coreos官方提供proxy,但是已经有别的用户开发了基于etcd的proxy,比如
https://github.com/mailgun/vulcand
https://github.com/calavera/active-proxy

Shell Xu

unread,
Sep 3, 2014, 9:01:40 AM9/3/14
to shlug
我觉得coreos是hypervisor。
所以chaos说到cloud foundry的时候,我觉得挺诧异。
下面的proxy我没细看,只问一个简单问题。proxy是如何得知注册信息的改变呢?是通过轮循etcd呢?还是通过事件发生时主动通告呢?

Adieu

unread,
Sep 3, 2014, 9:14:23 AM9/3/14
to sh...@googlegroups.com
etcd本身有提供watch的机制跟ttl的机制。看api
https://coreos.com/docs/distributed-configuration/etcd-api/
貌似watch是用long polling来实现的。那可以算作是push形式。

Shell Xu

unread,
Sep 3, 2014, 10:02:47 AM9/3/14
to shlug
如果通过watch的形式,那么etcd本身就不必抗很高的查询压力。但是被push的所有router,都必须能一致的接受数据(最终一致)。如果因为某个router压力过高导致push的数据丢失,那么就出乱子了。因此必须有机制来纠正这个丢失(或者避免)。
同时,这种模型的设计上,etcd还必须可以水平扩展以及高可用。高可用是必然的,不然etcd一挂大家完蛋。
简要来说,就是保持实例实际的运行状况,在etcd和所有router上的信息一致。

Adieu

unread,
Sep 3, 2014, 11:44:01 AM9/3/14
to sh...@googlegroups.com
高可用在etcd设计之初就是基本的设计目标之一吧。

关于信息一致的问题,看了下go-etcd里面关于watch的源码
https://github.com/coreos/go-etcd/blob/master/etcd/watch.go
貌似通过index跟出错信息的配合,是可以保证etcd的信息都能够正确的下发,同时在etcd无法访问时运行相应的错误处理机制。

Shell Xu

unread,
Sep 3, 2014, 11:02:21 PM9/3/14
to shlug
说是这么说。etcd是如何保证高可用的同时,信息还能在多个副本中一致的呢?watch里面没有透露出任何信息。
最简单的一个问题是,当修改数据时,是必须保证同步写入到多个副本,还是仅保障同步到一个副本,还是没有同步保证?

Shell Xu

unread,
Sep 4, 2014, 5:30:23 AM9/4/14
to shlug
碰巧看到一个文章谈到这个问题。据说是Raft算法。

Adieu

unread,
Sep 5, 2014, 6:02:10 AM9/5/14
to sh...@googlegroups.com
瞄到一个讲raft的guide,讲的蛮好,http://thesecretlivesofdata.com/raft/

Justin Wong

unread,
Sep 10, 2014, 11:17:05 PM9/10/14
to sh...@googlegroups.com
raft的论文挺容易看懂的,Raft的设计目标之一就是「understandable」,以区别反人类的paxos
Open Source,Open Mind

Blog:    http://bigeagle.me/
E-mail:  bige...@xdlinux.info
Reply all
Reply to author
Forward
0 new messages