【k8s】Secret
【k8s】Secret
|
一、为什么要有Secret?我们知道ConfigMap用于存在镜像的配置数据,但ConfigMap存放的数据通常都是不敏感且明文的数据,而有些敏感的、需要加密存储的数据放在什么地方呢?Secret闪亮登场,Secret也是存在镜像的配置数据,作用基本与ConfigMap类似,只是Secret存在的大
【k8s】ConfigMap
【k8s】ConfigMap
|
一、为什么要使用ConfigMap?当我们在开发一个Java应用程序,通常会将配置信息放到单独的配置文件中,方便在不同运行环境下修改不同的配置信息,比如数据库配置,在开发环境和生产环境的数据库信息是不同的,因此把这些信息放到配置文件中,方便修改。那么类似的,在应用程序镜像中,通常在不同的环境下,配置
【k8s】HPA
【k8s】HPA
|
一、背景HPA全称是Horizontal Pod Autoscaler,直译过来是Pod水平自动伸缩器。HPA是k8s弹性伸缩的重要功能,它支持在应用资源消耗量很大的情况下,根据用户配置的阈值进行自动扩容,从而减少人工介入。二、原理HPA通过HPA Controller定时对应用进行动态扩缩容,默认
【k8s】Ingress
【k8s】Ingress
|
一、为什么要有Ingress?如果说Service类似于微服务架构中的注册中心,那么Ingress就类似于微服务架构中的网关,Ingress为kubernetes提供统一的入口,对外提供服务。我们知道NodePort Service也可以通过暴露端口的方式对外提供服务,但是当我们的Service非常
【k8s】Service
【k8s】Service
|
一、为什么要有Service?我们通过Deployment/StatefulSet/DaemonSet 创建的Pod的生命周期是短暂的,如果节点出现故障、容器内应用程序错误等原因,Pod随时会被销毁和重新创建,因为我们不能直接通过IP:PORT的方式来访问Pod。Pod类似于微服务,在SpringC
【k8s】DaemonSet
【k8s】DaemonSet
|
DaemonSet:守护进程集,缩写为ds,DaemonSet用于保证所有(或者一部分)节点都运行了一个指定的Pod副本,类似于守护进程,通常用于日志收集、系统监控等。DaemonSet具有以下特点:(1)每个向集群中添加一个节点时,指定的Pod副本也将添加到该节点上。(2)当节点从集群中移除时,P
【k8s】StatefulSet
【k8s】StatefulSet
|
对比Deployment用于部署无状态服务,StatefulSet通常用于管理有状态的应用程序,同样基于Pod模板管理其Pod,但与Deployment最大的不同在于StatefulSet始终将一系列不变的名字分配给其Pod,且每个Pod都对应一个特有的持久化存储标识,也就是无论怎么调度,每个Pod
【k8s】Deployment
【k8s】Deployment
|
我们通常用Deployment来部署无状态服务,Deployment能够以声明的方式更新Pod和ReplicaSet,所谓“声明”的方式是将一些特定场景的一些列运维步骤固化下来,以便快速准确的执行。1. 定义一个DeploymentapiVersion: apps/v1kind: Deploymen
【k8s】ReplicaSet
【k8s】ReplicaSet
|
ReplicaSet是kubernetes的一种副本控制器,简称rs,kubernetes通过ReplicaSet来维护一个数量稳定的Pod副本集合,从而保证Pod始终有指定数量的副本数在运行。通常我们不会直接使用ReplicaSet,而是使用更高级的概念,比如Deployment,这是因为Depl
【k8s】Pod
【k8s】Pod
|
一、Pod是什么?Pod是可以在k8s中创建和管理的、最小的可部署计算单元。一个Pod(容器组)包含了一个(或多个)应用程序容器、存储资源、一个唯一的网络IP地址以及一些确定容器该如何运行的配置选项。Pod代表了k8s中一个独立的应用程序运行实例,该实例可能由一个容器或者几个紧耦合在一起的容器组成。