检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
负载均衡器基础属性 负载均衡器类型 服务对接的负载均衡器类型,支持对接共享型ELB实例和独享型ELB实例,并且支持自动创建ELB实例 参数名 取值范围 默认值 是否允许修改 作用范围 k8s annotation: kubernetes.io/elb.class 支持elbv3局点:performance
程需要通过集群网络插件实现,按照底层依赖大致可分为Overlay模式、路由模式、Underlay模式三类。 Overlay模式是在节点网络基础上通过隧道封装构建的独立网络,拥有自己独立的IP地址空间、交换或者路由的实现。VXLAN协议是目前最流行的Overlay网络隧道协议之一。
得应用重复部分的复用更为容易,也使得应用的维护更新更加简单,基于基础镜像进一步扩展镜像也变得非常简单。此外,Docker团队同各个开源项目团队一起维护了大批高质量的官方镜像,既可以直接在生产环境使用,又可以作为基础进一步定制,大大的降低了应用服务的镜像制作成本。 Docker容器典型使用流程
容器与Kubernetes 容器 Kubernetes 使用Kubectl命令操作集群
Pod、Label和Namespace Pod:Kubernetes中的最小调度对象 存活探针(Liveness Probe) Label:组织Pod的利器 Namespace:资源分组
Pod的编排与调度 无状态负载(Deployment) 有状态负载(StatefulSet) 普通任务(Job)和定时任务(CronJob) 守护进程集(DaemonSet) 亲和与反亲和调度
RBAC RBAC资源 Kubernetes中完成授权工作的就是RBAC机制,RBAC授权规则是通过四种资源来进行配置。 Role:角色,其实是定义一组对Kubernetes资源(命名空间级别)的访问规则。 RoleBinding:角色绑定,定义了用户和角色的关系。 Cluste
Volume 容器中的文件在磁盘上是临时存放的,当容器重建时,容器中的文件将会丢失,另外当在一个Pod中同时运行多个容器时,常常需要在这些容器之间共享文件,这也是容器不好解决的问题。 Kubernetes抽象出了Volume来解决这两个问题,也就是存储卷,Kubernetes的V
Server会用这个Token来验证发送请求的客户端所关联的ServiceAccount是否允许执行请求的操作。 创建ServiceAccount 以1.29版本集群为例,使用如下命令在default命名空间内创建ServiceAccount。 kubectl create serviceaccount
NetworkPolicy NetworkPolicy是Kubernetes设计用来限制Pod访问的对象,相当于从应用的层面构建了一道防火墙,进一步保证了网络安全。NetworkPolicy支持的能力取决于集群的网络插件的能力。 默认情况下,如果命名空间中不存在任何策略,则所有进出该命名空间中的Pod的流量都被允许。
Secret Secret是一种加密存储的资源对象,您可以将认证信息、证书、私钥等保存在Secret中,而不需要把这些敏感数据暴露到镜像或者Pod定义中,从而更加安全和灵活。 Secret与ConfigMap非常像,都是key-value键值对形式,使用方式也相同,不同的是Sec
Service 直接访问Pod的问题 Pod创建完成后,如何访问Pod呢?直接访问Pod会有如下几个问题: Pod会随时被Deployment这样的控制器删除重建,那访问Pod的结果就会变得不可预知。 Pod的IP地址是在Pod启动后才被分配,在启动前并不知道Pod的IP地址。
Ingress 为什么需要Ingress Service是基于四层TCP和UDP协议转发的,而Ingress可以基于七层的HTTP和HTTPS协议转发,可以通过域名和路径做到更细粒度的划分,如下图所示。 图1 Ingress-Service Ingress工作机制 要想使用Ing
Namespace:资源分组 为什么需要Namespace Label虽然好,但只用Label的话,那Label会非常多,有时候会有重叠,而且每次查询之类的动作都带一堆Label非常不方便。Kubernetes提供了Namespace来做资源组织和划分,使用多Namespace可
ConfigMap ConfigMap是一种用于存储应用所需配置信息的资源类型,用于保存配置数据的键值对,可以用来保存单个属性,也可以用来保存配置文件。 通过ConfigMap可以方便地做到配置解耦,使得不同环境有不同的配置。 创建ConfigMap 下面示例创建了一个名为con
了PV(PersistentVolume)和PVC(PersistentVolumeClaim)来解耦这个问题,从而让使用者不用关心具体的基础设施,当需要存储资源的时候,只要像CPU和内存一样,声明要多少即可。 PV:PV描述的是持久化存储卷,主要定义的是一个持久化存储在宿主机上的目录,比如一个NFS的挂载目录。
Label:组织Pod的利器 为什么需要Label 当资源变得非常多的时候,如何分类管理就非常重要了,Kubernetes提供了一种机制来为资源分类,那就是Label(标签)。Label非常简单,但是却很强大,Kubernetes中几乎所有资源都可以用Label来组织。 Labe
就绪探针(Readiness Probe) 一个新Pod创建后,Service就能立即选择到它,并会把请求转发给Pod,那问题就来了,通常一个Pod启动是需要时间的,如果Pod还没准备好(可能需要时间来加载配置或数据,或者可能需要执行一个预热程序之类),这时把请求转给Pod的话,Pod也无法处理,造成请求失败。
7m v1.15.6-r1-20.3.0.2.B001-15.30.2 更多kubectl命令请参考kubectl 快速参考。 基础命令 get get命令用于获取集群的一个或一些资源的详细信息。 该命令可以列出集群所有资源的详细信息,包括集群节点、运行的Pod、Deployment、Service等。
有状态负载(StatefulSet) 有状态负载(StatefulSet) Deployment控制器下的Pod都有个共同特点,那就是每个Pod除了名称和IP地址不同,其余完全相同。需要的时候,Deployment可以通过Pod模板创建新的Pod;不需要的时候,Deployment就可以删除任意一个Pod。