华为云云原生王者之路集训营(黄金-第三章和第四章)

网友投稿 673 2022-05-29

第三章 Kubernetes系统快速入门

1.kubernetes介绍

云计算的发展历程

“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。这种特性经常被称为像水电一样使用IT基础设施。

kubernets概览

模型对象

1.Pod  能够创建、调度和管理最小部署单元

2.Service  一个Pod的逻辑集合和访问这个集合的策略

3.Deployment  无状态工作负载          StatefulSet  有状态工作负载

...

增删改查  apiserver

功能组件   Master:   apiserver        Scheduler          Controller  Manager

Node: Kubelet      Kube-proxy

功能特性: Pod调度  部署启动  运行监控  服务发现  升级运维  扩容缩容

关键概念-Pod

在Kubernetes中,Pods是能够创建、调度、和管理的最小部署单元,是一组容器的集合, 而不是单独的应用容器。

同一个Pod里的容器共享同一个网络命名空间,IP地址及 端口空间。

从生命周期来说,Pod是短暂的而不是长久的应用。Pods被调度到节点,保持在这个节点上直到被销毁。

POD实例:

{

"kind": "Pod",

"apiVersion": "v1",

"metadata": {

"name": "redis-django",

"labels":{

"app": "webapp"

}

},

"spec":{

"containers": [

{

name": "key-value-store",

"image": "redis"

},

{

"name": "frontend",

"image": "django"

}

]

}

}

Pod详解-容器(Containers)

Infrastructure Container:基础容器

1.用户不可见,无需感知

2.维护整个Pod网络空间

InitContainers:初始化容器,一般用于服务等待处理以及注册Pod信息等

1.先于业务容器开始执行

2.顺序执行,执行成功退出(exit0) ,全部执行成功后开始启动业务容器

Containers:业务容器(Tomcat,nginx等)

并行启动,启动成功后一直Running

容器基本组成:

镜像部分: 镜像地址和拉取策略       拉取镜像的认证凭据

启动命令:

command:替换docker容器的entrypoint

args: 作为docker容器entrypoint的入参

计算资源:

请求值:调度依据

限制值:容器最大能使用的规格

Pod详解-外部输入

Pod可以接收的外部输入方式:环境变量、配置文件以及密钥。

环境变量:使用简单,但一旦变更后必须重启容器。

Key-value 自定义     From 配置文件(configmap)     From密钥(Secret)

以卷形式挂载到容器内使用,权限可控。  配置文件(configmap)      密钥(secret)

Pod与工作负载的关系

通过label-selector和owerReference 相关联

Pod 通过工作负载实现应用的运维,如伸缩、升级等

关键工作负载-ReplicaSet

ReplicaSet-----副本控制器

确保Pod的一定数量的份数(replica)在运行。如果超过这个数量,控制器会杀死一些,如果少了,控制器会启动一些。

ReplicaSet用于解决pod的扩容和缩容问题(HA,工作负载等)

通常用于无状态应用

关键工作负载--Deployment

Kubernetes Deployment提供了官方的用于更新Pod和Replica Set (下一代的Replication Controller)的方法,您可以在Deployment对象中只描述您所期望的理想状态(预期的运行状态),Deployment控制器为您将现在的实际状态转换成您期望的状态;

Deployment集成了上线部署、滚动升级、创建副本、暂停上线任务,恢复上线任务,回滚到以前某一版本(成功/稳定)的Deployment等功能,在某种程度上,Deployment可以帮我们实现无人值守的上线,大大降低我们的上线过程的复杂沟通、操作风险。

Deployment的典型用例:

1.使用Deployment来启动(上线/部署)一个Pod或者ReplicaSet

2.检查一个Deployment是否成功执行

3.更新Deployment来重新创建相应的Pods(例如,需要使用一个新的Ilmage).

4.如果现有的Deployment不稳定,那么回滚到一个早期的稳定的Deployment版本

users:命令行,接口为主

master:

etcd 保存了整个集群的状态;

apiserver 提供了资源操作的唯一入口,并提供认证、授权、访问控制、API 注册和发现等机制;

华为云云原生王者之路集训营(黄金-第三章和第四章)

controller manager 负责维护集群的状态,比如故障检测、自动扩展、滚动更新等;

scheduler 负责资源的调度,按照预定的调度策略将 Pod 调度到相应的机器上;

考虑HA或多活会有多个master,非实验环境下node都会有很多

Kubernetes Controllers

Kubernetes的Default scheduler

为 pod 找到一个合适的 Node

Default scheduler 基于列队的调度器,一次调度一个pod,调度时刻全局最优

第四章  Kubernetes集群管理

1.Kubernetes集群生命周期管理介绍

1.kubernetes集群的部署形态

自建模式:需要用户管理,可操作性最大,k8s用户节点,k8s控制平面,k8s对接云服务和集群管理对接基础设施

托管模式(CCE):需要管理业务和k8s用户节点,聚焦于业务

Serverless模式(CCI):只需要管理业务。

kubernetes集群-常见部署方式

本地服务器:minikube,本地开发调试

自备服务器:kubeadm,kops,kubespray ,第三方托管,需要动手,学习

云服务CCE:容器平台集群管理 + 云基础设施

云服务CCI:容器平台serverless——云基础设施——服务器。

Kubernetes部署工具:https://kubernetes.io/zh/docs/setup/production-environment/tools/

Turnkey 云解决方案:https://kubernetes.io/zh/docs/setup/production-environment/turnkey-solutions

1.高可用(满足业务容灾需求)2.弹性伸缩(满足动态资源需求)3.安全和权限管理(满足组织权限管理需求)

自建与运维k8s集群优点是高灵活性,可定制开发。缺点是重资产,高投入,运维成本高,跨云迁移困难。(推荐开发者学习)

使用CNCF认证k8s容器平台优点是轻资产,低投入,运维成本低,跨云迁移方便。缺点是灵活性较低,迭代依赖云产商。(企业生产)

Kubernetes生产环境:Kubernetes 文档 入门 生产环境

CCE集群:控制平面托管,深度对接云基础设施,云原生全栈

云容器引擎与其他云服务的关系

https://support.huaweicloud.com/productdesc-cce/cce_productdesc_0008.html

集群概述:云容器引擎 CCE > 用户指南> 集群管理> 集群概述

生命周期:https://support.huaweicloud.com/usermanual-cce/cce_01_0005.html

cce集群网络规划实践:https://support.huaweicloud.com/bestpractice-cce/cce_bestpractice_00004.html

2.Kubernetes节点生命周期介绍

业务负载(POD)是资源的消费者

节点(Node)是业务负载的载体

云产商(Provider)是基础资源的生产者

通过节点池管理集群节点资源

节点池:集群中具有相同配置的一组节点,一个节点包含一个节点或多个节点

CCE集群中支持多种方式添加节点:

节点管理:创建节点(通过CCE创建服务器)

节点管理:纳管节点(已创建的服务器)

节点池管:更新期望节点数

默认节点池:创建节点、纳管节点    节点池:节点池节点

购买集群:https//suport.huaweicloud.com/usermanual-cce/cce_01_0298.html

小结:

1.了解Kubernetes节点的基本概念

2.了解CCE集群中扩容节点的3种方式

3.演示:使用节点池管理快速地扩容节点资源

4.初步了解了Kubernetes集群的组件

5.初步了解了集群常见的部署形态和方式

6.以华为云CCE服务为例,初步了解了如何通过云容器平台快速搭建Kubernetes集群、添加Node节点。

节点概述:https://support.huaweicloud.com/usermanual-cce/cce_01_0180.html

购买节点: https://support.huaweicloud.com/usermanual-cce/cce_01_0033.html

节点池概述: https://support.huaweicloud.com/usermanual-cce/cce_01_0081.html

创建节点池: https://support.huaweicloud.com/usermanual-cce/cce_01_0012.html

管理节点池: https://support.huaweicloud.com/usermanual-cce/cce_01_0222.html

Kubernetes 云容器引擎 CCE 容器

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:智能IP网络发展史
下一篇:小白HTML进阶之路(1)
相关文章