ACK官网文档 https://help.aliyun.com/document_detail/86737.html
阿里云容器服务Kubernetes版(Alibaba Cloud Container Service for Kubernetes,简称容器服务ACK)是全球首批通过Kubernetes一致性认证的服务平台,提供高性能的容器应用管理服务,支持企业级Kubernetes容器化应用的生命周期管理,让您轻松高效地在云端运行Kubernetes容器化应用。
个人理解,ACK就是阿里在k8s的基础上进行了平台级的封装,提供了简单易用的页面操作,通过点点点即可部署应用.真来对比的话就相当于jdbc和orm框架一样,使功能更加强大,同时更加简单易用.
可以将ack看作一个套在k8s上的图形化界面,将k8s的各种复杂命令/脚本转化为图形化操作,简单易用,除此之外提供k8s集群的监控/在线运维等功能
k8s的概念这里不再赘述,通过ack来部署一个完整的应用看一下效果.
这里使用阿里云提供的ack体验场景完成
https://developer.aliyun.com/adc/scenario/489fc1d0bb1a4635b0bd90f3858db49c
购买请移步管理控制台创建集群,根据需求创建: https://cs.console.aliyun.com/
体验使用体验场景效果也是嘎嘎滴.
体验场景的操作步骤不再详述,看文档即可,我们直接进入创建好的集群
可以看到这是一个已经创建好的ack集群,两个节点,集群的类型是托管pro版本,ack的版本主要分为三个
我们现在创建的就是托管版ack Pro版
点击集群名称,进入集群,我们通过ack的操作来部署一个服务
进入集群后,我们可以看到这个集群的概览信息,包括部署资源及容器组状态.
然后左侧的菜单其实与k8s的基本概念暗合,所以此处也不再赘述,那么我们来创建一个基本的无状态应用,也就是一个网站
选择使用镜像创建:
输入应用名称和副本数量,这里副本数量我们的节点是2,所以当副本数量为2时会在每个节点上创建一个服务
下一步
容器配置里填写要使用的镜像,可以使用dockerhub上的公有镜像,也可以使用ACR的镜像,我们这里使用体验场景推荐的ACR上的一个网站的镜像.
高级配置里主要配置下服务.
服务我们学习过k8s的都知道,是用来访问k8s的网关,配置了这个之后才能通过外网访问集群资源.
点击创建服务
这里使用负载均衡SLB的方式来设置
端口映射: 服务端口为公网访问端口,容器端口为我们刚才新建服务时设置的容器端口80,这样就可以用过公网的80端口访问到容器的80端口
下面还有一些高级设置,比如伸缩,调度,这些高级特性如果有需要可以根据文档设置
最后点击创建,ack就可以拉取镜像进行资源的创建了
点击查看应用详情
可以看到两个节点,每个节点一个服务并且都在running状态
服务创建好了,我们尝试一下公网访问:
可以看到外部端点,这个就是公网访问地址:
可以看到这个服务已经正常运行了.
对于一个服务来说,监控必不可少,通过ack部署的服务默认就拥有Prometheus的监控,当然这个监控只限于资源的监控,如果想要做个性化服务指标的监控,还需要接入服务日志.
进入prometheus,选择无状态应用监控
切换命名空间为default,默认应用在default空间下,我们找到test的负载:
然后就可以查看该应用的cpu/内存/io等性能指标
通过ACK部署无状态应用了解ACK的操作流程,其实使用k8s的命令也可以部署,但是总归没有图形化节目简单.
而且ACK原生就接入了普罗米修斯这样的监控框架,更加方便监控服务的资源使用情况.