零道书院|快速,占用空间小,你不可不知的容器技术……

 

如果你还不知道Docker,就真的OUT了。TA最大的特点是启动速度快,资源占用小,小编呢,也是对这个很感兴趣滴,正好又赶上kubernetes1.6发布,那就让小编带领大家从入门到精(rù)通(mén)吧!...

在日常开发和生产中,Docker已成为目前最火的开源技术之一。如果你还不知道Docker,就真的OUT了。TA最大的特点是启动速度快,资源占用小,小编呢,也是对这个很感兴趣滴,正好又赶上kubernetes1.6发布,那就让小编带领大家从入门到精(rù)通(mén)吧!
导读


最近小编的领导要求小编,要节约资源,机器能共享的就共享,小编听了立即兴奋起来,太好了啊,用Docker实现对机器资源的最大化利用,不是小编一直梦寐以求的事情嘛~又恰巧kubernetes1.6正好发布,小编就决定利用这个时机,在公司内部大力的推广一下Docker,对于提升开发和测试效率,有着显著的提高,小编要告诉领导!!!领导!!!我先定个小目标,给你省下1个亿!O(∩_∩)O哈哈哈~

本系列围绕着使用Kubernetes管理Docker集群展开,教你一步一步如何实现使用Kubernetes搭建集群、管理与使用Docker,并在最后给出一个使用Docker搭建Pafa5开发测试环境的案例。

Docker在我们日常的开发和生产中,逐步的正在取代原先的开发、测试、部署方式。官方发布的原文是这么说的:

我们宣布Kubernetes 1.6于今天(3月28日)发布了。在这个发布版本中,社区的焦点在于伸缩性和自动化,以便帮助你在一个集群中为多个用户部署多个负载。我们宣布,我们已经支持5000个节点的集群。我们将动态存储配备特性提升到了稳定版本。基于角色的访问控制,kubefed,kubeadm和其他一些调度特性提升到了beta版本。我们同时也添加了一些智能的默认吞吐量以便开箱即能够支持更大规模的自动化。
使用场景
Docker通常用于如下场景:
web应用的自动化打包和发布;
自动化测试和持续集成、发布;
在服务型环境中部署和调整数据库或其他的后台应用;
从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。

通常,对于开发而言,使用Docker,一台机器足以完成一整套环境的。对于测试,为了模拟高可用、负载均衡,可能需要使用多台物理机和虚拟机来完成。这里,Docker的集群化部署就必不可少了,对于单台机器运行Docker,非常容易,几乎都是一条命令,就能搞定。在Mac下,只要下载安装包安装即可。
Docker 的概述
Docker有两个主要组件:
Docker引擎:开源的容器化平台。
Docker Hub:我们的用于分享和管理Docker容器的SAAS平台。

Docker使用一个客户端服务器[架构]。Docker客户端和Docker守护进程交流,Docker守护进程做非常重要的工作,构建,运行和分发你的Docker容器。Docker客户端和守护进程可以运行在同样的系统上,或者是你可以连接一个Docker客户端到一个远程Docker守护进程中。Docker客户端和守护进程通过sockets或通过RESTful API进行沟通交流。



Docker内部
为了能够理解Docker的内部,你需要去理解下面三个资源:
Docker镜像
Docker注册处
Docker容器



对于Docker集群的部署,只要涉及到集群,那么他们的安装必定得非常复杂的。本系列介绍Kubernetes来搭建Docker,是因为Kubernetes在本月发布了1.6的正式版,新版本可支持的集群规模从2,000个节点,扩大至5,000个,可支持的Pod总数量也提高到15万个,小编的领导说,你们要懂得资源共享,买了机器以后,大家要共用,于是小编就开动大脑,共享嘛,要不就在阿里云的基础上搭建Docker集群,大家一起用容器,既满足了小编不遗余力的推广Docker提高工作效率,又帮公司省下了几十甚至几百万的Money了!!!哈哈哈哈!!!!!为了推广Docker,小编也是拼了命的!!!!!

小编之所以喜欢Docker,是因为Docker,是因为Docker启动速度非常快,小编开一个mysql的容器,只需要5秒不到。但是,如果使用虚拟机,那么开启一个虚拟机,可能需要几分钟,关闭也是如此。自从Docker推出以后,小编就一直使用Docker搭建本地开发环境,Mysql,Activemq,Redis等,爽的不要不要的,因为它和虚拟机一样,不想用了就删除,不会影响本机的环境,几乎是绿色的,不会有什么其它残留物。
Docker 的编排工具
下图就是小编本机跑的环境:



所以,小编不停的研究Docker容器,在基于Docker集群的基础上,根据我们自己的业务系统,成功实现了基于Docker的无人工干预的智能运维系统,并申请了专利,并且,这套系统已在当前的系统上运行起来。在Kubernetes1.6到来后,我们的智能运维系统,可能更加轻松的随时随地的扩容,更加智能管理现有的容器。

接下来,小编还会针对Docker的安装及使用,如何搭建ETCD集群、Flanne和 Kubernetes集群,如何使用Kubernetes管理Docker及如何使用Docker搭建Pafa5开发测试环境这几方面进行更为详细的介绍,带领大家一步一步搭建Docker集群。感兴趣的小伙伴们,敬请持续关注!

本文由零道书院原创



鸡年大吉
长按二维码识别关注
 关于“零道书院” 

我们是来自于中国平安集团旗下前海征信的fintech先锋团队。定期分享互联网金融的前沿技术,探讨热点专题。有料!有态度!欢迎关注。


    关注 SAS中文论坛


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册