【k8s 系列】k8s 学习三,docker回顾,k8s 起航

简介: k8s 逐渐已经作为一个程序员不得不学的技术,尤其是做云原生的兄弟们,若你会,那么还是挺难的

这是我参与11月更文挑战的第 18 天,活动详情查看:2021最后一次更文挑战

image.png

k8s 逐渐已经作为一个程序员不得不学的技术,尤其是做云原生的兄弟们,若你会,那么还是挺难的

学习 k8s ,实践尤为重要,如果身边有自己公司就是做云的,那么云服务器倒是不用担心,若不是,我们可以在网上购买各大云厂商的服务器,用于学习用于精进自己

如下是 k8s 官网,最好的资料莫过于官网了

点击进入 k8s 官网

image.png

image.png

现状

公司一直在发展,各种设置也在推陈出新,现在就有一个很明显的对比

  • 从最开是的 IT 基础设置主机化,转向容器化
  • 从以前的人肉运维,甚至是“人工”智能,转化成了自动化的运维模式
  • 慢慢的已经开始演变到全体系的智能化运维了

时代在进步,技术在进步,我们自己也应该自我迭代,更新思维,拥抱变化

容器

我们可以回滚一下之前的容器知识点

容器是什么呢?之前说过 docker 就类似于集装箱,每一个箱子之间做到互相隔离

我们为了降低以前虚拟机造成的物理资源的浪费也期望提高物理主机的资源利用率,还希望能够像虚拟机一样可以让多个应用做到程序隔离,自己玩自己的

像这种轻量级的虚拟机,就是 容器

有需求就有市场,世界是懒人创造的,懒人总会思考更多高效的事情,来让自己既能躺着,还能高效的实现自我价值

虚拟机和容器的对比

image.png

对于一台硬件,都会有相应的服务,主机的操作系统,以及一些虚拟化的技术

那么在这台硬件上开多个虚拟机会是这个样子的

  • 每一个虚拟机都要安装一个操作系统,自然是环境隔离的
  • 占用资源
  • 数据传输的过程中会相对较慢

如果是在这个硬件设备上开容器的话会是这个样子的

  • 硬件上有一个容器管理引擎
  • 管理引擎中可以部署多个容器,可以提供环境的隔离
  • 每一个容器没有独自的操作系统,不会占用大量的存储资源
  • 交付方便,咱们只需要提供镜像出去即可,相对虚拟机的镜像来说,容器的 size 就小了很多

容器的管理工具

容器管理工具就像以前的虚拟机管理工具一样,主要是用于容器的创建,启动,编辑,删除和关闭,会有这几个工具:

  • 大名鼎鼎的 docker ,生态好很多
  • 阿里的 Pouch
  • 老牌的 LXC ,LXD,RKT 这些

容器的编排工具

上面的容器管理工具是做容器的基础管理,能做的事情也比较有限

如果是要对多个容器进行部署,编排,或者是做一些复杂的操作的时候,就需要容器的编排工具了,会有这些:

  • docker  compose

之前我们分享 docker 的时候,有分享到 docker  compose 工具,使用这个工具我们可以很轻松的使用 yaml 文件来配置我们的应用服务,编排多个应用

  • docker machine

主要为我们的容器运行提供一个主机环境

  • docker swarm

主要是用来管理容器主机集群的

  • mesos 和 marathon

mesos  主要是用于分布式计算过程中,对计算机资源的管理和分配的

marathon 主要是实现负载均衡,服务发现等功能

简单来说,mesos  做资源管理,marathon 做服务管理

前面 3 个工具,也被称为 docker  三剑客

  • kubernetes

主要用于管理云平台中多个主机上的容器化应用,目标是让部署容器化的应用简单且高效

他能提供给我们应用部署,规划,更新,维护等等优秀的机制

image.png

点我进入 代码托管地址

image.png

今天就到这里,学习所得,若有偏差,还请斧正

欢迎点赞,关注,收藏

朋友们,你的支持和鼓励,是我坚持分享,提高质量的动力

image.png

好了,本次就到这里

技术是开放的,我们的心态,更应是开放的。拥抱变化,向阳而生,努力向前行。

我是阿兵云原生,欢迎点赞关注收藏,下次见~

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
27天前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
189 77
|
13天前
|
存储 Kubernetes 开发者
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
Docker 是一种开源的应用容器引擎,允许开发者将应用程序及其依赖打包成可移植的镜像,并在任何支持 Docker 的平台上运行。其核心概念包括镜像、容器和仓库。镜像是只读的文件系统,容器是镜像的运行实例,仓库用于存储和分发镜像。Kubernetes(k8s)则是容器集群管理系统,提供自动化部署、扩展和维护等功能,支持服务发现、负载均衡、自动伸缩等特性。两者结合使用,可以实现高效的容器化应用管理和运维。Docker 主要用于单主机上的容器管理,而 Kubernetes 则专注于跨多主机的容器编排与调度。尽管 k8s 逐渐减少了对 Docker 作为容器运行时的支持,但 Doc
77 5
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
|
10天前
|
存储 Kubernetes Docker
Kubernetes(k8s)和Docker Compose本质区别
理解它们的区别和各自的优势,有助于选择合适的工具来满足特定的项目需求。
65 19
|
2月前
|
运维 Kubernetes Docker
深入理解容器化技术:Docker与Kubernetes的协同工作
深入理解容器化技术:Docker与Kubernetes的协同工作
67 12
|
2月前
|
关系型数据库 MySQL Java
【Docker最新版教程】一文带你快速入门Docker常见用法,实现容器编排和自动化部署上线项目
Docker快速入门到项目部署,MySQL部署+Nginx部署+docker自定义镜像+docker网络+DockerCompose项目实战一文搞定!
|
2月前
|
运维 Kubernetes Cloud Native
云原生技术入门:Kubernetes和Docker的协同工作
【10月更文挑战第43天】在云计算时代,云原生技术成为推动现代软件部署和运行的关键力量。本篇文章将带你了解云原生的基本概念,重点探讨Kubernetes和Docker如何协同工作以支持容器化应用的生命周期管理。通过实际代码示例,我们将展示如何在Kubernetes集群中部署和管理Docker容器,从而为初学者提供一条清晰的学习路径。
|
2月前
|
Kubernetes 开发者 Docker
Docker与Kubernetes的协同工作
Docker与Kubernetes的协同工作
|
2月前
|
前端开发 Java Docker
使用Docker容器化部署Spring Boot应用程序
使用Docker容器化部署Spring Boot应用程序
|
2月前
|
Kubernetes 监控 安全
容器化技术:Docker与Kubernetes的实战应用
容器化技术:Docker与Kubernetes的实战应用
|
8月前
|
分布式计算 Java Linux
【深入浅出Docker原理及实战】「原理实战体系」零基础+全方位带你学习探索Docker容器开发实战指南(Dockerfile使用手册)
Docker 是一套构建在 Linux 内核之上的高级工具,旨在帮助开发人员和运维人员更轻松地交付应用程序和依赖关系,实现跨系统和跨主机的部署。使用安全且轻量级的容器环境来实现这一目标。容器可以手动创建,也可以通过编写 Dockerfile 自动创建。开发人员和运维人员可以将应用程序及其依赖打包到容器中,实现应用程序的可移植性和环境一致性。
266 5
【深入浅出Docker原理及实战】「原理实战体系」零基础+全方位带你学习探索Docker容器开发实战指南(Dockerfile使用手册)