kubernetes是非常流行的容器管控平台,阿里云的容器服务团队为kubernetes提供的基于阿里云服务的cloudprovider,让kubernetes可以更好的和阿里云的计算资源深度集成,提供更好的性能和网络特性。本文主要目的是为大家提供一种非常简单的方法,在阿里云上部署kubernetes集群。
注:
通过此方式部署的kubernetes集群适合作为开发、测试或者demo演示使用,对高可用要求较高的场景不适用。kubernetes的生产环境高可用部署方案我们会马上提供。请大家关注资源编排服务在云栖社区的官方博客。
部署过程中所创建的ecs为按量付费实例,好处是方便短时间的测试、demo使用,可以随时删除(可以在ros控制台整体删除,其中有部分slb资源是k8s的cloudprovider创建的,需要手动删除)。如果需要长期保留,可以在ecs控制台,把ecs实例转为按包年包月付费。
创建按量付费ecs需要保证账户内至少有100元余额。
根据实际需要,选择集群部署的目标区域,并点击[下一步]。
注: 如果未开通过资源编排服务(ros), 请根据提示开通服务。
部署过程中所有被创建的vpc、ecs会被放入一个叫做资源栈的ros逻辑概念中,未来可以在ros控制台对资源栈进行整体的维护。视实际需要,可以修改资源栈名称。
ecs实例规格指用户部署kubernetes的master节点和node节点的机器规格,可以视实际需要修改,实例规格的cpu和内存不能低于默认值。
node节点数,表示被被创建的kubernetes集群的节点数,默认为2,可以视实际需求修改,但不能低于1。
ecs登录密码,用来登录ecs终端, 密码要符合ecs的强度要求,必须包含大小写字母和数字。
点击[创建],启动部署。
至此,部署已经启动,部署过程不需要值守,部署完成后会有短信通知,也可以进入ros的事件列表,跟踪部署过程:
事件列表,详细列出了所有被创建的vpc、安全组、子账号、ecs等资源的创建过程和状态。所有被创建的资源可以在资源列表查看:
可以通过点击资源id连接进入对应产品的控制台,进行更多操作,比如进入ecs控制台登录终端。
部署完成后,资源栈状态变为[创建完成]。
接下来,我们就可以在[资源列表]中找到k8s_master这个ecs,点击链接,进入ecs控制台,登入终端,进行接下里的kubernetes操作。
查看node节点:
查看daemonsets:
至此,一个kubernetes集群部署完成。如果希望长期保留此集群,可以进入ecs控制,对资源进行转包年包月的操作。或者,进入ros控制台,进行删除,之前创建的所有资源,会被整体删除。
除了kubernetes外,ros控制台还提供了docker ee、docker swarm、storm、hadoop等多种流行开源系统的自动化部署方案。用于生产环境的高可用kubernetes部署方案会在近期提供,请关注ros控制台或ros在云栖社区的官方博客。