参考链接
- 通过实例快速掌握k8s(Kubernetes)核心概念https://blog.csdn.net/weixin_38748858/article/details/102132544
如何理解 K8S
Docker 是容器。K8S 是容器编排服务。啥叫容器编排
可以用 supervisor 来理解。supervisor 是单机监控进程的。那要是监控一个集群呢?使用 supervisor 就力不从心了。
容器也是如此。Docker 可以用来管理单个容器。
但是企业级的线上服务,不能在一台机上部署一个 Docker, 必须有跨机器多实例部署然后用 Nginx 等负载均衡代理成 1 个服务对外输出。
K8S 就是做这个的,有容器、节点、服务、集群、部署等概念,方便我们对集群进行管理。5 个核心概念
核心概念一共只有4个,Pod,部署(Deployment),服务(Service)和节点(Node)。另外再加上一个容器镜像(Docker Image),这个是Docker引擎的核心。阿里云上 K8S 功能划分
pod/镜像
Pod是k8是的最基本概念,你可以把它看成是对容器(container)的一个封装,用来管理容器。一个Pod里可以管理有一个或多个容器,但一般是一个。
K8s 原来是 Google 的,谷歌又没有用 Docker。所以 pod 和镜像就想象成一个事务两个名称就好。
节点/集群
节点和集群都是从资源(机器)角度来看的。
- 节点对应机器。1个节点就代表1台机器。
-
应用
无状态/有状态
有状态指的是数据库这种,节点挂掉重启后会恢复到原来的状态的。也就是说里面的数据不能丢。
- 有状态
重要-创建 Web 应用
链接:镜像创建无状态 Deployment 应用,https://help.aliyun.com/document_detail/90406.html?spm=a2c4g.11186623.6.575.2aa752d2EFFEr0部署
k8s 部署是用来生成一个 yaml,阿里云对部署进行了封装,只需要点击新建应用,填写一些数据就可以了。服务
阿里云对应的模块:Service是最上层的k8s的对象,可以看成我们平常说的微服务。对服务来讲最重要的就是服务注册和发现。在k8s中,Service就是用来实现这个功能的。
service 就是对外界暴露的, 外部端点就是外界可以访问的点。
创建服务
参考文档:https://help.aliyun.com/document_detail/86512.html?spm=5176.2020520152.0.0.32ae16dd44LeEZ
阿里云也可以直接创建服务,关联的是已有的应用。
创建 deployment
- 登录容器服务管理控制台。
- 在 Kubernetes 菜单下,单击左侧导航栏中的应用 > 无状态,进入无状态(Deployment)页面。
- 单击页面右上角的使用模板创建。
外部流量策略
- 外部流量策略:可选值为Local或Cluster。
说明 您的服务类型为节点端口或负载均衡时,才能设置外部流量策略。