首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一文读懂Docker、K8s

一文读懂Docker、K8s

作者头像
小马哥学JAVA
发布2022-12-15 16:28:55
3880
发布2022-12-15 16:28:55
举报
文章被收录于专栏:JAVA开发专栏JAVA开发专栏

目标:

  1. docker原理以及在运维工作的地位和作用,运维工作进化论,docker、微服务、k8s的联系、devops和docker的关系,docker的前世今生
  2. 容器、镜像和仓库、
  3. 容器和虚拟化,优势和劣势,底层的核心
  4. 容器除了docker还有什么选择
  5. docker的安装以及三大核心:容器、镜像、仓库
  6. docker的实际应用,docker的常用命令以及注意事项,镜像的原理,dockerfile的作用和应用,docker的永久存储和网络通信
  7. docker实际工作案例实现,搭建一台私有仓库,镜像仓库的上传和拉取,管理仓库,微服务的概念,用docker实现一个实际案例

Docker原理以及在运维工作的地位和作用

运维工作进化论:测试环境和生产环境
  1. LNMP是一套技术组合

L=Linux、N=Nginx、M=Mysql、P=PHP

Nginx服务不能处理动态请求

静态请求:请求静态文件或者html页面,服务器上存在的html文件

动态请求:动态页面上的内容存在与数据库中,根据用户发出的不同的请求,其提供个性化的网页内容,大大降低网站维护的工作量

当用户发起http请求,请求会被Nginx处理,如果是静态资源请求,Nginx会直接返回,如果是动态请求,Nginx通过fastcgi协议转交给后端的PHP程序处理

  1. 一台服务器
  2. 更新用ftp

FTP有着极高的延时。从开始请求到第一次接收需求数据的时间非常长,并且会执行一些冗余的登录进程。

运维生产环境的发展
  1. 生产后有了一定程度的流量,需要运营和测试等部门给出数据,根据数据考虑冗余
  2. 防止单点故障,保证业务稳定,做HA集群
  3. 节约成本,使用共有云服务器,提前部署
  4. 更新方式太过原始,测试环境使用git,并且搭建使用gitlab或gogs
原生产环境
  1. 多点集群单体应用,多点集群服务一个单体应用
  2. 共有云,一种按使用量付费的模型,用户可以随时随地、便捷地、按需地从可配置的计算资源共享池中获取所需的计算资源(网络、服务器、存储、应用程序等服务)。这些资源可以快速供给和释放,用户只需投入较少的管理工作。公有云,云计算运营商拥有超大规模基础设施,对外提供云服务
  3. git更新

添加描述

虚拟化和云计算
  1. 物理隔离,2005年以前,大多数企业采用物理方法,将内网与外网隔离。从而避免入侵或信息泄露的技术手段。保证网络的保密性,安全性、完整性、防抵御性和高可用性。但是资源 利用率极低,灵活性差,成本高
  2. 虚拟化的技术,2008年左右,企业开始使用虚拟化技术,通过硬件和软件,实现物理架构资源的重新整合利用,可用用一台物理机,通过虚拟化,划分为多套系统,在系统之内进行多方位隔离,隔离之后相当于多台服务器。大幅降低了IT硬件成本,减少资源浪费,提升了系统的稳定性和安全性
  3. 云计算(概念),2018年至今,大部分企业开始使用云计算技术。分布式计算技术透过网络庞大的计算处理程序,自动分拆成无数个子程序。然后,交由多部服务器组成的系统进行搜寻、计算、分析之后,将处理结果回传给用户。

添加描述

运维生产环境的发展
  1. 生产环境
  2. 多点负载均衡单体应用
  3. 混合云
  4. 提供既能在公共空间又在私有空间中的服务。混合云把公用云模式与专用云模式结合在一起。混合云有助于提供所需的、外部供应的扩展
  5. devops
  6. 原始的互联网公司工作模式是瀑布流,但用户越多、需求越大,公司的管理,人力成本都是问题。而如果更新间隔太慢,一定会导致用户的满意度下滑。DevOps的观念应运而生。所以DevOps是一个必然趋势,是一种方法,也是一种观念
  7. DevOps打破开发人员和运维人员的壁垒,根据需求情况,把需求拆分成多个小需求,小步快跑大幅增加需求完成的频率。运用自动化和CI、CD的概念,运用工具,实现稳定、快速的版本更新上线。对运维人员的技术要求和经验大大提升

添加描述

  1. 新型生产环境
  2. 生产环境主要分为:多点负载均衡单体应用,docker和devops
  3. Docker于2013年初开源,基于Linux内核的cgroup,namespace,以及AUFS类的Union FS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。容器就是一个技术类型,而docker是当下最主流的一种能够实现容器的方案
  4. 其他方案包括:LXC、Mesos、PKT等等,docker或者容器和传统虚拟化最大的区别,就是虚拟化的封装是系统级的封装,docker或者其他容器是进程级的封装

添加描述

  1. 微服务就是将前端拆分成各个模块,然后连接到服务器,微服务需要跑多个容器,容器多又会涉及到通信、架构、伸缩、更新、监控等 问题
  2. K8s容器编排管理工具
  3. k8S的自愈功能是指重新 启动失败的容器,在节点不可用时,替换和重新调度节点上的容器
  4. k8s的弹性伸缩功能,
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-12-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小马哥学JAVA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 目标:
  • Docker原理以及在运维工作的地位和作用
    • 运维工作进化论:测试环境和生产环境
      • 运维生产环境的发展
        • 原生产环境
          • 虚拟化和云计算
            • 运维生产环境的发展
            相关产品与服务
            容器镜像服务
            容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档