【K8S】docker和K8S(kubernetes)理解?docker是什么?K8S架构、Master节点 Node节点 K8S架构图

docker和K8S理解

      • 一、docker的问世
          • 虚拟机是什么?
          • Docker的问世?
          • docker优点及理解
      • 二、Kubernetes-K8S
          • K8S是什么?
          • 简单了解K8S架构
          • Master节点
          • Node节点
          • K8S架构图

一、docker的问世

        在LXC(Linux container)Linux容器虚拟技术出现之前,业界网红是虚拟机。虚拟机技术的代表,是VMWare和OpenStack。

虚拟机是什么?

        虚拟机其实就是 在你的操作系统里面,装一个软件,然后通过这个软件,再模拟一台甚至多台“子电脑”出来。
在这里插入图片描述

        在子电脑里,我们可以安装各种系统,比如windows、linux等,让你拥有多台电脑,而在这些子电脑里,可以和使用正常电脑一样,下载qq、微信等,甚至可以同时登录多个qq,这些都是可以的,因为子电脑与子电脑之间都是相互隔离的!

Docker的问世?
  • 2010年,美国旧金山几个年轻人成立“dotCloud”公司,主要提供基于PaaS的云计算技术服务,其实就是在研究LXC技术。
  • dotCloud公司将自己的容器技术进行了简化和标准化,并命名为——Docker。
  • Docker技术诞生之后,由于小型公司无人关注,经营步履维艰,于是决定开源!(开源,就是开放源代码。也就是将原来内部保密的程序源代码开放给所有人,然后让大家一起参与进来,贡献代码和意见。)
    2013年3月,dotCloud公司的创始人之一,Docker之父,28岁的Solomon Hykes正式决定,将Docker项目开源。
  • 众多IT工程师关注到Docker,加入社区,Docker人气爆火!
  • 开源当月,Docker 0.1 版本发布。此后的每一个月,Docker都会发布一个版本。到2014年6月9日,Docker 1.0 版本正式发布。
  • Docker已经成为行业里人气最火爆的开源技术!dotCloud公司名字也改成了Docker Inc. 。
docker优点及理解

docker爆火的原因——轻!
        虚拟机属于虚拟化技术。而Docker这样的容器技术,也是虚拟化技术,属于轻量级的虚拟化。
        虚拟机虽然可以隔离出很多“子电脑”,但占用空间更大,启动更慢,虚拟机软件可能还要收费(例如VMWare)。而容器技术正好没有这些缺点。它不需要虚拟出整个操作系统,只需要虚拟一个小规模的环境(类似“沙箱”)。
        Docker启动时间很快,几秒钟就能完成。而且,它对资源的利用率很高(一台主机可以同时运行几千个Docker容器)。此外,它占的空间很小,虚拟机一般要几GB到几十GB的空间,而容器只需要MB级甚至KB级。

特性虚拟机容器
隔离级别操作系统级进程级
隔离策略HypervisorCGroups
系统资源5-15%0-5%
启动时间分钟级秒级
镜像存储GB-TBKB-MB
集群规模上百上万
高可用策略备份、容灾、迁移弹性、负载、动态

docker特性:
它推出两句口号:
1.“Build、Ship and Run”(构建、运输(发送)、运行)
2.“Build Once, Run anywhere”(一次构建,多处运行)

        首先,分析第一句:“Build、Ship and Run”(构建、运输(发送)、运行)
        这个就跟某个游戏一样,我们设计搭建好一个“房子”,在里面住了一段时间,然后又开辟了一个新土地,这时在这个新土地上又需要搭建一个房子去居住,然后又找木头、搬石头搭建新房子。
        突然,有一天你开通了一个新功能,就是你有个万能背包,你可以复制任何东西存到背包里,用的时候拿出来就行。于是,我们将盖好的房子复制一份,制作成“镜像”,存放在背包(docker hub),去到新的土地,拿出”镜像“房子,摆在那边,拎包入住。
        再看第二句:“Build Once, Run anywhere”(一次构建,多处运行)
Docker技术的三大核心概念,分别是:
○ 镜像(Image)
○ 容器(Container)
○ 仓库(Repository)

        在上面的例子中,那个放在包里的“镜像”,就是Docker镜像。而我的背包,就是Docker仓库。我在新土地上,摆放的房子,就是一个Docker容器。
        另外,这个Docker镜像,是一个特殊的文件系统。它除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(例如环境变量)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。
        也就是,房子里你居住的日常用品,不会被复制在镜像里,只是房子是一模一样的!
        一个房子可以一个镜像,那么我们也可以制作更多的镜像,比如将 冰箱、汽车都做成镜像!这时候,你的是宝马汽车,他的是奥迪汽车,另一个人又做了华为汽车,要是能拿到他们的镜像,那么我岂不是拥有了各种汽车,于是,出现了一个大的公共仓库。就是docker hub,每个人将镜像都保存在hub里,大家可以相互使用!
        负责对仓库里的Docker镜像进行管理的,是Docker Registry服务(类似仓库管理员)。
        Docker Registry服务对镜像的管理是非常严格的。最常使用的Registry公开服务,是官方的Docker Hub,这也是默认的 Registry,并拥有大量的高质量的官方镜像。

        由于容器技术日渐火爆,将Docker应用于具体的业务实现,同时管理特别多的容器是存在困难的——编排、管理和调度等各个方面,都不容易。于是,人们迫切需要一套管理系统,对Docker及容器进行更高级更灵活的管理——就是k8s。

二、Kubernetes-K8S

K8S是什么?

        K8S,就是基于容器的集群管理平台,它的全称,是kubernetes。
        Kubernetes 这个单词来自于希腊语,含义是舵手或领航员。K8S是它的缩写,用“8”字替代了“ubernete”这8个字符。
K8S的创造者——行业巨头Google。
        K8S的前身,是Google自己研究了十多年的Borg系统。
        K8S是        2014年6月由Google公司正式公布出来并宣布开源的。
        2015年7月,Google正式加入OpenStack基金会。与此同时,Kuberentes v1.0正式发布。

简单了解K8S架构

一个K8S系统,通常称为一个K8S集群(Cluster)。
这个集群主要包括两个部分:
○ 一个Master节点(主节点)
○ 一群Node节点(计算节点)

在这里插入图片描述

Master节点主要还是负责管理和控制。Node节点是工作负载节点,里面是具体的容器。

在这里插入图片描述

Master节点

在这里插入图片描述
在这里插入图片描述

Master节点包括API Server、Scheduler、Controller manager、etcd。
         ● API Server是整个系统的对外接口,供客户端和其它组件调用,相当于“营业厅”。
         ● Scheduler负责对集群内部的资源进行调度,相当于“调度室”。
        ● Controller manager负责管理控制器,相当于“大总管”。
        ● etcd是核心存储数据库,存储所有数据和事件,相当于"仓库"。

Node节点

在这里插入图片描述

Node节点包括Pod、Docker、kubelet、kube-proxy、Fluentd、kube-dns(可选)。

        ● Pod是Kubernetes最基本的操作单元。一个Pod代表着集群中运行的一个进程,它内部封装了一个或多个紧密相关的容器。除了Pod之外,K8S还有一个Service的概念,一个Service可以看作一组提供相同服务的Pod的对外访问接口。
        ● Docker,不用说了,创建容器的。
        ● Kubelet,主要负责监视指派到它所在Node上的Pod,包括创建、修改、监控、删除等。
        ● Kube-proxy,主要负责为Pod对象提供代理。
        ● Fluentd,主要负责日志收集、存储与查询。

K8S架构图

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/467892.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

汽车功能安全整体方法

摘 要 ISO26262道路车辆功能安全标准已经制定实践了多年,主要目标是应对车辆的电子和电气(E/E)系统失效。该方法践行至今,有些系统功能安全方法已经成熟,例如电池管理系统(BMS),并且…

Javaweb学习记录(三)请求响应案例

下面为一个请求响应案例,postman发送请求,服务器响应将一个xml文件中的数据通过读取解析,将其用Result类标准的格式返回前端,在前端用json的方式显示 后端Controller代码 1、通过本类的字节码文件得到类加载器并寻找到需要解析的…

vue2使用webSocket双向通讯

基于webSocket实现双向通信,使用webworker保持心跳。 由于浏览器的资源管理策略会暂停或限制某些资源的消耗,导致前端心跳包任务时效,后端接收不到webSocket心跳主动断开,因此需要使用webworker保持心跳 引入webworker npm insta…

【Ubuntu】Ubuntu的安装和配置

下载ubuntu镜像 https://releases.ubuntu.com/22.04.4/ubuntu-22.04.4-desktop-amd64.iso 一、Ubuntu安装 1.新建虚拟机 1.1按照它的提示创建用户;后面一直下一步就好 2.启动Ubuntu虚拟机 2.1设置为中文键盘 2.2默认即可;若是有低需求也可以选择最小…

Coursera上Golang专项课程3:Concurrency in Go 学习笔记(完结)

Concurrency in Go 本文是 Concurrency in Go 这门课的学习笔记,如有侵权,请联系删除。 文章目录 Concurrency in GoMODULE 1: Why Use Concurrency?Learning Objectives M1.1.1 - Parallel ExecutionM1.1.2 - Von Neumann BottleneckM1.1.3 - Power W…

Python基础(六)之数值类型元组

Python基础(六)之数值类型元组 1、简介 元组: 在Python中是内置的数据结构之一,是一个不可变的序列,切可以是任何类型数据。元组的元素放在()小括号内。一般我们希望数据不改变的时候使用 不可变与可变的…

Day69:WEB攻防-Java安全JWT攻防Swagger自动化算法签名密匙Druid泄漏

目录 Java安全-Druid监控-未授权访问&信息泄漏 黑盒发现 白盒发现 攻击点 Java安全-Swagger接口-导入&联动批量测试 黑盒发现 白盒发现 自动化发包测试 自动化漏洞测试 Java安全-JWT令牌-空算法&未签名&密匙提取 识别 JWT 方式一:人工识…

web渗透测试漏洞复现:Elasticsearch未授权漏洞复现

web渗透测试漏洞复现 Elasticsearch未授权漏洞复现Elasticsearch简介Elasticsearch复现Elasticsearch漏洞修复和加固措施 Elasticsearch未授权漏洞复现 Elasticsearch简介 Elasticsearch 是一款 Java 编写的企业级搜索服务,它以分布式多用户能力和全文搜索引擎为特…

使用jenkins-pipeline进行利用项目文件自动化部署到k8s上

Discard old builds:丢弃旧的构建,目的是管理存储空间、提升性能以及保持环境整洁 Do not allow concurrent builds: 禁止并发构建是指同一时间内只允许一个构建任务执行,避免多个构建同时运行可能带来的问题 Do not allow the pipeline to resume if the controller resta…

RPC学习笔记一

什么是RPC RPC(Remote Procedure Call,远程过程调用)是一种用于实现分布式系统中不同计算机或进程之间进行通信和调用的技术和模式。 在传统的过程调用中,当一个程序需要调用另一个程序的函数或方法时,通常是在同一台…

ChatGPT4的Dalle-3 生成电影海报及升级教程

引言 首先DALL E3首先需要升级为ChatGPT4才能使用,接下来从以下几个方面进行介绍: 一、ChatGPT4中的DALL E3 的电影海报二、ChatGPT4下的DALL E3的实例三、ChatGPT4的升级教程 一、ChatGPT4中的DALL E3 的电影海报 DALLE 3可以直接在画面中识别和生成…

【Qt图形界面引擎(一)】:第一个Qt程序

跨平台图形界面引擎,接口简单,易上手,一定程度简化内存。 Qt发展史 1991年由Qt Company开发的跨平台C图形用户界面应用程序开发框架2008年,Qt Company科技被诺基亚公司收购,Qt也因此成为诺基亚旗下的编程语言工具2012…

【vue elementUI】修改el-dropdown样式

实现效果如下&#xff1a; 代码如下&#xff1a; <el-dropdown trigger"click" command"handleCommand" active-text-color"#606266"><span class"product-card">{{getCategoryName(categoryId)}}</span><el-dro…

一文解决内网传外网sftp没跑满带宽问题

随着企业网络的日益复杂&#xff0c;内部网络与外部网络之间的文件传输需求不断增长。然而&#xff0c;标准的SFTP协议在跨网络传输时常常无法充分运用可用带宽&#xff0c;导致传输效率不尽人意。本文旨在探讨影响内网至外网SFTP传输效率的因素&#xff0c;并结合一种高效的解…

Uibot (RPA设计软件)财务会计Web应用自动化(批量开票机器人)

Uibot (RPA设计软件&#xff09;Mage AI智能识别&#xff08;发票识别&#xff09;———机器人的小项目友友们可以参考小北的课前材料五博客~ (本博客中会有部分课程ppt截屏,如有侵权请及请及时与小北我取得联系~&#xff09; 紧接着小北的前两篇博客&#xff0c;友友们我们…

Vue+SpringBoot打造数据可视化的智慧河南大屏

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统展示四、核心代码4.1 数据模块 A4.2 数据模块 B4.3 数据模块 C4.4 数据模块 D4.5 数据模块 E 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的数据可视化的智慧河南大屏&#xff0c;包含了GDP、…

深入解析:在 Node.js 中删除文件的正确姿势

引言 在 Node.js 中处理文件尤其是移除文件&#xff0c;对于维护高效应用程序至关重要。储存和秩序当道的今天&#xff0c;删除不必要或冗余的文件能力显得尤为关键。本文深入探讨你会想要使用这个强大功能的时刻和原因&#xff0c;并通过各种案例展示了这个概念&#xff0c;同…

基于Matlab的视频人面检测识别,Matalb实现

博主简介&#xff1a; 专注、专一于Matlab图像处理学习、交流&#xff0c;matlab图像代码代做/项目合作可以联系&#xff08;QQ:3249726188&#xff09; 个人主页&#xff1a;Matlab_ImagePro-CSDN博客 原则&#xff1a;代码均由本人编写完成&#xff0c;非中介&#xff0c;提供…

HTML静态网页成品作业(HTML+CSS)——个人介绍网页(1个页面)

&#x1f389;不定期分享源码&#xff0c;关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 &#x1f3f7;️本套采用HTMLCSS&#xff0c;未使用Javacsript代码&#xff0c;共有1个页面。 二、作品演示 三、代…

sqllab第四十七关通关笔记

知识点&#xff1a; 错误注入字符型注入order by 位置注入 报错注入时间盲注 通过测试发现是一个字符型注入 构造payload:sort2 报错了 构造payload:sort2 不提示报错了 说明这里存在字符型注入 尝试进行单引号绕过 构造payload:sort2and 11 …