阿里云容器服务K8s基础入门(一)

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: 阿里云容器服务K8s基础入门

阿里云容器K8s入门训练营:阿里云容器服务K8s基础入门(一)

课程地址https://developer.aliyun.com/trainingcamp/83262c78375b422d90d9bdfa86fb4d46?spm=a2c6h.26142516.J_2566289780.3.37c67cbd7bCsFs


阿里云容器服务K8s基础入门(一)


内容介绍:

一、Kubernetes的基本认知

二、K8S的核心概念

三、K8S的核心架构

四、K8S的工作和使用流程

五、K8S的使用场景

六、容器服务ACK介绍

七、serverless 容器

八、ASK操作实践

 

大家好我是阿里云范群老师,本次课程将带大家了解阿里云容器服务 Kubernetes的基础入门。

在学完本次课程之后,希望能够带大家学习到 Kubernetes 的基本概念,Kubernetes的使用,应用场景及作用,带大家熟悉阿里云的容器服务库Kubernetes ACK 以及它的无服务器 Serverless Kubernetes(ASK),让大家能够了解到这些产品它的特点和优势,以及它的操作方式,使用方式。最后就是要带大家了解到阿里云容器服务Kubernetes相关应用场景。

 

一、Kubernetes的基本认知

我们想要了解为什么要使用Kubernetes,就需要从容器技术开始,这里所讲的随着容器技术的快速成熟与推广,因为它解决了很多的问题,也使工作变得流畅,由于它自包含和可移植的特性,开发人员把容器创建之后,代码在其中进行开发,之后可以部署在数据中心、云环境或者其他环境当中。

容器的管理和编排遇到了困难,容器好用是好用,但是管理起来比较困难,可以想象就算咱们去使用虚拟机,现在已经有很多成熟的云平台,一些云平台可以让虚拟机进行故障迁移、宕机恢复、弹性伸缩等功能。

但是对于容器,它在一开始它只是一个单独的个体,在很多方面它并不是很成熟,在这里讲在生产环境当中会涉及到多个容器,很多的容器,这个时候容器需要跨多个服务器主机进行部署。一旦容器多了之后,就需要有怎样分组管理,那么分组管理可能需要什么,要涉及到网络安全监控还有存储等,都需要进一个全方位的分化。

所以一旦容器多了之后,就会出现各种各样的问题,就需要有一个类似于管理系统的工具出现来管理这些容器,并且还需要能够发挥出容器的最大特点,最大性能,于是就有了容器编排技术。

容器编排它就是将多个容器组织,然后按照一定的规则和策略进行部署,调度、伸缩等,而且还可以自动化的容器部署管理,扩展、联网,而且管理的数量可以达到成百上千个,为企业提供便利。

第一个大规模的容器自动化部署,它可以通过容器编排工具将多个容器组成的应用,然后一键的部署到容器集群当中,这样就会很方便,不需要有很复杂的操作。

第二个,敏捷高效的资源调度,因为容器它还是需要有一个计算资源的落脚点,也就是我们所谓的节点,如果我们可以通过多个节点组成一个集群,那么这个集群里面可能会有非常多的节点,即有非常多的这种云服务器 CS 或者是物理的服务器。

我们可以通过容器编排的技术来实现最高效率的调用。强大的弹性伸缩能力,它可以根据当前的负载情况,然后自动的去调整容器的数量,你负载高,多用点容器,负载低,少用点容器,治愈能力就是当一个容器挂掉,能够立马进行发现,然后自动的去重启和替换。

还有一个自动化的服务发现,就是可以自动注册和发现服务,所以总的容器编排工具它就是一个伪容器,提供一种高效的可靠的管理方式,所以我们可以看到这里一张图,我们容器就相当于集装箱,我们的这一个容器编排就相当于这一个货轮来管理调度容器,管理调度集装箱。

 image.png


K8S它显然就是一个容器编排的技术,而 Kubernetes 它现在已经成为了在容器编排上的事实标准。

Kubernetes它是由谷歌开源和设计的一个编排引擎,大家可以看它的标志是一个船渡,是以相当于是一个用来管理和部署的容器的平台,容器既然是集装箱,那我就是什么船渡用来管理你的,然后 Kubernetes,它有时候会被称为K8S,因为在 k s 之间它有 8 个字母,因为Kubernetes这个名词比较难念,所以大家简把它简化的念成K8S

然后右边展示了它的一些核心功能,讲容器发现与负载均衡、容器的自动装箱存储、编排,自动化的容器恢复等这些功能,都是在这一个对于容器的编排和管理。

 image.png


 

所以我们讲K8S它是一个自动化的容器编排平台,它可以负责应用的部署,应用的弹性以及应用的管理,这些都是基于容器。

 

二、K8S的核心概念

 image.png


 

我们首先来学习它的第一个核心概念-Pod

K8S 当中,容器是不能够单独存在的,而是要通过 Pod 这个最小的部署单元来进行管理。

因为 K8S 是一个集群的管理平台,还要管理多个容器实例,然后要为他们提供网络存储等。而容器它们之间需不需要相互通信,容器与容器之间它们需不需要共享,存储需要,所以这个时候就有了一个Pod,它相当于是一个容器组的一个概念。

pod它的单词翻译过来是一个豌豆荚,相当于说这个容器是豌豆,pod是这个豌豆荚,有了这样的一层关系之后,pod是不是就可以为每个容器提供访问同一个 IP 地址或者端口,然后也能够让他们共挂载一个共享的数据卷,让他们实现数据的共享,再者就是容器我们在 k8s 上面部署时,为了它的一个性能或者弹性伸缩容性,你们最好是去跑一个单进程,而我们一个应用,比如你一个最简单 hello world,可能有多个函数构成,什么 min 函数,什么函数式的所谓是,所以我们是不是可以将一个应用变为一个Pod,然后在应用上面的不同进程,我们用不同的容器来封装,这样也方便去这种弹音伸缩、扩展性能之类的。

所以这里讲 Pod 的定义就是最小的调度及资源单位,由一个或者多个容器组成,可以定义容器的运行方式,提供给容器共享的运行环境。

我们来看第二个概念,deployment

image.png 


 

K8S 当中, deployment 它是一种资源对象,也是部署应用和管理应用的一种方式,它可以去定义这个 Pod 的数量或者副本的数量。比如你通过这个发布一个deployment,就相当于是写它的一个配置文件,一个节省文件。

你可以定义这个应用要用几个 Pod 这个去运行,可以定义 Pod 数量是 3 个还是 5 个,就相当于你要去部署一个 Web 的服务,这个 Web 服务,我用他们 cat 还是apache

我这个服务我需要用两台虚拟机还是三台虚拟机,也就是它相当于是一个命令,这个命令的集合体,它将很多命令集合在一个节省文件当中,然后就可以去操做很多的事情。

所以我们这里讲它可以什么,定义一种pod的副本数目版本维持数目恢自动恢复,还可以这个控制它的版本进行升级。

 image.png


 

K8S 当中还有一个核心概念是service,因为我们刚刚讲过一个Pod,它是不是就相当于一个服务器 CS 一样。

而我们在部署应用的时候肯定不能够只用一个Pod,那需要怎么样?需要用多个 Pod 来承载这个应用,保证应用的可靠性和它的一个高性能。

那有这么多的 Pod之后,我们需要有一个负载均衡,也就是反向代理来提供一个统一的入口,或者提供一个流量的分发和负载均衡,所以我们可以通过创建 service 这样的一个负载均衡可以为容器应用提供一个统一的入口地址,因为多个Pod 肯定有多个IP,这个时候我们就有了一个统一的入口 IP,它可以将请求的负载分发到后端的各个的容器应用上面,做一个负载分担。

相关实践学习
巧用云服务器ECS制作节日贺卡
本场景带您体验如何在一台CentOS 7操作系统的ECS实例上,通过搭建web服务器,上传源码到web容器,制作节日贺卡网页。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
11天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
49 2
|
1月前
|
Kubernetes Cloud Native 云计算
云原生入门:从Docker到Kubernetes的旅程
【10月更文挑战第2天】本文将带你走进云原生的世界,从基础的Docker容器技术开始,逐步深入到Kubernetes集群管理。我们将通过实际代码示例,探索如何利用这些工具构建、部署和管理现代云应用。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的知识和技能,让你在云原生领域迈出坚实的一步。
85 5
|
13天前
|
运维 Kubernetes Shell
【赵渝强老师】K8s中Pod的临时容器
Pod 是 Kubernetes 中的基本调度单位,由一个或多个容器组成,包括业务容器、基础容器、初始化容器和临时容器。临时容器用于故障排查和性能诊断,不适用于构建应用程序。当 Pod 中的容器异常退出或容器镜像不包含调试工具时,临时容器非常有用。文中通过示例展示了如何使用 `kubectl debug` 命令创建临时容器进行调试。
|
13天前
|
Kubernetes 调度 容器
【赵渝强老师】K8s中Pod中的业务容器
Pod 是 Kubernetes 中的基本调度单元,由一个或多个容器组成。除了业务容器,Pod 还包括基础容器、初始化容器和临时容器。本文通过示例介绍如何创建包含业务容器的 Pod,并提供了一个视频讲解。示例中创建了一个名为 "busybox-container" 的业务容器,并使用 `kubectl create -f firstpod.yaml` 命令部署 Pod。
|
13天前
|
Kubernetes 容器 Perl
【赵渝强老师】K8s中Pod中的初始化容器
Kubernetes的Pod包含业务容器、基础容器、初始化容器和临时容器。初始化容器在业务容器前运行,用于执行必要的初始化任务。本文介绍了初始化容器的作用、配置方法及优势,并提供了一个示例。
|
23天前
|
存储 运维 Kubernetes
云端迁移:备份中心助力企业跨云迁移K8s容器服务平台
本文将简要介绍阿里云容器服务ACK的备份中心,并以某科技公司在其实际的迁移过程中遇到具体挑战为例,阐述如何有效地利用备份中心来助力企业的容器服务平台迁移项目。
|
23天前
|
Kubernetes 关系型数据库 MySQL
Kubernetes入门:搭建高可用微服务架构
【10月更文挑战第25天】在快速发展的云计算时代,微服务架构因其灵活性和可扩展性备受青睐。本文通过一个案例分析,展示了如何使用Kubernetes将传统Java Web应用迁移到Kubernetes平台并改造成微服务架构。通过定义Kubernetes服务、创建MySQL的Deployment/RC、改造Web应用以及部署Web应用,最终实现了高可用的微服务架构。Kubernetes不仅提供了服务发现和负载均衡的能力,还通过各种资源管理工具,提升了系统的可扩展性和容错性。
66 3
|
26天前
|
Kubernetes Cloud Native 开发者
云原生技术入门:Kubernetes和Docker的协作之旅
【10月更文挑战第22天】在数字化转型的浪潮中,云原生技术成为推动企业创新的重要力量。本文旨在通过浅显易懂的语言,引领读者步入云原生的世界,着重介绍Kubernetes和Docker如何携手打造弹性、可扩展的云环境。我们将从基础概念入手,逐步深入到它们在实际场景中的应用,以及如何简化部署和管理过程。文章不仅为初学者提供入门指南,还为有一定基础的开发者提供实践参考,共同探索云原生技术的无限可能。
41 3
|
25天前
|
运维 Kubernetes Cloud Native
云原生入门:Kubernetes和容器化的未来
【10月更文挑战第23天】本文将带你走进云原生的世界,探索Kubernetes如何成为现代软件部署的心脏。我们将一起揭开容器化技术的神秘面纱,了解它如何改变软件开发和运维的方式。通过实际的代码示例,你将看到理论与实践的结合,感受到云原生技术带来的革命性影响。无论你是初学者还是有经验的开发者,这篇文章都将为你开启一段新的旅程。让我们一起踏上这段探索之旅,解锁云原生技术的力量吧!
|
13天前
|
Kubernetes Cloud Native 前端开发
Kubernetes入门指南:从基础到实践
Kubernetes入门指南:从基础到实践
26 0

相关产品

  • 容器计算服务
  • 容器服务Kubernetes版
  • 下一篇
    无影云桌面