1、Kubernetes简介

这篇具有很好参考价值的文章主要介绍了1、Kubernetes简介。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、k8s 集群部署
1、k8s 快速入门
1)、简介
Kubernetes 简称 k8s。是用于自动部署,扩展和管理容器化应用程序的开源系统。
中文官网:https://kubernetes.io/zh/
中文社区:https://www.kubernetes.org.cn/
官方文档:https://kubernetes.io/zh/docs/home/
社区文档:http://docs.kubernetes.org.cn/
 部署方式的进化
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生

1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
2)、架构
1、整体主从方式
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
2、Master 节点架构
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
 kube-apiserver
 对外暴露 K8S 的 api 接口,是外界进行资源操作的唯一入口
 提供认证、授权、访问控制、API 注册和发现等机制
 etcd
 etcd 是兼具一致性和高可用性的键值数据库,可以作为保存 Kubernetes 所有集
群数据的后台数据库。
 Kubernetes 集群的 etcd 数据库通常需要有个备份计划
 kube-scheduler
 主节点上的组件,该组件监视那些新创建的未指定运行节点的 Pod,并选择节点
让 Pod 在上面运行。
 所有对 k8s 的集群操作,都必须经过主节点进行调度
 kube-controller-manager
 在主节点上运行控制器的组件
 这些控制器包括:
 节点控制器(Node Controller): 负责在节点出现故障时进行通知和响应。
 副本控制器(Replication Controller): 负责为系统中的每个副本控制器对象维
护正确数量的 Pod。
 端点控制器(Endpoints Controller): 填充端点(Endpoints)对象(即加入 Service
与 Pod)。
 服务帐户和令牌控制器(Service Account & Token Controllers): 为新的命名
空间创建默认帐户和 API 访问令牌

3、Node 节点架构
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
 kubelet
 一个在集群中每个节点上运行的代理。它保证容器都运行在 Pod 中。
 负责维护容器的生命周期,同时也负责 Volume(CSI)和网络(CNI)的管理;
 kube-proxy
 负责为 Service 提供 cluster 内部的服务发现和负载均衡;
 容器运行环境(Container Runtime)
 容器运行环境是负责运行容器的软件。
 Kubernetes 支持多个容器运行环境: Docker、 containerd、cri-o、 rktlet 以及任
何实现 Kubernetes CRI (容器运行环境接口)。
 fluentd
 是一个守护进程,它有助于提供集群层面日志 集群层面的日志

3)、概念
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
 Container:容器,可以是 docker 启动的一个容器
 Pod:
 k8s 使用 Pod 来组织一组容器
 一个 Pod 中的所有容器共享同一网络。
 Pod 是 k8s 中的最小部署单元
 Volume
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生

 声明在 Pod 容器中可访问的文件目录
 可以被挂载在 Pod 中一个或多个容器指定路径下
 支持多种后端存储抽象(本地存储,分布式存储,云存
储…)
 Controllers:更高层次对象,部署和管理 Pod;
 ReplicaSet:确保预期的 Pod 副本数量
 Deplotment:无状态应用部署
 StatefulSet:有状态应用部署
 DaemonSet:确保所有 Node 都运行一个指定 Pod
 Job:一次性任务
 Cronjob:定时任务
 Deployment:
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生

 定义一组 Pod 的副本数目、版本等
 通过控制器(Controller)维持 Pod 数目(自动回
复失败的 Pod)
 通过控制器以指定的策略控制版本(滚动升级,回滚等)
 Service
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生

 定义一组 Pod 的访问策略
 Pod 的负载均衡,提供一个或者多个 Pod 的稳定
访问地址

 支持多种方式(ClusterIP、NodePort、LoadBalance)
 Label:标签,用于对象资源的查询,筛选
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
 Namespace:命名空间,逻辑隔离
 一个集群内部的逻辑隔离机制(鉴权,资源)
 每个资源都属于一个 namespace
 同一个 namespace 所有资源名不能重复
 不同 namespace 可以资源名重复

1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
API:
我们通过 kubernetes 的 API 来操作整个集群。
可以通过 kubectl、ui、curl 最终发送 http+json/yaml 方式的请求给 API Server,然后控制 k8s
集群。k8s 里的所有的资源对象都可以采用 yaml 或 JSON 格式的文件定义或描述

1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
4)、快速体验
1、安装 minikube
https://github.com/kubernetes/minikube/releases
下载 minikube-windows-amd64.exe 改名为 minikube.exe
打开 VirtualBox,打开 cmd,
运行
minikube start --vm-driver=virtualbox --registry-mirror=https://registry.docker-cn.com
等待 20 分钟左右即可
2、体验 nginx 部署升级
1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生
5)、流程叙述
1、通过 Kubectl 提交一个创建 RC(Replication Controller)的请求,该请求通过 APIServer
被写入 etcd 中
2、此时 Controller Manager 通过 API Server 的监听资源变化的接口监听到此 RC 事件
3、分析之后,发现当前集群中还没有它所对应的 Pod 实例,
4、于是根据 RC 里的 Pod 模板定义生成一个 Pod 对象,通过 APIServer 写入 etcd
5、此事件被 Scheduler 发现,它立即执行一个复杂的调度流程,为这个新 Pod 选定一
个落户的 Node,然后通过 API Server 讲这一结果写入到 etcd 中,
6、目标 Node 上运行的 Kubelet 进程通过 APIServer 监测到这个“新生的”Pod,并按照它
的定义,启动该 Pod 并任劳任怨地负责它的下半生,直到 Pod 的生命结束。
7、随后,我们通过 Kubectl 提交一个新的映射到该 Pod 的 Service 的创建请求
8、ControllerManager 通过 Label 标签查询到关联的 Pod 实例,然后生成 Service 的
Endpoints 信息,并通过 APIServer 写入到 etcd 中,
9、接下来,所有 Node 上运行的 Proxy 进程通过 APIServer 查询并监听 Service 对象与
其对应的 Endpoints 信息,建立一个软件方式的负载均衡器来实现 Service 访问到后端
Pod 的流量转发功能。
k8s 里的所有的资源对象都可以采用 yaml 或 JSON 格式的文件定义或描述

1、Kubernetes简介,k8s&docker,kubernetes,容器,云原生文章来源地址https://www.toymoban.com/news/detail-742814.html

到了这里,关于1、Kubernetes简介的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Kubernetes(K8s)的核心组件简介

    Kubernetes(简称 K8s)是一个开源的,用于自动化部署、扩展和管理容器化应用程序的平台。在这篇文章中,我们将深入研究 Kubernetes 的核心组件及其功能。 一、Master 组件 1. API Server:Kubernetes 的主要管理组件。所有的管理任务都是通过 API Server 进行的。它是 Kubernetes 的前端,

    2024年02月15日
    浏览(35)
  • 容器化进阶Kubernetes(K8S)详解

    1.1.1 Kubernetes是什么及作用 Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。 Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。 官网地址 Kubernetes 中文社区 Kubernetes(k8s)中文文档 目录_Kubernetes中文社

    2024年02月05日
    浏览(62)
  • 【k8s】Kubernetes技术和相关命令简介

    Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。在生产环境中部署一个应用程序时,通常要部署该应用的多个实例以便对应用请求进行负载均衡。kubernetes,简称K8s,是用8代替8个字符“ubernete”而成的缩写。 在Kubernetes中,我们

    2024年01月18日
    浏览(36)
  • 云原生Kubernetes:K8S集群实现容器运行时迁移(docker → containerd) 与 版本升级(v1.23.14 → v1.24.1)

    目录 一、理论 1.K8S集群升级 2.环境 3.升级策略 4.master1节点迁移容器运行时(docker → containerd)  5.master2节点迁移容器运行时(docker → containerd)  6.node1节点容器运行时迁移(docker → containerd)  7.升级集群计划(v1.23.14 → v1.24.1) 8.升级master1节点版本(v1.24.1) 9.升级master2节点版本

    2024年02月03日
    浏览(48)
  • Kubernetes(K8s):容器化应用的航空母舰

    Kubernetes(K8s)是一个开源的容器编排系统,它的出现就像是为容器化应用提供了一艘强大的航空母舰。在这艘母舰上,你的应用容器就像是一架架战斗机,Kubernetes负责指挥它们起飞、飞行、降落,确保它们能在正确的时间、正确的地点执行任务。 Pod: Kubernetes的基本飞行编队

    2024年04月08日
    浏览(50)
  • Kubernetes(k8s)容器编排Pod介绍和使用

    Pod是kubernetes中你可以创建和部署的最小也是最简的单位,一个Pod代表着集群中运行的一个进程。 Pod有两个必须知道的特点 通过yaml文件或者json描述Pod和其内容器的运行环境和期望状态,例如一个最简单的运行nginx应用的pod,定义如下 3.1.1 参数描述 下面简要分析一下上面的

    2024年02月08日
    浏览(55)
  • kubernetes(k8s)为容器和 Pod 分配内存资源

    展示如何将内存请求(request)和内存限制(limit)分配给一个容器。 我们保障容器拥有它请求数量的内存,但不允许使用超过限制数量的内存。 创建新的命名空间 编辑yaml文件 配置文件的 args 部分提供了容器启动时的参数。 “–vm-bytes”, “150M” 参数告知容器尝试分配 15

    2024年02月15日
    浏览(37)
  • Kubernetes (K8s) 解读:微服务与容器编排的未来

    🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🐅🐾猫头虎建议程序员必备技术栈一览表📖: 🛠️ 全栈技术 Full Stack : 📚 MERN/MEAN/MEVN Stack | 🌐 Jamstack | 🌍 GraphQL | 🔁 RESTful API | ⚡ WebSockets | 🔄 CI/CD | 🌐 Git Version Control | 🔧 DevOps 🌐 前端技术 Frontend : 🖋️ HTML CSS |

    2024年02月09日
    浏览(32)
  • 【云原生-K8s-1】kubeadm搭建k8s集群(一主两从)完整教程及kubernetes简介

    🍁 博主简介   🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊 交流社区: 运维交流社区 欢迎大家的加入!   Kubernetes(简称:k8s) 是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,用于管理云平台中多

    2024年02月07日
    浏览(46)
  • 【Kubernetes】k8s中容器之间、pod之间如何进行网络通信?

    首先来回顾一下Pod: Pod 是用于构建应用程序的最小可部署对象。单个 Pod 代表集群中正在运行的工作负载,并 封装一个或多个 Docker 容器、任何所需的存储以及唯一的 IP 地址 。 集群中每一个 Pod 都会获得自己的、 独一无二的 IP 地址。一个Pod里的一组容器共享相同的IP地址。

    2024年04月28日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包