随笔分类 - CloudNative
很厉害
摘要:简单来说,存储卷是定义在Pod资源之上可被其内部的所有容器挂载的共享目录,该目录关联至宿主机或某外部的存储设备之上的存储空间,可由Pod内的多个容器同时挂载使用。Pod存储卷独立于容器自身的文件系统,因而也独立于容器的生命周期,它存储的数据可于容器重启或重建后继续使用。
阅读全文
摘要:基于Kubernetes内置的Ingress发布服务时,底层使用的是IngressNginx还是Contour控制器并没有本质上的区别。但Contour提供的CRD资源类型HTTPProxy能够提供更为完整的路由功能集,大大丰富了Ingress的特性表现。
阅读全文
摘要:Kubernetes的Ingress简单理解就是个规则定义,例如某个域名对应某个Service,即当某个域名的请求进来时,转发给某个Service。Ingress Controller负责实现这个规则,即Ingress Controller将其动态写入负载均衡器的配置中,从而实现服务的负载均衡。
阅读全文
摘要:Kubernetes Service从逻辑上代表了一组Pod(通常称为微服务),具体是哪些Pod则是由label来挑选的(selector)。Service有自己的IP,而且这个IP是不变的。客户端只需要访问Service的IP,Kubernetes则负责建立和维护Service与Pod的映射关系。无论后端Pod如何变化,对客户端不会有任何影响,因为Service没有变。
阅读全文
摘要:除了创建,Deployment 提供的另一个重要的功能就是更新应用,这是一个比创建复杂很多的过程。想象一下在日常交付中,在线升级是一个很常见的需求,同时应该尽量保证不能因为升级中断服务。这就要求我们必须使用一定的策略来决定何时创建新的 Pod,何时删除旧版本的 Pod。kubectl 支持滚动升级的方式,每次更新一个pod,而不是同时删除整个服务。
阅读全文
摘要:应用在运行过程中难免会出现错误,如程序异常、软件异常、硬件故障、网络故障等。因此,系统通过一些手段来判断应用是否运行正常,这些手段称之为健康检查(诊断)。
阅读全文
摘要:资源需求:定义需要系统预留给该容器使用的资源最小可用值,容器运行时可能用不到这些额度的资源,但用到时必须确保有相应数量的资源可用。
资源限制(约束):定义该容器可以申请使用的资源最大可用值,超出该额度的资源使用请求将被拒绝;显然,该限制需要大于等于requests的值,但系统在某项资源紧张时,会从容器回收超出request值的那部分。
阅读全文
摘要:在实际的生产使用场景中,直接用 Pod 是不合适的,因为必然会产生单点故障。因此,我们需要有一种方法来方便地创建、管理同一个服务的多个实例 Pod。Kubernetes 中引入了 Workload(工作负载) 的概念,它可以理解为 Pod 的父资源,主要的作用就是来管理多个 Pod 的生命周期。
阅读全文
摘要:Pods are the smallest deployable units of computing that you can create and manage in Kubernetes.
阅读全文
摘要:Kubernetes节点的底层由一个叫做**容器运行时**的软件进行支撑,它负责比如启停容器 这样的事情。最广为人知的容器运行时当属Docker,但它不是唯一的。
阅读全文
摘要:上文简单介绍了容器的隔离与限制,下文会更进一步去讲解docker是如何保持一致性的。
Docker在镜像的设计中引入了层(**layer**)的概念。也就是说,用户制作镜像的每一步操作,都会生成一个层,也就是一个增量rootfs(根文件系统)。
这里涉及到2个概念:rootfs、image、layer和Union File System 。
阅读全文
摘要:容器其实是一种沙盒技术。顾名思义,沙盒就是能够像一个集装箱一样,把你的应用“装”起来的技术。这样,应用与应用之间,就因为有了边界而不至于相互干扰;而被装进集装箱的应用,也可以被方便地搬来搬去。
阅读全文
摘要:容器网络可以分为单个host上的容器网络和跨多个host的网络。
阅读全文
摘要:云原生,从字面上拆成 2 个词,“云”和“原生”,云就是强大的云计算能力,也是前提。原生是对企业应用来讲的,云原生时代的应用被设计成“生在云上,长在云上”。应用是原生的,只包含业务代码,意味着需要最大化剥离应用中非业务的代码和功能,让云基础设施来接管(包括 IaaS、PaaS 等),应用可最大化利用云的优势,充分享受云计算的技术红利。
阅读全文
摘要:容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
阅读全文
摘要:Dockerfile是一个文本文件,记录了镜像构建的所有步骤。
阅读全文
摘要:容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
阅读全文
摘要:容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
阅读全文
摘要:容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
阅读全文
摘要:容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
阅读全文