两种特殊的存储卷:configMap和secret
|
|
学习 总结 思考
|
|
大多数和数据存储相关的应用和有状态应用都是需要持久存储数据的。容器本身有生命周期,为了使得容器将来终结后我们可以把它删除,甚至是编排到其他节点上运行,意味着数据不能放在容器自己的名称空间中。
在Kubernetes集群中,后端被代理的资源,是不配置https的,是纯明文的http,但是我们使用一个独特的调度器或者叫Pod,对这个Pod来讲,它是一个运行在用户空间的应用程序,比如Nginx、traefik、haproxy、Envoy等。
为了给客户端提供一个固定访问端点,因此在客户端和服务端(Pod)之间添加了一个固定的中间层,这个中间层称为service。这个service的名称解析强依赖于在k8s集群之上部署的一个附件叫k8s的DNS服务。较新版本中,使用的是CoreDNS。1.11之前的版本用的是kube-dns。
此前使用配置清单创建Pod,都是在配置文件中定义要创建的Pod具体是什么。而后就提交给apiserver,由apiserver转交给Scheduler完成调度,由目标节点予以创建并启动相关的Pod资源。如果我们把Pod资源意外删除,Pod不会重建。
资源的清单格式:
一级字段:apiVersion(group/version), kind, metadata(name,namespace,labels,annotations,…), spec, status(只读)
Kubernetes之上常用的资源,它把所有内容都抽象为资源,把资源实例化出来后称为对象。
Kubernetes核心资源:
API Server是Kubernetes集群的网关,任何人只能通过API Server接口与集群进行交互。而kubectl是Kubernetes的终端客户端,此前博客里讲解的使用kubeadm初始化Kubernetes集群时,