kubernetes
kubernetes
要说 2022 什么技术会火🔥,当然是 kubernetes 了
微服务通过传统的单位应用转变为很多目标单一的小应用,实现了解耦,各服务之间独立部署和扩展,但如何将这些应用合理高效的运行在一组机器上,这就需要 kubernetes 技术了,k8s 是谷歌开源的容器化集群管理系统,使用 k8s 可以进行容器化应用的部署,方便应用的扩展,k8s 让部署容器化应用更加简洁和高效。
所谓容器编排就是指自动化容器应用的部署管理扩展联网等,能够控制和自动化很多任务,包括调度和部署容器,容器之间分配资源,扩缩容器,容器的迁移,负载均衡,监视容器和主机的运行状况,而 k8s 有自动装箱,自我修复,水平扩展,服务发现,滚动更新,版本回退,密钥和配置管理,存储编排、批处理等功能。
kubernetes 的架构组件
master node 组件:api server 集群统一入口,scheduler 负责节点的调度,选择 node 节点进行应用部署,controller-manager 处理集群中任务,etcd 进行保存数据。
work node 组件:kubelet 是负责管理本机容器,kube-proxy 提供网络代理,可以进行负载均衡等操作。
k8s 核心概念
pod 是最小部署单元,它是一组容器的集合,可以共享网络
controller 用来创建 pod
serveice 定义访问 pod 的规则
通过入口 service 进行访问,controller 创建 pod。
kubernetes 集群的搭建方式
有两种,一种是 kubeadm 进行部署,另一种是采用二进制包的方式
kubectl
kubectl 是 kubernetes 集群的命令行工具
常用命令:
创建 pod
暴露端口:
获取 node 基本信息
yaml 文件
大家都知道,k8s 集群对资源的管理和编排部署是通过 yaml 文件来解决的,但我们一般不直接手写 yaml 而是借助工具来创建
通过这个命令
输出到 hello 文件中。
也可以通过已经部署镜像生成 yaml 文件
这样会生成 Nginx 对应的 yaml 文件
版权声明: 本文为 InfoQ 作者【周杰伦本人】的原创文章。
原文链接:【http://xie.infoq.cn/article/a0856a2ccf515e543ea363d3b】。文章转载请联系作者。
评论