初识CoreOS

初识CoreOS

我的wordpress目前是搭建在阿里云ECS上的,采用的是CoreOS系统里Docker中的容器应用。
CoreOS这个系统挺有意思的,通俗点你可以将它理解为象windows平台上的VMware或直接就是VMESXi虚拟化系统这样。
虽然严格来说肯定不是这样子。

科普一下CoreOS,虽然我也是直接百度和看它的官网社区等去了解到的:
CoreOS采用主动/被动双分区方案来实现自动更新。自动更新以单一体为单位,而不是通过逐包替换的方式进行。
CoreOS使用Linux容器在更高抽象层次上管理服务,而没有采用通过yum或者APT工具做包的安装管理。单一的服务代码以及它所有的依赖会被打包到一个容器中,打包进入容器后就可以运行在单一的CoreOS机器,也可以运行在CoreOS集群中。
Linux容器提供与完整虚拟机相似的功能。但是容器聚焦在应用程序层次,而不是整个虚拟主机层次。因为容器不能运行独立的Linux内核,不需要一个中间件层,因此它几乎没有性能上的开销。低性能开销的特质意味着可以部署更少的机器、使用配置低的机器就可以完成虚拟机同样的功能,从而降低成本。

关于双启动分区特性

img

如图所示,CoreOS启动时假设是从A启动分区启动的,然后B分区就在后台运行更新,等更新完成后,会平滑切换到B分区。用户完全感觉不到系统有被切换了,和传统的单分区启动的系统而言,更适合部署在云上的ECS了。
比如说我在企业中用到的CentOS系统,假如真要更新到系统内核等需要重新启动的操作的话,那影响到生产环境会比较大,毕竟业务可能会中断。当然这种情况也很少见,而且也会有相应的负载均衡机制。只不过CoreOS还有个特性是本身就是做成适用于集群式的服务器,可以想象到以后的轻量云级别的应用,是挺适合用CoreOS系统的。再加上它本身就有Docker容器化,甚至可以单机就做成负载均衡(不考虑硬件故障的情况下)。
再说回双分区,它还有个特色是可以切换回未更新之前的A分区,相当于是发版机制了。
然后还有就是它设计出来的理念就是轻量,注重虚拟容器化的应用,所以依赖包是最少的,甚至不允许你再对系统本身安装些什么。也很少用户和初始服务。
所以你差不多可以理解它是一个沙盒。

by:铁乐与猫
(未完待续)

发表评论

电子邮件地址不会被公开。 必填项已用*标注